История изменений
Исправление
Legioner,
(текущая версия)
:
Почему выбрали именно Java?
Потому что на ней нужно было писать на моём втором месте работы.
Сколько времени вы потратили на изучение до уровня Java Junior Developer?
Имхо, эти ярлыки не несут никакого смысла. Я к тому времени знал C++, на изучение Java как языка потратил один вечер. А потом в ходе работы изучал, что нужно.
Какими источниками обучения пользовались?
Какие-то конкретные книги не читал. По ходу дела разбирался.
Что посоветуете человеку, который только взялся как за Java, так и программирование в целом?
Во-первых изучить основы структурированного императивного программирования: переменные, условные операторы, циклы, функции. Во-вторых изучить основные алгоритмы и структуры данных. В-третьих изучить, как работает 8086 процессор. Что такое регистры, какие примерно у него есть команды. Потом постараться понять в общих чертах чем отличается современный процессор от 8086. В-четвёртых понять, как работает GC, какие есть другие системы управления памятью. В-пятых разобраться с ООП в Java. В-шестых изучить паттерны, как классические (от банды четырёх), так и enterprise. В-седьмых изучить параллельное программирование. И на каждом этапе писать код, много кода.
Если всё это изучить, в голове должна сложиться примерная картина основ. Дальше можно более подробно изучить, как работает JVM (байткод, разные сборщики мусора, тюнинг), изучить стандартную библиотеку Java, изучить большие общеиспользуемые библиотеки (Java EE, Spring, Hibernate), изучить стандартный инструментарий.
Исходная версия
Legioner,
:
Почему выбрали именно Java?
Потому что на ней нужно было писать на моём втором месте работы.
Сколько времени вы потратили на изучение до уровня Java Junior Developer?
Имхо, эти ярлыки не несут никакого смысла. Я к тому времени знал C++, на изучение Java как языка потратил один вечер. А потом в ходе работы изучал, что нужно.
Какими источниками обучения пользовались?
Какие-то конкретные книги не читал. По ходу дела разбирался.
Что посоветуете человеку, который только взялся как за Java, так и программирование в целом?
Во-первых изучить основы структурированного императивного программирования: переменные, условные операторы, циклы, функции. Во-вторых изучить основные алгоритмы и структуры данных. В-третьих изучить, как работает 8086 процессор. Что такое регистры, какие примерно у него есть команды. Потом постараться понять в общих чертах чем отличается современный процессор от 8086. В-четвёртых понять, как работает GC, какие есть другие системы управления памятью. В-пятых разобраться с ООП в Java. В-шестых изучить паттерны, как классические (от банды четырёх), так и enterprise. В-седьмых изучить параллельное программирование. И на каждом этапе писать код, много кода.
Если всё это изучить, в голове должна сложиться примерная картина основ. Дальше можно более подробно изучить, как работает JVM (байткод, разные сборщики мусора, тюнинг), изучить стандартную библиотеку Java, изучить большие общеиспользуемые библиотеки (Java EE, Spring, Hibernate).