logo
Karta przedmiotu
logo

Programowanie w języku Java

Podstawowe informacje o zajęciach

Cykl kształcenia: 2024/2025

Nazwa jednostki prowadzącej studia: Wydział Elektrotechniki i Informatyki

Nazwa kierunku studiów: Informatyka

Obszar kształcenia: nauki techniczne

Profil studiów: ogólnoakademicki

Poziom studiów: pierwszego stopnia

Forma studiów: niestacjonarne

Specjalności na kierunku: AA - inżynieria systemów informatycznych, AI - Sztuczna inteligencja, TT - informatyka w przedsiębiorstwie, Z - inżynieria systemów złożonych

Tytuł otrzymywany po ukończeniu studiów: inżynier

Nazwa jednostki prowadzącej zajęcia: Zakład Elektrodynamiki i Systemów Elektromaszynowych

Kod zajęć: 2947

Status zajęć: obowiązkowy dla programu AI - Sztuczna inteligencja

Układ zajęć w planie studiów: sem: 2 / W15 L10 / 3 ECTS / Z

Język wykładowy: polski

Imię i nazwisko koordynatora 1: dr hab. inż. prof. PRz Jan Prokop

Terminy konsultacji koordynatora: środa 11:00 12:00 B101

Imię i nazwisko koordynatora 2: dr inż. Paweł Górka

Cel kształcenia i wykaz literatury

Główny cel kształcenia: Uzyskanie podstawowej wiedzy z zakresu programowania w języku Java

Ogólne informacje o zajęciach: Moduł poświęcony jest prezentacji podstaw programowania obiektowego w języku Java. Omawiany jest proces tworzenia aplikacji desktopowych i mobilnych, serwletów, EJB. Studenci zapoznają się ze stosowaniem standardowych bibliotek AWT, Swing, JavaFX oraz Java Android. Studenci poznają techniki programowania w wybranym środowisku programistycznym. Realizacja celu kształcenia odbywa się w czasie wykładów i ćwiczeń laboratoryjnych.

Materiały dydaktyczne: http://java.prz.edu.pl

Wykaz literatury, wymaganej do zaliczenia zajęć
Literatura wykorzystywana podczas zajęć wykładowych
1 Oracle Java Documentation https://docs.oracle.com/en/java/.
2 C. Horstmann, G. Cornell Java 2. Podstawy Wydawnictwo Helion, Gliwice.
3 C. Horstmann, G. Cornell Java 2. Techniki zaawansowane Wydawnictwo Helion, Gliwice.
4 Java JavaFX https://openjfx.io/.
5 Google Java Android https://developer.android.com/.
6 Oracle Java EE https://www.oracle.com/java/technologies/javaee/javaeetechnologies.html.
7 Java Spring Java Spring https://spring.io/.
8 Hibernate Hibernate https://hibernate.org/.
Literatura wykorzystywana podczas zajęć ćwiczeniowych/laboratoryjnych/innych
1 Oracle Tutorial http://docs.oracle.com/javase/tutorial/.
2 Oracle Tutorial https://docs.oracle.com/en/java/.
3 W3Schools Java https://www.w3schools.com/java/.
4 JavaFX JavaFX https://openjfx.io/.
5 Java Android Java Android https://developer.android.com/.
6 Java EE Java EE https://javaee.github.io/tutorial/.
7 Java Spring Java Spring https://spring.io/.
8 Hibernate Hibernate https://hibernate.org/.

Wymagania wstępne w kategorii wiedzy/umiejętności/kompetencji społecznych

Wymagania formalne: Student powinien znać podstawowe zagadnienia z zakresu programowania zorientowanego obiektowo

Wymagania wstępne w kategorii Wiedzy: Student powinien mieć wiedzę z zakresu podstaw programowania, języka C++, technologii sieci Web,

Wymagania wstępne w kategorii Umiejętności: Student potrafi stworzyć projekt w wybranym środowisku programistycznym.

Wymagania wstępne w kategorii Kompetencji społecznych: Student powinien umieć pracować indywidualnie, jak i w zespole programistów

Efekty kształcenia dla zajęć

MEK Student, który zaliczył zajęcia Formy zajęć/metody dydaktyczne prowadzące do osiągnięcia danego efektu kształcenia Metody weryfikacji każdego z wymienionych efektów kształcenia Związki z KEK Związki z PRK
01 Analizuje gotowy kod programu wykład, laboratorium zaliczenie cz. pisemna, prezentacja projektu K_W04+
K_U08+
K_U13+
P6S_UW
P6S_WG
02 Programuje proste aplikacje klienckie z użyciem technik programowania obiektowego wykład, laboratorium test pisemny, obserwacja wykonawstwa K_W04+
K_U08+
K_U13+
P6S_UW
P6S_WG
03 Programuje proste aplikacje strony serwera z użyciem techniki programowania obiektowego wykład, laboratorium test pisemny, obserwacja wykonawstwa K_W04+
K_U08+
K_U13+
P6S_UW
P6S_WG

Uwaga: W zależności od sytuacji epidemicznej, jeżeli nie będzie możliwości weryfikacji osiągniętych efektów uczenia się określonych w programie studiów w sposób stacjonarny w szczególności zaliczenia i egzaminy kończące określone zajęcia będą mogły się odbywać przy użyciu środków komunikacji elektronicznej (w sposób zdalny).

Treści kształcenia dla zajęć

Sem. TK Treści kształcenia Realizowane na MEK
2 TK01 Technologia Java. Platforma JAVA - architektura, podstawowe pojęcia (JVM, Java API, JDK, Java SE, Java EE). Podstawy języka JAVA, podstawowe cechy i pojęcia. Podstawy programowania - słowa kluczowe, typy danych, literały, operatory, deklaracje zmiennych, podstawowe instrukcje programowania. W01, L01 MEK01 MEK02
2 TK02 Java - programowanie obiektowe (OOP). Dziedziczenie. Klasy, pola danych, metody, obiekty. Pakiety, moduły. Konwersje typów. Obsługa wyjątków. Kolekcje. Programowanie wielowątkowe, zarządzanie wątkami, synchronizacja wątków. Podstawy bibliotek AWT i Swing, hierarchia klas. Budowa graficznego interfejsu użytkownika (GUI), podstawy, kontenery i komponenty. Techniki zarządzania układem komponentów bibliotek AWT i Swing. W02, L01 MEK01 MEK02
2 TK03 Typy sparametryzowane. Klasy, metody, interfejsy sparametryzowane Kolekcje. Typy wyliczeniowe. Java - Interfejsy. Biblioteki AWT, Swing - Obsługa zdarzeń. Podstawy, kategorie zdarzeń. Przykłady obsługi zdarzeń, zdarzenia od komponentów, myszy i klawiatury. W03, L01 MEK01 MEK02
2 TK04 Java - wyrażenia Lambda. Referencje do metod. JavaFX, budowa aplikacji. Klasy Application, Stage, Scene. JavaFX – budowa GUI. Layouts, Klasy GridPane, BorderPane, FlowPane.Java FX – Obsługa zdarzeń. Budowa aplikacji w architekturze MVC. Widok - FXML, CSS. Klasy WebView, WebEngine. Aplikacje hybrydowe. W04, L02 MEK01 MEK02
2 TK05 Java Stream API. Platformy Java ME, Embedded. Java Android App. Android SDK. Klasy Activity, View, Intents, Service, Content. Java Android - Budowa GUI, obsługa zdarzeń. Obsługa gestów. Klasa WebView. W05, L03 MEK01 MEK03
2 TK06 Java EE/Jakarta EE - Web Applications. Serwlety. Technologie JSP, JSF, JavaBeans. Aplikacje MVC. Java Web Services, JAX-RS. Java EE – Enterprise App. Kontener EJB. EJB - Local Client, Remote Client. Aplikacje klasy Enterprise w architekturze MVC. EJB - Java Transactions API (JTA). EJB Security - Uwierzytelnianie, Autoryzacja. W06, L04 MEK01 MEK03
2 TK07 Java EE – Framework Spring/Spring Boot. Spring MVC Thymeleaf. Spring RESTful WS. Spring Microservices, Spring Security Web App. W07, L05 MEK01 MEK03
2 TK08 Java SE&EE, przetwarzanie danych. Java i XML - SAX, StAX, DOM, XSLT. Java - JSON. Technologia JAXB. Java SE&EE, bazy danych. JDBC, DataSource. Java Persistence, EntityManager. Spring + Hibernate. W08, L05 MEK01 MEK03

Nakład pracy studenta

Forma zajęć Praca przed zajęciami Udział w zajęciach Praca po zajęciach
Wykład (sem. 2) Godziny kontaktowe: 15.00 godz./sem.
Studiowanie zalecanej literatury: 10.00 godz./sem.
Laboratorium (sem. 2) Godziny kontaktowe: 10.00 godz./sem.
Inne: 38.00 godz./sem.
Konsultacje (sem. 2)
Zaliczenie (sem. 2) Zaliczenie pisemne: 1.00 godz./sem.
Inne: 1.00 godz./sem.

Sposób wystawiania ocen składowych zajęć i oceny końcowej

Forma zajęć Sposób wystawiania oceny podsumowującej
Wykład Test lub zaliczenie ustne
Laboratorium Projekt praktyczny - prezentacja
Ocena końcowa Ocena końcowa z przedmiotu obliczana według wzoru 0.6 OW + 0.4 OL

Przykładowe zadania

Wymagane podczas egzaminu/zaliczenia
(-)

Realizowane podczas zajęć ćwiczeniowych/laboratoryjnych/projektowych
(-)

Inne
(-)

Czy podczas egzaminu/zaliczenia student ma możliwość korzystania z materiałów pomocniczych : nie

Treści zajęć powiazane są z prowadzonymi badaniami naukowymi: nie