The  objective  of  the  course  is  to  teach  the  fundamental  principles  of programming. We will use an object-oriented approach and the student will learn how objects can be programmed to "speak" and "cooperate" to solve a problem. Students will learn how to solve problems with good programs. Hence  not  only  how  to  write  programs  but  also  how  to  design and implement  effective  solutions.  The  learning  will  be  based  on  examples, from very simple ones to more complex.

We will use the Java programming language and an integrated development environment, so the goal is to train the student capability to develop java applications in this environment.  The final objective for the student is to acquire the ability to translate a set of functional requirements into a graphical and interactive Java-based application.