Рубрики
Без рубрики

Как Избежать Типичных Ошибок При Изучении Java

Итак, вы решили стать программистом. Отличная идея, но что вам теперь делать?. С тегами для начинающих, java, кодирование, обучение.

Итак, вы решили стать программистом. Отличная идея, но что вам теперь делать?

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

Тем не менее, вы определенно можете избежать, по крайней мере, некоторых из них, если кто-нибудь скажет вам, что не так.

Я могу быть этим “кем-то” для вас, если вы хотите изучать Java.

В этой статье описываются распространенные ошибки тех, кто хочет изучать Java и начинающих Java (или студентов любых других языков программирования). Я являюсь одновременно старшим разработчиком Java и преподавателем Java, поэтому я много знаю об этой теме.

Прежде Чем Вы Начнете … Ошибка № 0: Думая, что Колледж – Это обязательно

Колледж или любое другое официальное учебное заведение дает вам знания и понимание компьютерных наук, но это вряд ли делает вас профессиональным, отраслевым разработчиком программного обеспечения.

В колледже вы сталкиваетесь с академическим подходом к программированию. Ваше исследование сосредоточено на теории и алгоритмах. Вы также можете выполнить несколько крупных проектов, близких к научным, в конце года. Это может быть полезно, но не для типичного отраслевого разработчика программного обеспечения.

Я хочу сказать, что, возможно, колледж – не лучший источник знаний о разработке программного обеспечения, но он может подойти вам, если вы мечтаете о карьере научного программиста. Если вы старшеклассник и хотите стать программистом, колледж компьютерных наук также является хорошим выбором для вас.

В любом другом случае, обучение в колледже не является необходимостью, и довольно часто это просто пустая трата вашего времени. Помните, что не все программисты имеют степень в области компьютерных наук. Неудивительно, что большинство из них этого не делают.

Ошибка № 1: Иллюзия обучения

Я помню Дейва, который был одним из моих студентов. Он пробовал разные бесплатные онлайн Курсы Java снова и снова. Я полагаю, он купил половину всех книг по Java на Amazon. У него был миллион страниц в закладках браузера, все о Java… и… он не знал, что делать.

Он начинал один курс, потом другой, только чтобы бросить их один за другим, снова и снова. Прошло три года (!) его учебы, прежде чем он встретил меня.

“Итак, Дейв, какими темами ты сейчас занимаешься? “Я спросил.

“Сканер и считывающее устройство”, – ответил он.

“О, ну что ж … Как продвигается ваше объектно-ориентированное программирование и коллекции?”

” Я попробовал их совсем немного, но не глубоко”.

“Вы сказали мне, что изучаете Java в течение трех лет, не так ли?”

” …Да, но я бросил несколько месяцев назад, вы знаете, и просто снова начал с нуля”.

Он потратил три года впустую, просто бродя вокруг и перескакивая от одного источника к другому. Ну, если вы хоть немного знаете Java, вы, должно быть, думаете, что Дейв просто не создан для разработки программного обеспечения вообще. К счастью, это неверно.

Его проблема заключалась в том, что он начал собирать курсы и книги вместо того, чтобы учиться на самом деле. Он не был плохим потенциальным программистом, но плохим учителем для себя.

Дейв стал стажером-разработчиком Java в течение года после того, как присоединился ко мне и начал серьезно относиться к своему обучению. Я не пытаюсь сказать всем: “Эй, найдите репетитора прямо сейчас; вы не можете сделать это самостоятельно. “Большинство людей могут сделать это сами, если они знают, что делать, и имеют надлежащую учебную программу. И это то, что я сделал для Дэйва в первую очередь. Я разработал его учебную программу и график обучения.

Не поймите меня неправильно. Я знаю многих людей, которые самостоятельно учились программированию, используя только Интернет. У них есть один очень важный навык — умение работать с информацией и отличать полезное от бесполезного.

Ошибка № 0 может быстро убить вашу мечту, а ошибка № 1 делает это медленно и болезненно, съедая ваше время и деньги.

С № 0 легко бороться. Пожалуйста, посетите любую платформу для поиска работы и найдите должность разработчика программного обеспечения Java. Я не думаю, что вы найдете что-либо, требующее степени в области компьютерных наук, а скорее требующее знаний и опыта в области технологий.

Ошибка № 1, “иллюзия обучения”, является трудной. В нем есть лень, отсутствие принятия решений и охота найти волшебную таблетку для успешного обучения. Потенциальный разработчик получает слишком много достоверной информации и не знает, что с ней делать. Они начинают думать, что разработка программного обеспечения – это слишком сложно, и перестают пытаться… или пытаются снова и совершают те же ошибки.

Что ж, мой главный совет – делать это правильно:

  1. Составьте правильный учебный план. Если у вас есть советник (наставник или друг-программист), это лучший сценарий. Если у вас нет учебной программы, и вы не можете или не хотите посещать автономные курсы, найдите хороший онлайн-курс, максимум один или два, и продолжайте. Независимые обзоры/рейтинги помогут вам выбрать правильные курсы, и позже в этой статье я приведу несколько примеров хороших бесплатных курсов.
  2. Последовательность – это ключ к успешному обучению. Кодируйте каждый день или, по крайней мере, через день.
  3. 75 или более процентов вашего времени должно быть посвящено практике, а 25 или менее процентов – теории. Ниже я более подробно остановлюсь на анализе этой типичной ошибки новичка. ## Ошибка № 2: Читая слишком много Теории и недостаточно практикуясь, представьте себе 2-летнего малыша, который пытается говорить. Однако его мама и папа не позволяют ему этого делать, потому что он слишком мал и ничего не знает об этом предмете. Они решают сначала объяснить ему правила грамматики и нанять логопеда (чем раньше, тем лучше!). Что ж, после всех этих мер они позволили ему попробовать. Ну, я думаю, что с таким подходом было бы больше безмолвных людей!

Или давайте представим себе более крупного парня, который хочет играть в хоккей на льду. ” Извини, приятель. Никакого льда для вас, пока вы не прочтете или не прослушаете несколько лекций, таких как:

  • Физика льда
  • Кинематика и динамика движений хоккеиста
  • Шайба и хоккейная клюшка для чайников
  • Психология командной работы хоккеистов
  • Раны и травмы начинающих хоккеистов
  • Что делать, если коньки других хоккеистов находятся неудобно близко к вашему лицу” “Хорошо, – говорит парень, – я лучше продолжу свою жизнь без этой игры. Хоккей, должно быть, очень скучный и страшный. И слишком сложный.”

Кажется нелепым, не так ли? Однако многие студенты и некоторые преподаватели думают, что именно так все и происходит, когда мы говорим о программировании.

Мое сообщение здесь очень простое:

  1. Чтобы овладеть какой-либо практической деятельностью, вы должны практиковать ее!
  2. Программирование – это практическая деятельность.
  3. Вывод из 1 и 2 очевиден, не так ли? С самых первых шагов найдите курс или книгу с большим количеством задач по кодированию и решайте их каждый день. Если вы сделаете это, вы пропустите одну из самых больших ошибок при изучении программирования: слишком много внимания уделяете теории.

Я не хочу сказать, что вы должны игнорировать теорию. Просто “меньше теории, больше кодирования” с соотношением 25:75. Написание кода – лучший способ изучить Java.

Ошибка № 3: Неверная Проверка Ваших Решений

Делает ли ваш код то, что должен? Довольно часто начинающий программист думает, что это так, если они получают правильный результат. Однако это не значит, что все работает нормально.

Чем раньше вы научитесь правильно тестировать свой код, тем быстрее станете лучшим программистом. Обучение модульному тестированию – очень полезный навык, но не для полного новичка. Вы знаете, правильное модульное тестирование – это своего рода сверхдержава!

Первый шаг к освоению собственного анализа кода – это подумать “что, если?”. способ и попробуйте разные наборы данных. Нелегко рассмотреть все случаи, но вы накапливаете драгоценный опыт с каждым “что, если” в нужный момент.

Однако я должен признать, что в последние годы появились некоторые действительно хорошие курсы программирования и платформы, оснащенные автоматическим просмотром кода. Они значительно упрощают ваши первые шаги по кодированию и дают вам возможность сконцентрировать свое внимание на задачах.

Ниже вы найдете пару полезных ссылок на ресурсы с автоматической проверкой кода.

Ошибка № 4: Нечастая Практика

Знаете ли вы самый разрушительный и иррациональный способ развития практических навыков? Я могу описать это только одним словом — “иногда”. Изучение того, как программировать, похоже на восхождение на ледяной холм. Если вы остановитесь, то очень быстро соскользнете назад и, возможно, даже покатитесь вниз головой. Та же история и с вашими навыками программирования. Когда вы прекращаете кодировать, вы начинаете терять навык на удивление быстро.

Обучение таким образом отнимает у вас много времени. Перестаньте мучить себя и регулярно практикуйтесь в программировании. Под этим я подразумеваю, по крайней мере, три раза в неделю — или, еще лучше, каждый день.

Ошибка № 5: Быть слишком гордым, чтобы просить о помощи

Знаете ли вы, что делает профессиональный разработчик программного обеспечения, когда ему не удается решить задачу с помощью уже известных ему возможных решений? Они идут в StackOverflow, чтобы спросить других на форуме. Почему бы тебе, мой дорогой новичок в Java, не сделать то же самое?

“Что, если мой вопрос глупый, и другие парни смеются надо мной? “вы можете спросить. Ну, в самом деле, что, если? Вы знаете, что мы живем в Великую эпоху троллинга, поэтому хорошая идея – просто игнорировать их.

Помните одну важную вещь: вы имеете право задать самый глупый вопрос в мире ради вашего обучения. Но прежде чем спрашивать, просто загуглите свой вопрос. Почти каждый вопрос новичка был задан другими студентами и уже получил ответы.

Когда дело доходит до форумов по программированию, задавать вопросы или просто общаться в чате с другими новичками Java или разработчиками программного обеспечения действительно мотивирует. Вы понимаете, что вы не одиноки с такими проблемами, и есть много людей, которые могут вам помочь, а также тех, кому вы можете помочь.

Ошибка № 6: Сдаваться или пытаться решить Свою задачу слишком быстро

“Я однажды попытался решить эту задачу и не получил правильного ответа. Я должен спросить Google… или моего преподавателя… или того разработчика программного обеспечения, с которым я недавно познакомился”.

Стоп, стоп, стоп. Ты еще даже не пытался!

Конечно, трудно оценить подходящее время, чтобы обратиться за помощью. Однако сначала спросите себя, почему вы хотите получить помощь прямо сейчас. Возможно, это просто ваша лень или вы хотите быстрее выполнить задание. Если это так, не делайте этого. Мы говорим здесь о вашем обучении, а не о соревновании на скорость.

Ошибка № 7: Выбор слишком Сложных Задач

Что ж, это обратная сторона Ошибки № 5. Некоторые студенты готовы потратить сотни часов на решение одной задачи, которая сейчас им просто не по зубам. Я считаю, что решение множества простых задач для начинающих лучше, чем решение одной сложной задачи, по крайней мере, в течение первых двух-трех месяцев их обучения.

Я предлагаю вам оставить свои сложные задачи на потом, а самим заняться решением остальных. Вы всегда можете вернуться к трудной задаче позже. Может быть, вы обнаружите, что это не так сложно, как казалось?

Ошибка № 8: Теряете Свою Мотивацию

“Я не понимаю тему … Я недостаточно хорош для программирования. Я должен сдаться и попробовать что-нибудь другое”. Звучит знакомо, а?

Каждый — я имею в виду это — каждый начинающий студент-программист хотя бы раз терял мотивацию. Это случалось со мной много раз. На самом деле, даже слишком часто. Все мои товарищи по команде, а также все мои успешные ученики тоже испытали это.

Помните об этом, когда это снова ударит по вам. Если ваше отсутствие мотивации кажется серьезным, попробуйте сменить тему, которую вы изучаете прямо сейчас. И не забывайте: кодировать может почти каждый. Этому нелегко научиться, но это определенно возможно.

Ссылки для успешного изучения Java

Я собрал несколько хороших ссылок для своих студентов и для упрощения моей собственной работы в качестве преподавателя. Они будут полезны и для вас.

Code Gym предназначен для начинающих и студентов старших курсов. Это практический онлайн-курс, в котором вы можете найти отличную основную программу Java, около 1000 (я полагаю) задач по кодированию с автоматической проверкой кода, а также советы и подсказки. Это немного похоже на видеоигру: у вас есть свой персонаж (парень-робот), которого вы должны повысить от новичка до программиста Java. Чем больше задач по кодированию вы выполняете, тем больше очков вы получаете, и вы тратите эти очки навыков на открытие новых лекций и заданий.

CodinGame предназначен для студентов младшего среднего и продвинутого уровня, изучающих Java или другие языки. Это дает вам возможность изменять игру прямо в интегрированной среде разработки на основе браузера, компилировать ее и просматривать изменения в режиме реального времени! Примите несколько сложных задач и станьте лучшим разработчиком. Это не онлайн-курс, а интересный способ программирования с приятными, сложными упражнениями для серьезных новичков и для профессиональных разработчиков.

GeeksforGeeks – это огромный портал по информатике для гиков. Он содержит несколько академических курсов для разных языков программирования с хорошими учебными планами и множеством практических заданий, викторин и головоломок. Вы также можете найти полезные проблемы, связанные с алгоритмами и наукой о данных.

Oracle Docs является основным источником для каждого разработчика Java или студента от авторов языка.

Три хороших учебника по теории Java для всех, от абсолютных новичков до продвинутых студентов: Tutorialspoint , w3schools и Javatpoint .

Переполнение стека – это крупнейшее сообщество разработчиков, где вы можете задавать свои вопросы или искать существующие решения своих вопросов (задаваемых другими студентами).

Coderanch меньше, чем переполнение стека, но он очень удобен для начинающих и хорош для разработчиков Java.

Reddit – это огромный сайт, где вы можете найти ответы на свои вопросы. Полезными подразделами являются изучение программирования , java и изучение java .

Что читать/смотреть для вашей карьеры:

  • Глава Первая Java Кэти Сьерра и Берт Бейтс – хорошая книга для новичков.
  • Основные тома Java I и II — Основы Кей Хорстманн – одна из лучших книг по Java, которая подходит каждому студенту Java. ## Уверенно Встречайте Вызовы Java Вы не одиноки. Все начинающие студенты Java сталкиваются с трудностями на пути к освоению разработки программного обеспечения. Это нормально – совершать ошибки; ты все еще учишься!

Если вы застряли в учебе, возможно, вы столкнулись с одной из проблем, о которых я упоминал выше. Помните, что у всех них есть простое решение. Имейте это в виду и практикуйте правильно.

Перестаньте беспокоиться и начните кодировать!

Эта статья впервые была опубликована в качестве гостевой статьи в блоге потрясающего Простого программиста .

Оригинал: “https://dev.to/selawsky/how-to-avoid-typical-mistakes-while-learning-java-emm”