Комментарии 16
Это предпочтительный язык для IoT(интернет вещей)
Неожиданно
Новичок в программировании первое время должен не столько изучать синтаксис, сколько переключать свой мозг на понимание базовых абстракций программирования и на развитие внимательности, дотошности. Основные проблемы будут в осознании концепции присваивания, циклов, массивов и функций. На любом языке. У среднего человека с работой на полный день этот процесс займет примерно год-полтора усердных ежедневных занятий по вечерам и на выходных.
Зубрежка синтаксиса и java core без умения вообще никак не поможет научиться программировать. Одно только сидение в чатике с программистами не поможет вам стать программистом.
В джава есть масса сложных для восприятия вещей: например, конкурентность (и связанные с ней проблемы доступа к общей памяти) и коллекции. Имхо, изучить джава полезно, но не на первых шагах.
ООП для первых шагов тоже избыточен, с процедурного стиля программирования гораздо проще начинать освоение.
>Я вот смотрю на тег «начало пути» и думаю, что лучше новичкам начинать освоение с какого-нибудь скриптового языка.
Но вообще да. Взять котлин, или груви… и будет все тоже самое — только удобнее и проще. Для JVM таких языков полно, если на то пошло.
Поэтому я бы сказал, что такой курс для новичков — он странный. Не надо такому сразу учить. Стоит рассказать один день, что там вообще есть, чисто обзорно, и все. Потому что нормальная книга типа JCIP — она же здоровая, по ней вполне можно читать курс на месяц.
Спасибо
Шикарная статья
А вообще да, типичные ошибки обучения представлены, но вот не объясняется сами концепты которые нужно усвоить, а они не зависимы от языка :
- Концепция последовательности вычислений — операторы и операнды, приоритеты операций — те школьная алгебра
- Концепция потока исполнения — циклы и условия, они частично есть в школе, но чаще нет
- Концепция переменной величины и её тип, а так же архитектуры компьютеров + 2чая система счисления + плоская модель памяти + адресации + понимание что программа и данные — это набор байтов с разными адресами — это блин в голову впихнуть трудно с разбегу, и без правильной подготовки и хороших метафор вряд ли получится
Концепты рекурсии и стековой машины тоже не обойтись, иначе гарантированы химеры в голове
Это вот основа, хоть это и основа, но вот реально попадаются программисты у которых и в этом пробелы, потом за них приходиться доделывать код
А как эти концепты вложить в голову это искусство периода.
Косяк в том что, у новичков этих концептов нет, а препода который правильно и в нужной последовательности вложит тоже у новичоков нет, новички не могут сами правильно выстроить траекторию самостоятельно
Мне вот действительно интересно, как не имея этих знаний можно что-то создавать.
Иногда кажется идея генетического программирования живет в реальности — т.е. случайного нажимания кнопок работает в реальности, те кнопки или та комбинация строк исходного кода которая скомпилировалась — закрепляется в памяти программиста, при этом думать не обязательно.
Хотя это и ирония
Как научиться программировать на Java: почему стоит и где начать