C++ Institute

Cisco Networking Academy

VUE Testing Center


  • 031 102 4664 / 0720 546 972

Programa curs Programare Java 8


Detalii grupe colective viitoare

Crystal Mind Academy on Facebook Crytal Mind Academy on Google Plus Crytal Mind Academy on Twitter Crystal Mind on Linkedin


Programa curs Java

1. Fundamente si caracteristici. Tipuri de date. Operatori.


- istoricul si caracteristicile generale ale limbajului Java

- instalare software necesar:

- JDK, JRE si IDE (Eclipse Neon si NetBeans)

- creare workspace si creare de proiect empy „Hello World!“

- masina virtuala Java (JVM)

- tipuri de aplicatii Java

- tipuri de date in Java

- variabile, scopul variabilelor

- metoda main()

- creare obiecte utilizand constructori, citire si scriere de atribute

- distrugere de obiecte: concept Garbage collector

- expresii si operatori:

- operatori binari: aritmetici, promovarea numerica

- operatori unari: logic si de negare, de incrementare si de decrementare

- alti operatori: de atribuire simplu si compus, conversie explicita, relationali, logici, egalitate.


2. Instructiuni Java. Blocuri si metode. Tablouri.


- instructiuni Java simple:

- instructiuni decizionale: if-then, if-then-else, switch

- instructiunea repetitive (bucle): while, do-while, for

- instructiuni Java complexe:

- instructiuni imbricate (nested loops) si etichete optionale (labels)

- utilizarea instructiunilor break si continue

- definirea de metode, semnatura metodei si functionalitate

- tablouri

- unidimensionale

- sortare, cautare, varargs

- multidimensionale

- intelegerea clasei ArrayList


3. Clase si obiecte. Modificatori de acces. Incapsulare.


- notiunea de clasa, elementele dintr-un fisier .java, obiecte

- modificatori de acces aplicati atributelor unei clase

- structura unei clase

- constructori:

- constructorul default

- supraincarcare de operatori

- atribute final

- incapsulare: getter si setter

- membrii unei clase de instanta vs. statici

- equals, hashCode si toString.


4. Pachete. String si StringBuilder. Date Calendaristice.


- pachete Java

- importuri simple si statice

- apelare de membrii mosteniti

- metode si variabile mostenite

- tipuri de pachete Java: .jar

- creare si manipulare de Strings:

- concatenare, immutability, String Pool, metode specifice

- utilizarea clasei StringBuilder:

- mutabilitate (mutability)

- inlantuire (chaining)

- metode specifice

- StringBuilding vs StringBuffer

- clase are impacheteaza primitive (Wrapper classes)


5. Clase mostenite. Polimorfism. Clase Abstracte. Interfete.


- introducere in mostenirea claselor:

- conceptul de mostenire

- aplicarea modificatorilor de acces

- instantiere de obiecte

- constructori

- clase mostenite si explicarea conceptului de polimorfism:

- obiect vs referinta

- conversia explicita a obiectelor (Cast)

- metode virtuale

- parametrii polimerfici

- polimorfism si suprascrierea metodelor

- clase abstracte: definire, creare si extindere

- interfete: definire, mostenire, metode default si statice

- utilizarea operatorului instanceof

- lucrul cu tipul de date Enum

- clase imbricate:

- clase inner

- clase anonymous

- clase statice vs. clase finale.


6. Generics si Colectii.


- operatorul diamond <>

- interoperatibilitatea tipurilor Raw si tipurilor Generics

- lucrul cu generics: tipul de date generic <T> aplicat claselor, interfetelor si metodelor

- parametrii Wildcard

- tipuri de date parametrizare: parametrul ?, lipsa acestuia si utilizari

- API-ul interfetelor colectie:

- interfata Collection

- colectii de tip lista: interfata List

- colectii de tip multime: interfetele Set, SortedSet, NavigableSet

- colectii de tip coada: interfetele Queue si Deque

- colectii de tip Map: interfetele Map, SortedMap, NavigableMap

- parcurgerea colectiilor:

- utilizand instructiunea for (pentru colectii de tip List)

- utilizand instructiunea for-each

- utilizand iteratori

- adaugiri in Java 8.


7. Interactiunea cu utilizatorul prin Swing


- introducere: interfete grafice, JFC

- Principii de baza MVC, UI Delegate, Look-and-feel, Swing versus AWT

- clasificarea componentelor Swing

- componente Swing:

- desenarea componentelor grafice

- containere de baza, intermediare

- componente atomice simple si complexe

- meniuri si bare de unelte

- dialoguri

- componente pentru progres si derulare

- ferestre interioare.


8. Swing – avansat. Thread-uri.


- fundamente Swing: evenimente si ascultatori

- evenimente si ascultatori

- alinierea la JavaBeans (concept si practici)

- gestionarea „focusului“

- introducere in fire de executie (Threads): fire de executie in Swing

- diferentierea tipurilor de thread-uri

- prezentarea executiei concurente

- interfata Runnable

- crearea thread, metodei sleep(), crearea thread cu ExecutorService, oprire thread

- procesare de task-uri - exemplificare

- interfata Callable

- planificare de task-uri (scheduling)

- sincronizarea accesului la date:

- protejarea datelor cu clase atomice

- imbunatatirea accesuli utilizand blocuri sincronizate

- sincronizarea metodelor

- colectii concurente:

- lucrul cu clase concurente

- obtinerea de colectii concurente

- introducere in gestionarea proceselor concurente

- identificare probleme in threading.


9. Programare functionala. Stream-uri.


- utilizare variabilelor in Lambda

- lucrul cu interfetele functionale built-in:

- implementare Supplier

- implemetare Consumer si BiConsumer

- implementare Predicate si BiPredicate

- implementare Function si BiFunction

- implementare UnaryOperator si BinaryOperator

- verificarea interfetelor functionale, returnare unui rezultat de tip Optional

- stream-uri:

- creare surse de Streams

- operatiuni terminale: allMatch(), collect(), count(), findAny(), forEach(), etc.

- operatiuni intermediare comune: filter(), distinct(), limit(), skip(), map(), flatMap(), sorted()

- alaturarea operatiunilor (pipeline)

- printarea unui Stream

- lucrul cu primitive.


10. Exceptii si asertii.


- tratarea exceptiilor:

- rolul exceptiilor

- intelegerea tipurilor de exceptii

- aruncarea unei exceptii

- utilizarea instructiunilor try-catch-finally

- prinderea mai multor exceptii si multi-catch

- recunoasterea tipurilor de exceptii: exceptii runtime, exceptii checked, erori

- apelarea metodelor care arunca exceptii: throw vs. throws

- exceptii custom

- instructiunea assert:

- activare din linia de comanda

- utilizare.


11. I/O. NIO2.


- Fisiere si Directoare:

- intelegerea organizarii fisierelor in sistemul de operare

- clasa File

- stream-uri I/O:

- fundamente: conceptul de stream, operatiuni pe stream-uri

- API-ul java.io: clase utilizate pentru creare, accesarea si manipularea stream-urilor

- lucrul cu stream-uri:

- clasele FileInputStream si FileOutputStream

- clasele FileReader si FileWriter

- clasele ObjectInputStream si ObjectOutputStream

- interactiunea cu utilizatorii: java.io.Console

- inlocuirea clasei java.io.File si interactiunilor cu aceasta utilizand NIO2:

- interfata java.nio.file.Path

- interactiunea cu Paths si Files:

- metode pentru manipulare

- manipulare cu atribute (metadata)

- imbunatatirea accesului utilizand Views

- lucrul cu directoare: parcurgere, cautare, listare continut, printare fisiere continute

- comparare I/O si NIO2.



12. JBDC.


- introducere in baze de date de date si SQL

- conectarea la baza de date:

- divere: tipuri, instalare driver

- creare URL pentru crearea conexiunii la baza de date

- creare obiect Statement

- operatiuni CRUD pe baza de date (optional tipuri de date SQL):

- interogare: SELECT – folosire ResultSet, preluarea unei coloane, parcurgere ResultSet

- creare obiect PreparedStatement

- inserare: INSERT

- modificare: UPDATE

- stergere: DELETE

- exemplu utilizare CallableStatement (pentru parte tranzactionala - optional)

- tratarea warning-urilor si erorilor

- utilizarea obiectelor de tip RowSet:

- creare si populare

- lucrul in mod online: JbdcRowSet

- lucrul in mod off-line: CachedRowSet

- alte actiuni efectuate in interactiunea cu baza de date: filtrare, join-uri.



Nota:

- programa cursului este orientativa si poate fi modificata in functie de modul de asimilare, interesul cursantilor, nivelul initial al acestora etc;

- fiecare concept va fi insotit de un exemplu practic

- cursantii vor primi un suport de curs care acopera toate aspectele discutate

- toate exemplele se vor realiza utilizand Java SE 8 in Eclipse Neon si NetBeans (pentru frameworkul Swing).




Pentru detalii despre pret sau programul urmatoarelor grupe Programare Java te rugam sa vizitezi tabelul de pe prima pagina a site-ului nostru.


Alte informatii despre cursul Programare Java:

Contact Tel/Fax: 031 102 4664 / 0720 546 972
E-Mail: office@crystalmind.ro

All Rights reserved
Crystal Mind Academy, 2006- 2017