Course Objectives: |
The purpose of this course is to help the student learn the general principles of object-oriented programming, including how to design, implement, document, test, and debug computer programs. The course is based on the JAVA programming language. |
Course Content: |
An introduction to the process of program design and analysis for students who have no prior programming experience. Topics to be covered include basic data types and their operators, expressions and assignment statements, I/O, control structures (selection, loops), classes (including methods and fields), arrays, functions and procedures, files. |
Course Notes / Textbooks: |
Lecture Notes and additional references books.
1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms/ author : Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. The MIT Press.
2. Panos Louridas. (2020). Algorithms. The MIT Press.
3. Flejoles, R. P. (2019). Introduction To Algorithms. Arcler Press. |
References: |
1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to algorithms/ author : Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. The MIT Press.
2. Panos Louridas. (2020). Algorithms. The MIT Press.
3. Flejoles, R. P. (2019). Introduction To Algorithms. Arcler Press. |
|
Program Outcomes |
Level of Contribution |
1) |
Adequate knowledge in mathematics, science, and related engineering discipline; ability to use theoretical and practical knowledge in these areas in complex engineering problems. |
1 |
2) |
An ability to detect, identify, formulate, and solve complex engineering problems; the ability to select and apply appropriate analysis and modelling methods for this purpose. |
2 |
3) |
An ability to design a complex system, process, device, or product to meet specific requirements under realistic constraints and conditions; the ability to apply modern design methods for this purpose. |
1 |
4) |
An ability to develop, select and use modern techniques and tools necessary for the analysis and solution of complex problems and an ability to use information technologies effectively inengineering applications. |
2 |
5) |
Ability to design, conduct experiments, collect data, analyse, and interpret results to investigate complex engineering problems or discipline-specific research topics. |
1 |
6) |
Ability to work effectively in disciplinary and multidisciplinary teams; ability to work individually. |
|
7) |
Effective verbal and written communication skills; knowledge of at least one foreign language; ability to write effective reports and understand written reports, to prepare design and production reports, to make effective presentations, to give and receive clear and understandable instructions. |
|
8) |
Awareness of the necessity of lifelong learning; ability to access information, follow developments in science and technology and ability to renew themselves. |
|
9) |
Behaving in accordance with ethical principles, awareness of professional and ethical responsibilities; knowledge of standards used in engineering applications. |
|
10) |
Knowledge about business applications such as project management, risk management and change management; awareness of entrepreneurship, innovation and sustainable development. |
1 |
11) |
Knowledge about universal and social effects of engineering applications on health, environment and safety; awareness about legal consequences of engineering applications. |
|