Selected Topics in Software Development 1

Course Description

Development of applications with graphical user interface based on object component model. Automatic build of projects, testing and source code management.

Learning Outcomes

  1. develop graphical application based on object model
  2. apply components modeled by classes and interfaces
  3. select appropriate components with respect to needed functionality

Forms of Teaching

Lectures

Independent assignments

Laboratory

Week by Week Schedule

  1. Development of applications with graphical user interface
  2. Development of applications with graphical user interface
  3. Development of applications with graphical user interface
  4. Programming environments that automate parts of program construction processes (e.g., automated builds)
  5. Program testing, performance analysis, and optimization, Tools for software version control, Testing tools including static and dynamic analysis tools
  6. Abstract data types and their implementation (stacks, queues, priority queues, sets, maps), Linked lists, Hash tables, including strategies for avoiding and resolving collisions, Regular expressions
  7. Abstract data types and their implementation (stacks, queues, priority queues, sets, maps), Linked lists, Hash tables, including strategies for avoiding and resolving collisions
  8. Midterm exam
  9. Development of applications with graphical user interface
  10. Thread management and context switching, Synchronization and communication, Mutual-exclusion, Semaphores and monitors, Multiprocessor issues
  11. Thread management and context switching, Synchronization and communication, Mutual-exclusion, Semaphores and monitors, Multiprocessor issues, Other common features of virtual machines, such as class loading, threads, and security
  12. Block ciphers and modes of operation, Message integrity and hashing, Public Key Infrastructure support for digital signature and encryption and its challenges
  13. Events and event handlers, Externally-generated events and program-generated events, Separation of model, view, and controller, Canonical uses of event-driven programming (GUIs, mobile devices, robots, servers), Defining event handlers/listeners
  14. Events and event handlers, Externally-generated events and program-generated events, Separation of model, view, and controller, Canonical uses of event-driven programming (GUIs, mobile devices, robots, servers), Defining event handlers/listeners
  15. Final exam

Study Programmes

University undergraduate
[FER3-EN] Computing - study
Elective Courses (5. semester)
[FER3-EN] Electrical Engineering and Information Technology - study
Elective Courses (5. semester)

Literature

(.), Marko Čupić. Programiranje u Javi. Dostupno na webu.,

For students

General

ID 210656
  Winter semester
5 ECTS
L0 English Level
L1 e-Learning
45 Lectures
0 Seminar
0 Exercises
15 Laboratory exercises
0 Project laboratory

Grading System

Excellent
Very Good
Good
Acceptable