PředmětyPředměty(verze: 855)
Předmět, akademický rok 2019/2020
  
Objektové programování v Javě - B500002
Anglický název: Object-oriented Programming in Java
Zajišťuje: ČVUT v Praze, Fakulta informačních technologií (500)
Platnost: od 2019
Semestr: letní
Body: letní s.:7
E-Kredity: letní s.:7
Způsob provedení zkoušky: letní s.:
Rozsah, examinace: letní s.:2/5 Z+Zk [hodiny/týden]
Počet míst: neurčen / neurčen (neurčen)
Minimální obsazenost: neomezen
Jazyk výuky: čeština
Způsob výuky: prezenční
Úroveň:  
Pro druh: bakalářské
Poznámka: povolen pro zápis po webu
Garant: Balík Miroslav Ing. Ph.D.
Záměnnost : N500003
Termíny zkoušek   Rozvrh   
Anotace -
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Předmět Programování v Javě uvede studenty do objektově orientovaného programování v programovacím jazyku Java. Kromě samotného jazyka budou probrány základní knihovny pro práci se soubory, proudy, sítěmi, kolekcemi, databázemi a vícevláknové programování.
Výstupy studia předmětu -
Poslední úprava: Kubová Petra Ing. (02.01.2018)

Student bude umět:

vytvořit program v programovacím jazyku Java s využitím objektového paradigmatu

budou mít přehled v knihovnách pro práci se soubory, proudy, sítěmi, kolekcemi, databázemi a vícevláknové programování

budou znát přínosy verzí Java 5 a Java 7 s ohledem na změny v jazyku a tyto výhody budou aktivně využívat

Literatura -
Poslední úprava: Svozil Daniel doc. Mgr. Ph.D. (26.03.2019)

Z: B. Eckel: Thinking in Java, 4th ed. 2006

Z: R. Pecinovský: Java 9 - Kompletní příručka jazyka, Grada 2018

Z: P. Herout: Učebnice jazyka Java - 5. vydání, Kopp 2010

Z: H. Schildt: Java 8, Computer Press 2016

D: R. Pecinovský, A. Havelka: JUnit 5 - Jednotkové testování na platformě Java, Grada 2018

Studijní opory -
Poslední úprava: Kubová Petra Ing. (02.01.2018)

https://edux.fit.cvut.cz/courses/BI-OPJ/

(nutné přihlášení)

Sylabus -
Poslední úprava: Kubová Petra Ing. (02.01.2018)

1. Primitivní datové typy a operace s nimi, úvod do OOP.

2. OOP, třídy, objekty, konstruktory, popis API základních tříd a jednoho rozhraní.

3. Výjimky, jejich šíření a ošetření, Autoclosable v Javě 7 a vylepšení příkazu try, příkaz assert, polymorfismus a RTTI ( Run Time Type Identification ).

4. Pole a API třídy java.util.Arrays, kolekce - taxonomie, implementace, časové složitosti operací, vhodná nasazení, související API, utility.

5. Vstup, výstup: základní pricipy pro ukládání dat, znakové x bytové proudy, vstupní x výstupní proudy, třída File, proudění rourou, serializace a deserializace objektů, komprese dat, třída RandomAccessFile, knihovny java.io a java.nio.

6. Vlákna a procesy, jejich interakce, synchronizace. Programování vícevláknových aplikací na vícejádrových procesorech.

7. Síť a java.net, Java a Internet, základní pojmy (IP, TCP, URL, port DNS), socketové x datagramové spojení, klient - server architektura.

8. Knihovny pro práci s GUI, AWT, SWING, SWT, události: zásady návrhu grafického uživatelského rozhraní, knihovna java.awt, správci rozvržení, metrika, kontejnery a komponenty, Graphics, Font a Color. Delegační model zpracování událostí, Listenery a Adaptery, zdroje událostí, obslužné metody, Focus a MVC,

9. Swing, aplety a obrázky: řídící komponenty, informační komponenty, kontejnery, aplety, životní cyklus apletu, včlenění apletu do HTML stránky, předávání parametrů apletům, komunikace apletů mezi sebou, obrázky, vykreslení, transformace.

10. Databáze: připojení k databázím, typy připojení, JDBC, rozhraní Connection, Statement a ResultSet, vybrané příkazy SQL, datové typy SQL vs. datové typy Javy. Návrhový vzor DAO.

11. RMI = Remote Method Invocation, vnitřní a vnořené třídy, lokální třídy.

12. Odlišné vlastnosti Javy 5, Javy 7 a starších verzí, pokročilé využití Enum, generika, použití, definice vlastních generických tříd a metod.

13. Dokumentace, JAR, logování, regulární výrazy a jejich využití při vyhledávání, JNI.

Studijní prerekvizity -
Poslední úprava: Kubová Petra Ing. (02.01.2018)

žádné

Podmínky zakončení předmětu
Poslední úprava: Svozil Daniel doc. Mgr. Ph.D. (07.02.2018)

Pro zı́skánı́ zápočtu je potřeba dostatek bodů ze semestrální práce a ze zápočtových testů. Zkouška se skládá z povinné pı́semné části a z volitelné ústnı́ části.

Zátěž studenta
Činnost Kredity Hodiny
Účast na přednáškách 1 28
Příprava na přednášky, semináře, laboratoře, exkurzi nebo praxi 2 56
Příprava na zkoušku a její absolvování 1,5 42
Účast na seminářích 2,5 70
7 / 7 196 / 196
Hodnocení studenta
Forma Váha
Protokoly z laboratorních úloh (exkurzí nebo praxí) 20
Zkouškový test 60
Průběžné a zápočtové testy 20

 
VŠCHT Praha