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

Практический и теоретический подходы к изучению Java

Любой процесс обучения состоит из практики и теории. В программировании все точно так же — два подхода: практический и теоретический. И у того, и у другого есть свои плюсы и минусы. В этом посте вы узнаете больше о каждом из них и решите, какой подход использовать для изучения Java. Тебе решать. С пометкой java, новички, программирование.

Любой процесс обучения состоит из практики и теории. В программировании все точно так же — два подхода: практический и теоретический. И у того, и у другого есть свои плюсы и минусы. В этом посте вы узнаете больше о каждом из них и решите, какой подход использовать для изучения Java. Тебе решать.

Итак, давайте начнем.

Теоретический Подход

Само название говорит о том, что вы начнете с теории в этом подходе, который предполагает изучение Java с самых основ, начиная с довольно сложных тем, таких как JVM и работа с компилятором, затем переходите к синтаксису Java (переменные в циклы, методы, классы, концепции ООП и так далее). Этот восходящий подход часто используется на официальных курсах программирования, специфичных для колледжей или других учебных заведений. Идея состоит в том, чтобы дать вам прочную основу основных навыков программирования, необходимых для того, чтобы начать создавать вещи и практиковаться в реальных проектах в будущем.

Преимущества

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

Недостатки

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

Практический Подход

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

Преимущества

  • Практический подход позволяет вам создавать некоторые реальные части программного обеспечения в мгновение ока. Чем быстрее вы можете что-то создать, тем больше вы возбуждаетесь.
  • Само кодирование позволяет вам узнать о различных компонентах на практике, они не обязательно будут написаны в книгах или упомянуты в курсах. По мере того, как вы знакомитесь с ними, вы получаете четкое понимание того, что вы хотите изучать дальше, а что нет, что вам интересно, а что нет. Основываясь на этом, вы делаете свой осознанный выбор и продолжаете учиться, следуя своему выбору.

Недостатки

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

Кто из них Победит?

Итак, вы добрались до этого параграфа, чтобы выяснить, какой подход стоит выбрать. Но дело в том, что один подход не исключает другого. Другими словами, не существует чисто практического или теоретического подхода — они рассматриваются как искаженные в ту или иную сторону. Но по-прежнему важно сочетать их оба во время обучения программированию и смешивать их в правильной пропорции. Учитывая тот факт, что программирование – это практическая деятельность, я рекомендую уделять практике не более 80%, в то время как теория займет 20%.

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

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

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

Курсы Java С Хорошим Балансом Между Теорией и Практикой

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

Источники для получения практического опыта

Кодовый Тренажерный зал

Я нахожу Code Gym полезным для начинающих программистов, которые хотят больше сосредоточиться на обучении сверху вниз. Это курс на основе Java, который на 80% основан на практике. Он содержит 1200 практических заданий, так что вам придется написать огромное количество кода, что на самом деле полезно для применения ваших ранее полученных знаний на практике. В курсе есть автоматическая проверка вашего кода и советы, которые помогут в решении проблем. Но не пугайтесь такой большой практической работы в процессе обучения — компания внедряет новейшие методы обучения, включая визуализацию, рассказывание историй и геймификацию, чтобы вы были в восторге от обучения.

GeeksforGeeks

GeeksforGeeks – это обучающая платформа, где вы можете овладеть своими навыками в основных языках программирования, таких как C, C++, Java и Python. Здесь вы можете работать в интерактивной среде разработки, которая позволяет манипулировать кодом и сразу после этого тестировать его. Кроме того, вы сможете получить хорошо написанные, хорошо продуманные и хорошо объясненные решения для выбранных вопросов и подготовиться к собеседованию с рекрутерами или владельцами компаний, чтобы в конце концов получить работу программиста.

Codecademy

Codecademy – это новое слово в изучении кода. Компания изобрела отличную систему, которая позволяет выбирать все, что вы хотите узнать, от создания веб-сайтов до анализа данных. Этот курс разработан для того, чтобы познакомить вас с различными технологиями, включая Java, HTML, CSS и JavaScript. Если вы не уверены, с чего начать, вам предложат пройти тест, а затем укажут правильное направление. Помимо создания интерактивных веб-страниц, вы также сможете овладеть навыками серверной разработки, чтобы стать специалистом по полному стеку.

Источники для получения теоретических знаний

Основы Java от Pluralsight

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

Полный мастер-класс по Java

Этот курс от Udemy идеально подходит, если вы полный новичок в программировании на Java, если вы знаете другие языки и хотите изучать Java, или если вы хотите получить работу в качестве разработчика Java. Он научит вас с самых основ и перейдет к более продвинутым темам, таким как лямбда-выражения, многопоточность, дженерики и другие. Структура соответствует пошаговому методу обучения, поэтому процесс обучения будет плавным. По окончании курса вы будете готовы читать и писать программы на Java и чувствовать себя уверенно на любом собеседовании при приеме на работу.

Заключительные Слова

Давайте посмотрим правде в глаза: жизнь – это нескончаемый процесс обучения. Программирование не является исключением. Разобраться во всем в программировании довольно сложно — всегда есть чему поучиться новому, хотя бы из-за высокоразвитой среды. В программировании, как и во многих других сферах, существует два подхода: теоретический и практический. Конечно, вы можете выбрать один из них, исходя из ваших целей и предыдущего опыта. Тем не менее, я бы рекомендовал комбинировать их оба во время тренировок и придерживаться оптимальной пропорции 20/80, где теория займет 20% вашего времени, а практика — 80%.

Впервые опубликовано на LevelUp GitConnected .

Оригинал: “https://dev.to/selawsky/practical-vs-theoretical-approach-in-java-learning-3gmo”