Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Advanced Java Programming
Tok studiów:
2017/2018
Kod:
IES-1-710-s
Wydział:
Informatyki, Elektroniki i Telekomunikacji
Poziom studiów:
Studia I stopnia
Specjalność:
-
Kierunek:
Electronics and Telecommunications
Semestr:
7
Profil kształcenia:
Ogólnoakademicki (A)
Język wykładowy:
Angielski
Forma i tryb studiów:
Stacjonarne
Strona www:
 
Osoba odpowiedzialna:
dr inż. Orzechowski Tomasz Marcin (tomeko@agh.edu.pl)
Osoby prowadzące:
dr inż. Orzechowski Tomasz Marcin (tomeko@agh.edu.pl)
Krótka charakterystyka modułu

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

Opis efektów kształcenia dla modułu zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Powiązania z EKK Sposób weryfikacji efektów kształcenia (forma zaliczeń)
Wiedza
M_W001 Student knows and understands advanced elements and mechanisms of object oriented programming language ES1A_W08 Aktywność na zajęciach,
Projekt
M_W002 Student has knowledge about software engineering process - models and stages. ES1A_W08 Projekt,
Aktywność na zajęciach
Umiejętności
M_U001 Student practically uses the knowledge of the stages of software development. ES1A_U04, ES1A_U01 Wykonanie projektu,
Projekt
M_U002 Student implements advanced Java applications using different Java packages. ES1A_U24 Projekt
Kompetencje społeczne
M_K001 Student cooperates with others in solving problem issues ES1A_K04 Projekt,
Wykonanie projektu
M_K002 Student understands necessity of continouos self-learning ES1A_K01 Projekt,
Wykonanie projektu
Matryca efektów kształcenia w odniesieniu do form zajęć
Kod EKM Student, który zaliczył moduł zajęć wie/umie/potrafi Forma zajęć
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Inne
E-learning
Wiedza
M_W001 Student knows and understands advanced elements and mechanisms of object oriented programming language + - - - - - - - - - -
M_W002 Student has knowledge about software engineering process - models and stages. + - - - - - - - - - -
Umiejętności
M_U001 Student practically uses the knowledge of the stages of software development. - - - + - - - - - - -
M_U002 Student implements advanced Java applications using different Java packages. - - - + - - - - - - -
Kompetencje społeczne
M_K001 Student cooperates with others in solving problem issues - - - + - - - - - - -
M_K002 Student understands necessity of continouos self-learning - - - + - - - - - - -
Treść modułu zajęć (program wykładów i pozostałych zajęć)
Wykład:
  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:
  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

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 wykładach 10 godz
Udział w ćwiczeniach projektowych 20 godz
Wykonanie projektu 50 godz
Pozostałe informacje
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.

Wymagania wstępne i dodatkowe:

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