Я не можу згадати програмування 5 хвилин після навчання? [зачинено]


13

Я вивчаю Java, і знайшов чудового вчителя. Він усе ідеально пояснює. Я все це розумію . Моя проблема полягає в тому, що, вивчивши короткий розділ, наприклад "Вкладені повідомлення" або "Багато методів і випадків", я можу набрати все це чудово, але через 5 хвилин, після переходу до нового розділу (коли я зручно з останнім розділом) Я забуваю код набрати для останнього розділу. Будь-які поради або методи, які ви використовуєте, щоб запам'ятати код ????


13
Не просто книги вчитися. Програмування потребує проектів та конкретних проблем, які потрібно вирішити, щоб вони залишилися у вашому мозку.
Мерлін Морган-Грехем

8
Практикувати практику практику.

Мені потрібно переглянути речі, про які я писав увесь час. Він занурюється лише тоді, коли вже не здається, що

3
Це означає, що ваші знання поверхневі. Ви насправді цього не "навчилися".
BlackJack

2
Прагніть зрозуміти, а не просто запам’ятовувати відповіді.
Джефф Грігг

Відповіді:


23

Якщо ви просто вписуєте те, що показує вчитель, знання будуть йти в одне вухо, а в інше. Візьміть приклади, які він дає, і трохи їх змінить, пограйте. Якщо вони будуть просто вправами, це не має значення. Внісши навіть просту зміну, наприклад "Я хочу відобразити числа, відсортовані навпаки", або щось таке, воно змушує вас зрозуміти приклад, а не просто копіювати його. Потім візьміть це після уроку і спробуйте зробити з ним більше, розширити, включити його в щось інше. Ви побачите, що ваше розуміння зростає, і коли розуміння зростає, вам не потрібно пам’ятати стільки.


4
+1 "Коли розуміння зростає, вам не потрібно пам’ятати стільки"
Майк Данлаве

це буквальна протилежність результатам Методології навчання Блюма, що викликає занепокоєння, оскільки це також типове розуміння навчання в колах програмування.
бхарал

5

Найкращий спосіб навчитися кодувати - це написати код. У мене є приказка «Чим більше я пишу коду, тим правильніше я кодую». Створіть невеличку зразкову програму, яка, на вашу думку, буде корисною для вас та кодуйте її. Якщо у вас є конкретні запитання, поверніться на сторінку http://www.stackoverflow.com , і перейдіть на codereview.stackoverflow.com, якщо ви хочете, щоб інші переглянули ваш код і дали вам відгуки.

Читайте також. Багато. Ось список, з якого ви почнете: /programming/1711/what-is-the-single-most-influences-book-every-programmer-should-read


І тим більше, як здається, у Йоду перетворять вас
Бінарний страшник

5

Не стрес. Те, про що ви говорите, - «ефемерне» . Ці речі (синтаксис, мовні примхи тощо) стануть природними через практику і постійно змінюються.

Найголовніше - це те, що ти навчишся програмувати . Найважливіші концепції триватимуть протягом усієї вашої кар’єри і будуть здійснювати ваші здібності до вирішення проблем, а не пам’ять. IDE, Google, StackOverflow та практика можуть допомогти вам у всьому іншому.


1
@BlackJack Якщо ви уважно подивитесь на будь-яке моє написання, то виявите абсолютно нульову послідовність. Наче мої пальці не можуть визначитися. Хоча з HTML не відображаються подвійні пробіли , я думаю , ви ж повинні уважно подивитися ... :)
Ніколь

2

Це як одяг у шафі.

Не маючи на чому їх повісити, вони впадуть на підлогу.

Те, що вам потрібно, щоб повісити концепції програмування, - це одна чи кілька проблем, які ви намагаєтеся вирішити.

Просто набирати речі, не маючи проблеми, яку ви намагаєтеся вирішити, - це як викидати свій одяг у шафу і сподіватися, що вони висять самі.


1

Потрібно просто почати розробляти речі, зробивши кілька речей кілька разів, ви дізнаєтесь, як це зробити у майбутніх проектах. Важливо, щоб ви просто робили це багато разів :)!


1

Тренуйтеся, практикуйтесь, читайте нотатки, практикуйте та практикуйте.


0

Залежно від вашого стилю навчання, вам може бути важливо зрозуміти мотивацію використання певних конструкцій у ваших програмах. Багато книг з програмування написані так, що вони будують ці поняття один на одному, розділ за розділом. Спробуйте просуватися вперед на одну главу, поки ви робите вправи для попередньої.

Таким чином, ви можете сказати: "добре, ifв цьому випадку є сенс використовувати висловлювання, але я знаю, що в іншому сценарії ефективніше використовувати switchоператор". Таким чином, поняття пов'язані у вашій свідомості, і ви завжди зможете коротко перевірити наявність будь-яких синтаксичних особливостей, які з’являються (і вони, безумовно, стануть другою природою раніше часу).

Ідея kylben розширити себе, трохи змінивши кожне завдання - це також чудовий спосіб триматися за ноги з речами. Ви також можете придумати проекти, що знаходяться на перших порах, для кожної пари глав і поставити перед собою завдання створити щось із усього, що ви знаєте досі.


0

Я не міг більше погодитися з тим, що тут говорять інші люди, програмування вивчається шляхом виконання. Чим більше кодування робиш, тим більше тим більше вчишся. Сказавши, що багато іншого важливо навчитися правильно кодувати, наприклад, ніколи не забувайте читати, дивлячись, як навчаються інші, читайте нові інструменти та технології та щодня переглядайте питання Q&A, такі як programmers.com.

Що стосується насправді запам'ятовування того, що ви дізнаєтесь, як тільки ви закінчили писати трохи коду, тоді поясніть собі мовчки, що ви насправді зробили, або поясніть своєму кодеру. Роблячи це, я виявляю, що пам’ятаю набагато чіткіше, і це дає мені можливість задуматися над тим, що я зробив. Також спробуйте кинути виклик собі, придумуючи альтернативні способи написання написаного вами коду, кращого чи гіршого. Пограйте з проблемою, яку ви вирішили, і подумайте, як вам потрібно змінити код, якщо проблема, яку він вирішив вирішити, трохи зміниться.


0

Не використовуйте під час навчання інтелігенцію або автозавершення (якщо ви використовуєте ..). Спробуйте ввести кожен синтаксис самостійно та відкоригуйте їх самостійно з результатів компілятора. Також не робіть цього, поки ви зі своїм вчителем. Тренуйтеся, коли ви вдома ...


0

Спосіб навчання - це практикувати; написати код; роздратуватися і розчаруватися, забувши, зануривши одну змінну: D

Підберіть проблему і спробуйте її вирішити; незабаром ви будете писати код, не турбуючись про синтаксис.


0

Можливо, написання програмного забезпечення не для вас.

Коли мені було 13, я писав у AppleBasic та Pascal. Програмування мало для мене ідеальний сенс.

З тематикою інженера-електрика все навпаки. В одне вухо, а в інше. Я ніколи не вчився багато чого на своїх заняттях з ЕЕ, і швидко зрозумів, що ніколи в цьому не добрий.

Тому я зараз інженер програмного забезпечення замість електротехніки.


0

Вся справа в практиці. Найкращий спосіб навчитися програмуванню - це будувати проект поруч і вдосконалювати його щоразу, коли ви дізнаєтесь щось нове.


0

Моя порада - ти знайдеш собі невеликий, але конкретний проект. Якщо ви хочете попрактикуватися, якщо висловлювання, реалізація якоїсь вікторини класифікації може бути гарною вправою: програма просить користувача вибрати тварину із заданого списку, а потім задає питання типу "Це ссавець?", "Чи це птах? »і намагається відгадати, що обрав користувач. Одним із способів реалізації цього є використання безлічі вкладених операторів if.

Тоді вам доведеться боротися через проект від уточнення поведінки програми, до кодування, тестування, налагодження. Щоразу, коли ви не пам’ятаєте синтаксису чи семантики, ви повертаєтесь до своєї книги, читаєте свої замітки, намагаєтесь зрозуміти помилки компілятора. Коли ви закінчите, і ваша програма працює як очікувалося, я впевнений, що ви дізналися заяви-if (і деякі інші речі).

Це принаймні єдиний метод, який дійсно працює для мене, коли я хочу вивчити нову мову програмування. Наприклад, я останні два роки намагаюся навчитися Haskell, але просто читати книгу і писати невеликі шматочки коду недостатньо: я постійно забуваю речі. Тоді у мене була можливість написати невеликий інструмент (в Haskell) у своїй компанії, і я дійсно багато чому навчився.


0

Спробуйте пояснити, що ви тільки що дізналися, не важливо, до кого (це може бути знаменита каучукова качка), будьте серйозні і терплячі, і не залишайте поза очевидністю речі, але зверніть увагу на деталі . Ви дізнаєтесь, що у вас все ще є прогалини, і вам потрібно повернутися до тих речей, які, на вашу думку, зрозуміли.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.