Програмиране на езика Java™ (3 модула), Графични и мрежови приложения на езика JAVA™ (2-ри и 3-ти модул), Разработка на разпределени и мрежови приложения на езика Java™ (3-ти модул)

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

  • Основи на програмирането на езика Java (40 учебни часа) – запознава с принципите и понятията на обектно-ориентираното програмиране и тяхната практическа реализация на езика Java™. Разглеждат се детайлно, на базата на примери и задачи, различните езикови конструкции, механизми за реализация и приложни класове за основните видове структури от данни. Обхванати са и по-сложните елементи на езика Java – наследяване и полиморфизъм, интерфейси, анонимни и вътрешни класове. Дискутират се още механизмите за обработка на изключения и конвенциите при документиране на Java™ код. Представят се новостите в Java 5/6/7 – generics, enumeration types, подобрен for-цикъл, static imports, autoboxing, variable argument lists, annotations, strings in switch, multi-catch, generics type inference, try with resources. Модулът включва също въведение в графичната нотация за обектно-ориентирано моделиране на езика Unified Modeling Language (UML) Use Case и Class диаграми.

  • Java API и проектиране на графичен потребителски интерфейс (40 учебни часа) – разглеждат се Java™ класовете за осъществяване на файлови операции и сериализация, включително новостите при работа с файлове в Java™ 7 – New I/O File, Path, FileSystem, MIME type inference. На базата на практически задачи се представят в детайли Swing библиотеката от класове и компоненти (прозорци, панели, бутони, текстови полета, списъци, диалогови прозорци, менюта, и др.) за изграждане на графичен потребителски интерфейс. Разглеждат се събитийният модел на Swing и Model-View-Controller архитектурата от гледна точка на тяхната практическа реализация. Представят се новите за Java 7 полу-прозрачни прозорци и прозорци с не-правоъгълна форма, Nimbus Look and Feel, JLayer компоненти. Дискутират се още проектирането на Java™ аплети (включително подписване), Java™ Beans™, реализация на паралелни процеси с използване на множество нишки (multi-threading) и механизмите за синхронизация между тези процеси. Като специални акценти на курса ще бъдат застъпени бързото и автоматизирано изграждане на графични приложения със JSR 296: Swing Application Framework и реализацията на фино-гранулярна конкурентност с библиотеката JSR 166: Concurrency Utilities, включително новият за Java 7 Fork/ Join Framework.

  • Разработка на разпределени и мрежови приложения на Java™ (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.

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

  • основи на UML графична нотация за подобряване на комуникацията в екипа (Use Case и Class диаграми);
  • новости в Java 5/6/7 – generics, enumeration types, подобрен for-цикъл за обхождане на колекции, static import, autoboxing, аргументни списъци с променлива дължина, използване на анотации в кода, низове в switch, multi-catch, generics type inference, try с ресурси;
  • новостите при работа с файлове в Java™ 7 – New I/O File, Path, FileSystem, 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 формат
За повече информация и записване, моля пишете на нашия e-mail адрес: office@iproduct.org
Oracle®, Java™ and EJB™ are trademarks or registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Oracle®, Java™ и EJB™ са търговски марки на Oracle и/или негови подразделения. Всички други търговски марки са собственост на техните притежатели.
Copyright © IPT - Intellectual Products & Technologies Ltd., 2003-2010. Всички права запазени.