
Сообщение от Skipy
Как я уже говорил, всё зависит от области. Одно дело web-приложение, несколько другое - enterprise, standalone-приложения (хотя их мало пишется) - третье. Отдально стоят мобильные приложения - JavaME, Android. Вам куда требования нужны?
Вот этот список, я считаю, нужен в любом случае (к ME/Android он относится частично)
- Знание языка - синтаксис, конструкции, принципы компиляции, связывания, загрузки классов, типы классов, принципы ООП, типизация (generics), особенности работы с массивами, исключения, модификаторы доступа, внутренние классы, анонимные классы, их особенности, модификаторы final и static.
- Знание основных классов библиотеки - пакет java.lang; знание особенностей работы со строками
- Collections API - типы коллекций, варианты их реализаций, отличия в реализациях, особенности использования (необходимость реализации hashCode, equals, compareTo)
- Потоки - принципы создания, управления жизненным циклом, принципы взаимодействия, синхронизация, использование пулов потоков, атомарность операций, thread safety
- Ввод-вывод - базовые принципы работы с потоками (stream), работа с файлами с произвольным доступом, NIO, работа с буферами данных, желательно понимание принципов событийной работы с потоками (селекторы, регистрация слушателей событий), сериализация, кодировки, отличия в работе с байтами/символами
- Работа с XML - какие есть подходы, в чем отличия, преимущества/недостатки
- Reflection - принципы работы с метаданными классов, создание классов/вызов методов через объекты java.lang.reflect
- RMI - принципы, требования к классам, участвующим в реализации
- Работа с сетью - основные принципы взамодействия, средства их поддержки в Java (сокеты различного вида, поддержка различных протоколов), базовые принципы реализации
- JDBC - принципы низкоуровневого взаимодействия с базами данных
И это только базовая часть. Дальше, в зависимости от специализации, появляются сервлеты, JSP, EJB, JPA, JMS, JNDI, веб-сервисы, JSF, различные фреймворки (коих туча). И т.д. и т.п. Это уже можно обсуждать только после определения специализации.
| ***
|