JAVA 7 – Application Libraries (API) & Client-Server Programming (TCP/UDP Sockets, JDBC, JPA, RMI)


JAVA 7 – приложни библиотеки и клиент-сървър програмиране

JAVA 7 – приложни библиотеки и клиент-сървър програмиране

Курсът осигурява практически умения за обектно-ориентирано програмиране на езика Java ™ версия 7 с използване на проблемно-ориентирана методология за обучение. Продължителността му е 80 учебни часа и включва два модула:

  1. Java API и проектиране на графичен потребителски интерфейс (40 учебни часа) – разглеждат се Java™ класовете за осъществяване на файлови операции и сериализация, включително новостите при работа с файлове в Java 7 – New I/O 2 Path, Files, FileSystem, AttributeViews, walking the file tree, WatchService, MIME type inference. Представят се Swing библиотеката от класове и компоненти (прозорци, панели, бутони, текстови полета, списъци, диалогови прозорци, менюта, и др.) за изграждане на графичен потребителски интерфейс (GUI) и Model-View-Controller архитектура, както и новите за Java 7 JLayer компоненти. Разглежда се графичното изграждане на форми и приложения, както и реализация на паралелни процеси с използване на множество нишки (multi-threading) и механизмите за синхронизация между тези процеси. Като специални акценти на курса ще бъдат застъпени бързото и автоматизирано изграждане на GUI приложения и реализацията на фино-гранулярна конкурентност с библиотеката Concurrency Utilities (JSR-166), включително новият за Java 7 Fork/ Join Framework.
  2. Разработка на разпределени и мрежови приложения с JAVA 7 (40 учебни часа) – модулът запознава с основите на мрежовото програмиране на Java™ (разработват се чат сървъри и клиенти през TCP/UDP/Multicasting), транзакции и връзки към бази данни през JDBC™, практическа разработка на разпределени приложения от тип клиент/сървър с Java RMI™ и многослойни софтуерни архитектури. Разглеждат се механизмите за осъществяване на връзка с база от данни (Java™ Database Connectivity – JDBC™) и използването на SQL за манипулиране на данните. Включени са новостите при JDBC 4.1 (Java 7) – try with resources, RowSet, RowSetFactory, FilteredRowSet, CachedRowSet и др. Обяснява се практически Java™ Remote Method Invocation (RMI) механизма за изграждане на разпределени приложения и използването на декларативна сигурност на базата на политики. Към новите теми разглеждани в този модул спадат Java Persistence API (JPA), което надгражда добилите популярност ORM мениджъри Hibernate/ TopLink/ EclipseLink. JPA улеснява съхраняването на данните в база данни, като прави ненужни както писането на SQL заявки, така и на XML описания на данните, заменяйки ги с анотации в кода и автоматизираното създаване на JPA entity beans и контролни класове чрез помощници директно от таблици в базата данни. Курсът завършва с проект – разработка на цялостно трислойно клиент/сървър приложение с използване на Remote Method Invocation (RMI) middleware.

Сред новостите, включени в последното издание на курса са:

  • новости в Java 5/6/7 – generics, enumeration types, подобрен for-цикъл за обхождане на колекции, static import, autoboxing, аргументни списъци с променлива дължина, използване на анотации в кода, низове в switch, multi-catch, generics type inference, try с ресурси;
  • новостите при работа с файлове в Java™ 7 – New I/O 2 Path, Files, FileSystem, AttributeViews, walking the file tree, WatchService, MIME type inference;
  • реализацията на фино-гранулярна конкурентност с библиотеката JSR 166: Concurrency Utilities, включително новият за Java 7 Fork/ Join Framework;
  • новостите в JDBC 4.1 (Java 7) – try with resources, RowSet, RowSetFactory, FilteredRowSet, CachedRowSet и др.;
  • новото за Java 5/6/7 SE Java Persistence API, което надгражда добилите популярност ORM мениджъри Hibernate/ TopLink/ EclipseLink и улеснява съхраняването на данните в база данни, като прави ненужни както писането на SQL заявки, така и на XML описания на данните, заменяйки ги с анотации в кода;
  • автоматизирано създаване на Java Persistence API (JPA) entity beans и контролни класове чрез помощници директно от таблици в базата данни;
  • бързо изграждане на потребителски интерфейси с графичен билдър;
  • разбиране на предимствата и недостатъците на различните архитектурни решения и използване на най-добрите практики (Reusable Design Paterns) в зависимост от спецификата на проекта;
  • практическа разработка на собствени мрежови приложения от тип клиент-сървър и peer to peer (P2P) през протоколи TCP/ UDP/ multicasting – чат-сървъри и клиенти; програма за фактуриране, включваща RMI клиенти с графичен потребителски интерфейс, централизиран сървър и база данни;
  • запознаване с механизмите за сигурност в Java, декларативна сигурност, базирана на политики;
  • постигане на максимална скорост и разширяемост при разработката на многослойни клиент-сървър приложения чрез съчетаване на изброените по-горе технологии и подходи.

.pdf Преглед на подробната програма на курса – модули 2 и 3 (.PDF – в нов прозорец на браузъра) За повече информация и записване, моля пишете на нашия e-mail адрес: office@iproduct.org