Как показывает моя практика:
1) Сваять простой скрипт -> stackoverflow + google.
2) Прочесть и понять книгу -> copy-paste примера в IDE.
3) Правильно применить все нагугленое и прочитанное -> для меня оказалось вопросом.
Почему
BaseJava?
На сегодня отличным ответом на #3 оказалась проверка кода в рамках
BaseJava.
Порой возникают вопросы на которые сколько Google не терзай - ответа нет, но вроде оно и так все понятно, пока не сядешь писать:
1) Как поделить функциональность на методы, чтобы часть методов можно было переиспользовать?
2) Как написать код, который можно потом прочитать?
3) Как поделить идею приложения на классы?
4) А что делать, если нужно изменить поле класса (делегировать работу полю? сделать утильный класс? написать метод внутри класса?)
5) и т.д.
В сочетании с IO/XML/JSON/LambdaExprssions/SQL/ServletAPI все оказалось фантастически круто.
P.S. За код бывает стыдно, но так как обучение по интернету, то меня не пороли (+1 к удаленному обучению)
https://vk.com/2altor