Reference no: EM133071118
A/617/2265 Programming Foundations - OTHM Level 4 Diploma in Information Technology
Aim: The aim of this unit is to give learners a basic understanding of Object-oriented programming languages and how to produce effective code. It also enables technical staff who are not programmers to gain a perspective of software development. The course is language neutral and teaches general concepts.
Learning Outcome 1: Understand the basic principles of algorithms.
Explain the concept of an algorithm.
Describe common algorithmic techniques and solutions.
Create a flowchart from an algorithm.
Learning Outcome 2: Understand the basic principles of computer programming.
Describe computer programming principles.
Summarise the historical development of computer programming.
Explain major components of a programming language.
Compare the strengths and limitations of modern computer programming languages.
Learning Outcome 3: Understand the basics of an Object- oriented Programming language.
Explain the benefits of object oriented design.
Evaluate when to use Object-oriented design methodology.
Explain how objects are used in Object-oriented programming.
Explain the steps in creating an Object-oriented program.
Explain how to compile a program and debug codes.
Learning Outcome 4: Be able to code and compile software using a choice of object-oriented Programming language.
Design object oriented programs involving multiple objects.
Explain the impact of style on developing and maintaining programs.
Develop programs using best practice.
Implement, test and debug solutions.
LO1 • History of Algorithms.
• Definition of algorithms
o Input
o Output
o Definiteness
o Finiteness
o Effectiveness.
• Brute Force.
• Greedy Algorithms: "take what you can get now" strategy.
• Divide-and-Conquer.
• Decrease-and-Conquer.
• Dynamic Programming.
• Transform-and-Conquer.
• Backtracking and branch-and-bound: generate and test methods.
• Flowchart symbols.
LO2 • Definition, principles of programming
o Abstraction
o KISS
o Open/Closed entities
o Coupling
o Cohesion.
• Programming history
o Charles Babbage's Analytical Engine
o the concept of storing data in machine-readable form
o low & high-level languages (COBOL, FORTRAN, and Lisp)
o Moore's law
o Procedural
o OO
o Languages (COBOL, FORTRAN, Java, JavaScript, C#, C++, Python, PHP, Ruby on Rails)
• The main () Function
• The #include and #define directives
• The Variable Definition
• The Function Prototype
• Program Statements
• The Function Definition
• Program Comments
• SQL, Java, JavaScript, C#, C++, Python, PHP, Ruby on Rails.
• Compare; use, error handling, ease of use.
LO3 • Code Reuse and Recycling
• Encapsulation
• Design Benefits
• Software Maintenance
• Classes and objects
• Arrays
• Lists
• Stacks
• Queues
• Trees
• Intermediate representations and their purpose.
• Arrays (1- and 2-dimensions)
• Implementation of queues
• Stacks and lists
• Debugger
• Breakpoints
• commands
• Use of IDEs
• data structure display/verification
• Use of debugging tools.
LO4 • Design using SQL, Java, JavaScript, C#, C++, Python, PHP, Ruby on Rails.
• Use Debugger, breakpoints, commands in the chosen language, C ++/JAVA/Python/or similar an OOPL.
• Code writing standards, comments, documentation
• Use of IDEs, test plan
Attachment:- OTHM Level 4 Diploma in Information Technology.rar