← Computer Studies / 3 Software development
3.1 Computer Programming Concepts
Computer Studies · Grade 10 · 14 lessons in the design
What this covers
- Programming terminology
- Source code, machine code, and the tools that translate: assembler, compiler, interpreter
- The Integrated Development Environment and the software development lifecycle
- Low-level and high-level languages
- The evolution of programming languages, in generations
- Programming paradigms
- Simulating a low-level language
What you will be able to do
- explain the terminologies used in programming languages
- describe the evolution of programming languages in software development
- categorise programming languages according to the paradigms
- create simple instructions to simulate low-level programming languages
- acknowledge the evolution of programming languages in software development
Key questions
“Why are programming languages important in computing?”
“How are programming languages executed?”
Lessons
The titles are open to everyone. Reading a lesson needs an account — sign in or create one.
-
Programming terminology and the levels of language
40 min · 1 practice tasks · quizWhat programming is; the vocabulary of source code, machine code and translators; and the difference between low-level and high-level languages, with how programs are executed.
-
The evolution of programming languages, and paradigms
40 min · 1 practice tasks · quizThe five generations of languages, the main programming paradigms, and a hands-on simulation of low-level instructions.
-
A program versus a programming language
40 min · 1 practice tasks · quizM-Pesa is a program people run. Java is a language people write in. Why that distinction matters in Kenya.
-
Source code and machine code
40 min · 1 practice tasks · quizWhat the programmer writes, what the CPU runs, and the object code in between.
-
Syntax: the grammar of a language
40 min · 1 practice tasks · quizSyntax is exact rules. A syntax error stops translation. A logic error runs but is wrong.
-
Compilers: translate the whole program first
40 min · 1 practice tasks · quizA compiler translates all of the source into a file, reports errors up front, then the file runs on its own.
-
Interpreters: translate and run together
40 min · 1 practice tasks · quizAn interpreter translates and executes one line at a time. Python in the lab is this model.
-
The IDE and the software development lifecycle
40 min · 1 practice tasks · quizAn IDE packs editor, translator and debugger. The SDLC is the bigger cycle that tool sits inside.
-
Algorithms: the thinking before a language
40 min · 1 practice tasks · quizAn algorithm is a finite, definite set of steps. A recipe is one. Code is how those steps are spelled later.
-
Pseudocode: false code anyone can read
40 min · 1 practice tasks · quizStructured English that looks like a program but is not Python or C. Keywords: START, INPUT, OUTPUT, END.
-
Flowcharts: logic as a picture
40 min · 1 practice tasks · quizStandard symbols: oval, parallelogram, rectangle, diamond, arrows. A kiosk-change flowchart.
-
High-level languages and portability
40 min · 1 practice tasks · quizWhy almost all Kenyan software is high-level: programmer time, readability and moving between machines.
-
Paradigms in the apps you already use
40 min · 1 practice tasks · quizA paradigm is a style. M-Pesa taps are event-driven. A fee script is procedural. Java likes objects.
-
Simulating low-level instructions
40 min · 1 practice tasks · quizAct as a tiny CPU: LOAD, ADD, SUB, STORE, PRINT, END. See why high-level languages were invented.