TGViewer
Никита Федькин - мысли, заметки, анонсы Никита Федькин - мысли, заметки, анонсы @nixel2007_thoughts · 2.88K subscribers
Post #335 3.76K
Про обучение джаве.

В институте, как и у многих технарей, у меня был TurboPascal 7.1, Deplhi 7 и C образца книжки Кернигана и Ритчи. Ну, сами понимаете, какой в институте даётся уровень языка на непрофильных программированию кафедрах. Бонусом была экзотика в виде "Максима" и менее экзотичный mathcad.

В школе были короткие курсы по Visual Basic и HTML. Показанный мне тогда паскаль показался странным и неудобным (и это я ещё джаву не видел на тот момент!).

В общем, в 1с я пришёл уже с некоторым пониманием не только циклов и условий, но и с небольшим опытом визуального "программирования форм" на VB/VBA и Deplhi.

После начала работы с 1С я продолжил знакомиться с другими языками, например, проходил туториалы по R и Haskell, и вносил в опенсорс проекты небольшие правки на JavaScript и CoffeeScript, который на тот момент выглядел очень перспективно. Где-то в тоже время был небольшой экскурс в Python и перевод precommit1c с питона на оскрипт (кто-то вообще помнит, что он был на питоне? :)).

С подачи Жени Сосны и Вики Дорохиной и их работы над плагином поддержки 1С в VSCode я познакомился с TypeScript и однозначно убедился в том, что я сторонник статической типизации в языка программирования. И чем строже, тем лучше. После динамической слабой типизации в 1С это было глотком свежего воздуха.

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

Моей первой джава-задачей стало не Фибоначчи или сортировка строк в файле, а вполне конкретное прикладное решение - нужно было написать с нуля плагин для поддержки 1С в SonarQube. И кода для нулевого опыта в джаве надо было написать достаточно много. Да, у меня было примерное понимание того, что должно получиться на выходе, был опыт разработки плагина для vscode, но все равно с многими концепциями языка и экосистемы вы столкнетесь только после начала активной работы с языком.

На своём опыте могу сказать, что коммерческий или пет-проект - это второй важный кирпичик в процессе обучения языку. Именно он позволяет вам с головой окунуться в исследование и обучение. Мне пришлось разобраться и с концепциями dependency injection, и с шаблонами проектирования, и с профилированием (как cpu так и памяти), и конечно же богатейшей системой библиотек и системой сборки maven.

В плане источников получения информации в джаве все очень хорошо. Есть огромное количество кода, который можно исследовать. Хорошо бы при этом понимать, какой код хороший, а какой плохой, но это дело наживное.
Есть туториалы от Oracle с разбором решения различных задач, используя стандартную библиотеку джавы. Хорошим источником информации являются и спецификации - как самого языка, так и различных частей экосистемы - например, Java Persistence API, которая легла в основу библиотеки entity.
До сих пор очень много вводной информации по той или иной библиотеке я подчерпываю с сайта Baeldung. Он является отличной точкой входа с быстрым how-to для использования, и понимания, нужно ли углубляться в чтение документации.
Я начинал проходить несколько видеокурсов, но кажется, это не мой формат поглощения информации (мне ближе статьи и референсная документация). Могу отметить хороший курс от Tim Buchalka на Udemy.
Специализированных книг по джаве я пока не читал, хотя и там есть из чего выбрать. Ну, разве что книгу Егора Бугаенко "Элегантные объекты. Java edition", от которой у меня жопа горит до сих пор. Но то Бугаенко.

Ну и конечно же фреймворки. Рано или поздно вы с ними столкнетесь, не со спрингом, так с даггером, микронавтом или с чем-нибудь другим.
  • 👍 59
  • 🤝 3
  • ❤ 1
  • 🤔 1
  • 🙏 1
More from @nixel2007_thoughts
  1. Oct 15, 2026Компьютерики шутят (с)
  2. Oct 11, 2026Когда устал пилить опенсорс, подобрел и решил открыть свой магазин одежды.
  3. Sep 28, 2026Вторую картинку в посте потерял. Вот так менять/задавать пароль.
  4. Sep 28, 2026Если вы можете прочесть этот пост, то вероятно, ваш телефон находится, кхм-кхм, за границе…
  5. Sep 28, 2026video post
  6. Sep 28, 2026#анонс Полишинеля Я разрываюсь между двумя фразами на анонс, пускай будут обе: 1. Мы строи…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →