Paweł Rzechonek

Zainteresowania zawodowe: programowanie (C++, Java, C#, F#), technologie webowe, szeroko rozumiana algorytmika, metematyka klasyczna.

Java
technologie zaawansowane

data ostatniej modyfikacji dokumentu

Data ostatniej modyfikacji tego dokumentu (java.phtml) to niedziela 4 maja 2025 roku (godzina 20:47).

ogłoszenia
27 lutego 2025 r.
pierwsze zajęcia laboratoryjne:
Pierwsze zajęcia laboratoryjne odbędą się w czwartek 6 marca 2025 r.

27 lutego 2025 r.
punkt informacyjny:
W tym miejscu będą się pojawiać ważne ogłoszenia dotyczące organizacji wszystkich zajęć związanych z tym przedmiotem. Proszę czytać te ogłosznia na bieżąco.
terminarz
wykład:
czwartek 16-18, s.139

laboratoria:
czwartek 18-20, s.110
licznik wejść na stronę

1 dzisiaj
15 w obecnym miesiącu
94 w bieżącym roku
94 od powstania strony

o przedmiocie

Java - technologie zaawansowane

Java to współczesny obiektowy język programowania stworzony przez Jamesa Goslinga z firmy Sun Microsystems. Od momentu powstania w połowie lat 90-tych XX wieku przeżył on dynamiczny rozwój a zainteresowanie nim nie maleje. Język Java przyciągnął do dziś wiele milionów programistów. Znajduje zastosowanie w każdej ważniejszej gałęzi przemysłu informatycznego i jest obecny w różnego rodzaju urządzeniach, komputerach i sieciach. Popularność Javy wynika przede wszystkim z przenośności programów i niezależności od konkretnej platwormy sprzętowej, a co za tym idzie, ma zastosowanie w Internecie oraz ogólnie w aplikacjach sieciowych. Jego podstawowe koncepcje zostały przejęte z języka Smalltalk (maszyna wirtualna, odśmiecanie pamięci) oraz z języka C++ (znaczna część składni i słów kluczowych).

Zajęcia te należy traktować jako kontynuację kursu Javy z wcześniejszego semestru. Celem tych zajęć jest poznanie wybranych popularnych obecnie technologii używanych przez zawodowych programistów Javy.

Wymagane przygotowanie
  •   Umiejętność programowania obiektowego w Javie.
  •   Umiejętność czytania dokumentacji technicznej w języku angielskim.
Cel kursu
  •   Poznanie najnowszych elementów wprowadzonych do języka Java.
  •   Poznanie różnorodnych technik programistycznych stosowanych w Javie.
  •   Praktyczne zastosowanie najważniejszych technologii Javowych.
  •   Poznanie obszernych fragmentów pakietów standardowych Javy SE i EE.

literatura

Literatura podstawowa
  •   Cay S. Horstmann: Java 9. Przewodnik doświadczonego programisty. Wydanie 2. Wydawnictwo HELION, Gliwice 2018.
  •   Cay S. Horstmann: Java. Podstawy. Wydanie 10. Wydawnictwo HELION, Gliwice 2016.
  •   Cay S. Horstmann: Java. Techniki zaawansowane. Wydanie 10. Wydawnictwo HELION, Gliwice 2017.
  •   Herbert Schildt: Java. Przewodnik dla początkujących. Wydanie 7. Wydawnictwo HELION, Gliwice 2018.
  •   Herbert Schildt: Java. Kompendium programisty. Wydanie 10. Wydawnictwo HELION, Gliwice 2018.
Literatura uzupełniająca
  •   Krzysztof Barteczko: Java. Od podstaw do technologii. Tom 1 i 2. Wydawnictwo MIKOM, Warszawa 2004.
  •   Elliotte Rusty Harold: Java. Programowanie sieciowe. Wydawnictwo RM, Warszawa 2001.
  •   Michał Grochala: Java. Aplikacje bazodanowe. Wydanie 2. Wydawnictwo HELION, Gliwice 2001.
  •   Christian Bauer, Gavin King, Gary Gregory: Java Persistence. Programowanie aplikacji bazodanowych w Hibernate. Wydanie 2. Wydawnictwo HELION, Gliwice 2016.
  •   Gary Mak, Daniel Rubio, Josh Long: Spring. Receptury. Wydawnictwo HELION, Gliwice 2014.
Literatura elektroniczna

laboratorium

Zasady zaliczenia przedmiotu
Ogólnie:
W semestrze będzie opublikowanych (na tej stronie) kilkanaście prostych zadań do zaprogramowania. Za każde samodzielnie zaprogramowane zadanie i oddane w terminie można będzie dostać do 10 punktów (chociaż zadania będą różnej trudności).
Terminy:
Zadania do zaprogramowania będą ogłaszane w tygodniu poprzedzającym termin ich realizacji. Zadania należy oddawać w wyznaczonym terminie. Spóźnienia nie będą tolerowane, za wyjątkiem uzasadnionych sytuacji życiowych: choroba potwierdzona zwolnieniem lekarskim, wezwanie do Sądu, itp.
Prezentacje:
Programy należy prezentować osobiście w czasie pracowni (proszę nie wysyłać programów pocztą elektroniczną, ani nie przekazywać ich poprzez innych studentów). W trakcie prezentacji programu trzeba się liczyć z pytamiami dotyczącymi zadania: metoda rozwiązania, zastosowane konstrukcje językowe, wykorzystane technologie, itp.
Rozwiązania:
Kody źródłowe własnych programów należy zapisywać na SKOS, ponieważ tylko wtedy rozwiązania zadań będą podlegały weryfikacji autorskiej i ocenie.
Oceny:
Aby zaliczyć laboratorium na ocenę dostateczną trzeba do końca semestru zdobyć 50% z wszystkich możliwych do uzyskania punktów; na ocenę bardzo dobrą trzeba będzie zgromadzić 90% punktów; oceny pośrednie pozostają w liniowej zależności od przedstawionych wymagań granicznych.
Zadania laboratoryjne
  1. akwarium (JavaBeans)
  2. rozkład liczby całkowitej na czynniki pierwsze (RMI)
  3. największy wspólny dzielnik (URL)
  4. aplikacje typu klient-serwer: data / echo/ tocjent / zgadywanie liczby (TCP)
  5. Apache Tomcat: instalacja Apache Tomcat / bieżąca data i godzina / zawartość pliku (serwer aplikacji javowych)
  6. geometria: kula / trójkąt (servlets)
  7. scriptlety: NDW / trójkąt Pascala / wiek osoby (JSP)
  8. konwersacja: kalkulator / zakupy (cookies vs sessions)
  9. konwersacja: kalkulator / zakupy (cookies vs sessions)

wykłady

JavaBeans (27.02.2025)

JavaEE - servlets

JavaEE - cookies and sessions

JavaEE - JSP

materiały uzupełniające

Apache Tomcat Server Tutorial for Beginners (www.youtube.com)

... (www)