Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Advanced Java Programming
Tok studiów:
2019/2020
Kod:
IETE-1-710-s
Wydział:
Informatyki, Elektroniki i Telekomunikacji
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Electronics and Telecommunications
Semestr:
7
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Angielski
Forma studiów:
Stacjonarne
Strona www:
 
Prowadzący moduł:
dr inż. Orzechowski Tomasz Marcin (tomeko@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

This module is intended to provide students who has some computing experience in Java programming.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Student has knowledge about software engineering process - models and stages. ETE1A_W06 Aktywność na zajęciach,
Projekt
M_W002 Student knows and understands advanced elements and mechanisms of object oriented programming language ETE1A_W06 Projekt,
Aktywność na zajęciach
Umiejętności: potrafi
M_U001 Student implements advanced Java applications using different Java packages. ETE1A_U15 Projekt
M_U002 Student practically uses the knowledge of the stages of software development. ETE1A_U02, ETE1A_U04 Projekt,
Wykonanie projektu
Kompetencje społeczne: jest gotów do
M_K001 Student cooperates with others in solving problem issues ETE1A_K04 Wykonanie projektu,
Projekt
M_K002 Student understands necessity of continouos self-learning ETE1A_K01 Wykonanie projektu,
Projekt
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
30 10 0 0 20 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Student has knowledge about software engineering process - models and stages. + - - - - - - - - - -
M_W002 Student knows and understands advanced elements and mechanisms of object oriented programming language + - - - - - - - - - -
Umiejętności
M_U001 Student implements advanced Java applications using different Java packages. - - - + - - - - - - -
M_U002 Student practically uses the knowledge of the stages of software development. - - - + - - - - - - -
Kompetencje społeczne
M_K001 Student cooperates with others in solving problem issues - - - + - - - - - - -
M_K002 Student understands necessity of continouos self-learning - - - + - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 80 godz
Punkty ECTS za moduł 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 30 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 50 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (10h):
  1. Organizing classes (1h)

    - discussing the rules and validation
    - important information about individual projects and terms

  2. Software Engineering  –  Software Process and Software Process Models (1h)

    Presentation of different Software Development Life Cycle (SDLC):
    - Software development lifecycle methodologies: Agile, DevOps, Iterative, Lean, Spiral & Waterfall
    - 4 important software process activities: Software specification, Software design and implementation, Software verification and validation & Software evolution

  3. GUI development with NetBeans (4h)

    - NetBeans – Installation and Configuration
    - SWING Components in Practise
 in NetBeans
    (JButtons, Images, Look&Feel, Presenting HTML Content)
    - Introduction to JavaFX

  4. Sequential and Associative Collections (1h)

    - Presentation of differencies and similaritites beween Sequential and Associative Collections
    - Collection, List and Set interfaces
    - The use of ArrayList, HashSet, TreeSet
    - Map, TreeMap and HasMap in practise
    - Sorting elements in Collections

  5. Distributed Programming (2h)

    - JavaIDL vs RMI
    - Introduction to JADE

  6. The Java 8 Advantages (1h)

    - The use of Lambda Expressions 
(Syntax, Scope, Method references, Functional Interfaces)
    - The use of Default Methods
    - Streams

Ćwiczenia projektowe (20h):
  1. Selection the topic to be implemented

    - detailed discussion about chosen task.
    - the work plan and the relevant elements to be evaluated.

    Possibilities:
    1. Development of a graphical application using Swing or JavaFX, allowing to process data from the Internet (parsing) and present it, using selected components.
    2. Development of a distributed application based on RMI or JavaIDL
    3. Development of a distributed application using the JADE agent platform.

  2. Software specification – the analysis stage

    student’s presentation:
    - understanding the essence of the problem;
    - analysis of selected tools

  3. Software design

    student’s presentation:
    - system structure,
    - components and relationships between components,
    - interfaces

  4. Software implementation phase and validation

    - demonstration of alpha and beta versions of the application
    - testing the application with an intention of finding bugs
    - improved the application performance

  5. Final evaluation

    - final evaluation of practical work

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia projektowe: Studenci wykonują zadany projekt samodzielnie, bez większej ingerencji prowadzącego. Ma to wykształcić poczucie odpowiedzialności za pracę w grupie oraz odpowiedzialności za podejmowane decyzje.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia projektowe:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują prace praktyczne mające na celu uzyskanie kompetencji zakładanych przez syllabus. Ocenie podlega sposób wykonania projektu oraz efekt końcowy.
Sposób obliczania oceny końcowej:

Following elements are considered when the total grate is calculated: the analysis of the received programming problem, correct presented project of the application, presentations of alpha and beta versions of the application, validation of the application by carrying out appropriate tests.

Positive evaluation can only be obtained when the final result is a properly functioning application that is accompanied by appropriate documentation.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Students are expected to have previous programming experience in Java Programming.

Zalecana literatura i pomoce naukowe:

1. Cay S. Horstmann and Gary Cornell, Core Java II – Advanced Features, ISBN-10: 0134177290
2. Online documentation: Java 8 API: https://docs.oracle.com/javase/8/docs/api
3. Java Tutorial: https://docs.oracle.com/javase/tutorial

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Nie podano dodatkowych publikacji

Informacje dodatkowe:

Brak