Software design introduction in relation with Object Oriented
programming and Java environment. The emphasis will be placed on
those points that characterize modern application design: object-oriented
design, parallel processing, MVC pattern, event-driven architectures,
interaction with the user and event management, graphical humanmachine interfaces (GUIs), functional design, interaction with remote
resources via Internet sockets. The Java language and environment is
introduced and used to practice with the theoretical knowledge of
software design.