Selected Topics in Software Development 1

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
Computing (study)
Elective Courses (5. semester)
Electrical Engineering and Information Technology (study)
Elective Courses (5. semester)

Literature

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

General

ID 183370
  Winter semester
5 ECTS
L3 English Level
L1 e-Learning
45 Lectures
0 Exercises
6 Laboratory exercises
0 Project laboratory