Програмиране на езика Java™ (3 модула), Графични и мрежови приложения на езика JAVA™ (2-ри и 3-ти модул), Разработка на разпределени и мрежови приложения на езика Java™ (3-ти модул)
Курсът осигурява практически умения за обектно-ориентирано програмиране на езика Java™с използване на проблемно-ориентирана методология за обучение. Той включва следните три модула (възможни са индивидуални комбинации):
Основи на програмирането на езика Java™(40 учебни часа) – запознава с принципите и понятията на обектно-ориентираното програмиране и тяхната практическа реализация на Java™. Разглеждат се детайлно, на базата на примери и задачи, различните езикови конструкции, механизми за реализация и приложни класове за основните видове структури от данни. Дискутират се още механизмите за обработка на изключения и конвенциите при документиране на Java™ код. Модулът включва също начално запознаване с Unified Modeling Language (UML) Use Case и Class диаграми.
Java™ API и проектиране на графичен потребителски интерфейс (40 учебни часа) – разглеждат се Java™ класовете за осъществяване на файлови операции, сериализация и отпечатване на принтер. На базата на практически задачи се представят в детайли Swing библиотеката от класове и компоненти (прозорци, панели, бутони, текстови полета, списъци, диалогови прозорци, менюта, и др.) за изграждане на графичен потребителски интерфейс (Graphical User Interface – GUI). Разглеждат се събитийният модел на Swing и Model-View-Controller архитектурата от гледна точка на тяхната практическа реализация. Дискутират се още проектирането на Java™ аплети, Java Beans™, реализация на паралелни процеси с използване на множество нишки (multi-threading) и механизмите за синхронизация между тези процеси. Практически се демонстрира използването на средата за разработка NetBeans за бързо графично изграждане на GUI форми и приложения. Разглеждат се новостите при графичната визуализация със Swing в Java SE 6 Update 10 - модерния Nimbus Look and Feel, базиран на мащабируема 2D векторна графика, както и новостите при графично изграждане на desktop приложения с NetBeans 6.9 като Swing Application Framework (JSR 296).
Разработка на разпределени и мрежови приложения на Java™(40 учебни часа) – модулът запознава с основите на мрежовото програмиране на Java™ (разработват се чат сървъри и клиенти през TCP/UDP/Multicasting), транзакции и връзки към бази данни през JDBC™, практическа разработка на разпределени приложения от тип клиент/сървър с Java RMI™ и многослойни софтуерни архитектури. Специален акцент на курса е запознаването с новостите в Java 5 и 6, като декларативно програмиране с помощта на анотации в кода и автоматизиране на достъпа до бази от данни чрез Java Persistence API (JPA). Курсът завършва с проект - разработка на цялостно трислойно клиент/сървър приложение с използване на Remote Method Invocation (RMI) middleware.
Сред новостите, включени в последното издание на курса са: