Introduction to Programming (SWS 110)
This course introduces students to the fundamental concepts of programming, focusing on algorithmic thinking, structured program design, and basic object-oriented principles.
Course Description
SWS 110 provides students with the theoretical and practical foundations of computer programming. The course examines the evolution of programming languages, core programming concepts, and standard development techniques.
Students learn to design algorithms and implement solutions using a modern programming language such as Java or C#. Topics include control structures, arrays, methods, and structured program design, with an introduction to object-oriented programming concepts.
Emphasis is placed on problem solving and applying programming techniques to simple business and engineering scenarios.
Course Learning Outcomes
Upon successful completion of this course, students will be able to:
- Explain the need for programming languages, their evolution, and differences between the generations of programming languages.
- Design algorithmic solutions for a simple business problem using pseudo code and/or flowchart.
- Design, code and test a solution algorithm that uses different variable types, arithmetic expressions, built-in functions, logical and relational expressions.
- Decompose problems described in program specifications into smaller, more manageable components using methods/functions.
- Distinguish and compare the different program flow control mechanisms including sequential structure, control making decision and repetition structures.
- Design, code, debug, test and document basic programs using an IDE.
- Apply relevant standards and ethical use of software to writing computer programs.
- Apply the basic concepts and principles of structured programming and object oriented programming.
- Analyze and interpret scholarly work.
Course Materials
Mandatory Text
Deitel, P., & Deitel, H. Java How to Program (Late Objects) (11th ed.). Pearson, 2017.
Supplementary Texts
- Arnold, K., Gosling, J., & Holmes, D. The Java Programming Language (4th ed.). Addison-Wesley, 2005.