This guide covers the essential programming concepts you'll need for... Show more
Sign up to see the contentIt's free!
Access to all documents
Improve your grades
Join milions of students
Knowunity AI
Subjects
Triangle Congruence and Similarity Theorems
Triangle Properties and Classification
Linear Equations and Graphs
Geometric Angle Relationships
Trigonometric Functions and Identities
Equation Solving Techniques
Circle Geometry Fundamentals
Division Operations and Methods
Basic Differentiation Rules
Exponent and Logarithm Properties
Show all topics
Human Organ Systems
Reproductive Cell Cycles
Biological Sciences Subdisciplines
Cellular Energy Metabolism
Autotrophic Energy Processes
Inheritance Patterns and Principles
Biomolecular Structure and Organization
Cell Cycle and Division Mechanics
Cellular Organization and Development
Biological Structural Organization
Show all topics
Chemical Sciences and Applications
Atomic Structure and Composition
Molecular Electron Structure Representation
Atomic Electron Behavior
Matter Properties and Water
Mole Concept and Calculations
Gas Laws and Behavior
Periodic Table Organization
Chemical Thermodynamics Fundamentals
Chemical Bond Types and Properties
Show all topics
European Renaissance and Enlightenment
European Cultural Movements 800-1920
American Revolution Era 1763-1797
American Civil War 1861-1865
Global Imperial Systems
Mongol and Chinese Dynasties
U.S. Presidents and World Leaders
Historical Sources and Documentation
World Wars Era and Impact
World Religious Systems
Show all topics
Classic and Contemporary Novels
Literary Character Analysis
Rhetorical Theory and Practice
Classic Literary Narratives
Reading Analysis and Interpretation
Narrative Structure and Techniques
English Language Components
Influential English-Language Authors
Basic Sentence Structure
Narrative Voice and Perspective
Show all topics
68
•
Updated Mar 28, 2026
•
John Joyce
@johnjoyce4535
This guide covers the essential programming concepts you'll need for... Show more











Identifiers are simply meaningful names you give to variables - think of them as labels that make your code readable. Instead of using random letters, you'd write age = 18 rather than x = 18.
The difference between constants and variables is straightforward: constants are fixed values that never change during your program , while variables can change as your program runs. Variables come in two flavours - global variables work throughout your entire program, whilst local variables only exist within specific subroutines.
Be careful with global variables though - they can introduce bugs when local and global variables share the same name, making your code confusing and harder to test.
Quick Tip: Always use descriptive identifiers - your future self will thank you when debugging!

Subroutines are blocks of code that perform specific tasks - think of them as mini-programs within your main program. They're absolute lifesavers for keeping your code organised and avoiding repetition.
There are two types: functions return a value (like a calculator giving you an answer), while procedures just do something without returning anything. The beauty of subroutines lies in their reusability - write once, use everywhere.
Structured programming takes this organisation further by encouraging clear, logical code structure using loops, conditionals, and subroutines. It's like having a tidy room - everything has its place, making it easier to find what you need and spot problems quickly.
Remember: Good code structure isn't just about making teachers happy - it saves you hours of debugging time!

Recursion is when a function calls itself to solve problems - it's like looking into two mirrors facing each other. Every recursive function needs a base case (the condition where it stops calling itself), otherwise you'll get stuck in an infinite loop.
Stack frames are the computer's way of keeping track of function calls. Each time a function is called, the system creates a frame containing local variables and parameters - like having separate notepads for each task.
Recursion can create elegant solutions for complex problems, but it's a double-edged sword. Whilst it produces clean, natural code, it uses loads of system resources because each function call creates another stack frame.
Pro Tip: Always identify your base case first when writing recursive functions - it's your escape route!

Object-oriented programming (OOP) organises code using objects - it's like building with Lego blocks where each piece has specific properties and abilities. A class is your blueprint (like the instruction manual), whilst an object is the actual thing you build from it.
Key concepts include attributes (the characteristics of your object) and methods (what your object can do). Instantiation is simply creating a new object from your class template, whilst the constructor sets up your object when it's first created.
Encapsulation keeps related data and methods bundled together, inheritance lets classes share features with their parent classes, and polymorphism allows different classes to be treated similarly when they share common features.
Think of it this way: If "Vehicle" is a class, then "Car" and "Bus" are subclasses that inherit wheels and engines but have their own unique features.

Understanding relationships between objects is crucial in OOP. Association means objects can exist independently, aggregation is like a team where players can exist without the team, and composition is like a hotel where rooms can't exist without the building.
Protected variables (marked with a single underscore) are meant for use within a class family, whilst private variables (double underscore) are strictly for internal class use only. Python uses name mangling to make private variables harder to access from outside.
Static methods belong to the class itself rather than specific objects - you can use them without creating an object first. Abstract methods serve as templates that subclasses must implement, whilst virtual methods can optionally be overridden by subclasses.
Memory trick: Think of protected as "family only" and private as "top secret" - Python enforces these privacy levels differently.





Our AI Companion is a student-focused AI tool that offers more than just answers. Built on millions of Knowunity resources, it provides relevant information, personalised study plans, quizzes, and content directly in the chat, adapting to your individual learning journey.
You can download the app from Google Play Store and Apple App Store.
That's right! Enjoy free access to study content, connect with fellow students, and get instant help – all at your fingertips.
App Store
Google Play
The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.
Stefan S
iOS user
This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.
Samantha Klich
Android user
Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.
Anna
iOS user
Best app on earth! no words because it’s too good
Thomas R
iOS user
Just amazing. Let's me revise 10x better, this app is a quick 10/10. I highly recommend it to anyone. I can watch and search for notes. I can save them in the subject folder. I can revise it any time when I come back. If you haven't tried this app, you're really missing out.
Basil
Android user
This app has made me feel so much more confident in my exam prep, not only through boosting my own self confidence through the features that allow you to connect with others and feel less alone, but also through the way the app itself is centred around making you feel better. It is easy to navigate, fun to use, and helpful to anyone struggling in absolutely any way.
David K
iOS user
The app's just great! All I have to do is enter the topic in the search bar and I get the response real fast. I don't have to watch 10 YouTube videos to understand something, so I'm saving my time. Highly recommended!
Sudenaz Ocak
Android user
In school I was really bad at maths but thanks to the app, I am doing better now. I am so grateful that you made the app.
Greenlight Bonnie
Android user
very reliable app to help and grow your ideas of Maths, English and other related topics in your works. please use this app if your struggling in areas, this app is key for that. wish I'd of done a review before. and it's also free so don't worry about that.
Rohan U
Android user
I know a lot of apps use fake accounts to boost their reviews but this app deserves it all. Originally I was getting 4 in my English exams and this time I got a grade 7. I didn’t even know about this app three days until the exam and it has helped A LOT. Please actually trust me and use it as I’m sure you too will see developments.
Xander S
iOS user
THE QUIZES AND FLASHCARDS ARE SO USEFUL AND I LOVE Knowunity AI. IT ALSO IS LITREALLY LIKE CHATGPT BUT SMARTER!! HELPED ME WITH MY MASCARA PROBLEMS TOO!! AS WELL AS MY REAL SUBJECTS ! DUHHH 😍😁😲🤑💗✨🎀😮
Elisha
iOS user
This apps acc the goat. I find revision so boring but this app makes it so easy to organize it all and then you can ask the freeeee ai to test yourself so good and you can easily upload your own stuff. highly recommend as someone taking mocks now
Paul T
iOS user
The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.
Stefan S
iOS user
This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.
Samantha Klich
Android user
Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.
Anna
iOS user
Best app on earth! no words because it’s too good
Thomas R
iOS user
Just amazing. Let's me revise 10x better, this app is a quick 10/10. I highly recommend it to anyone. I can watch and search for notes. I can save them in the subject folder. I can revise it any time when I come back. If you haven't tried this app, you're really missing out.
Basil
Android user
This app has made me feel so much more confident in my exam prep, not only through boosting my own self confidence through the features that allow you to connect with others and feel less alone, but also through the way the app itself is centred around making you feel better. It is easy to navigate, fun to use, and helpful to anyone struggling in absolutely any way.
David K
iOS user
The app's just great! All I have to do is enter the topic in the search bar and I get the response real fast. I don't have to watch 10 YouTube videos to understand something, so I'm saving my time. Highly recommended!
Sudenaz Ocak
Android user
In school I was really bad at maths but thanks to the app, I am doing better now. I am so grateful that you made the app.
Greenlight Bonnie
Android user
very reliable app to help and grow your ideas of Maths, English and other related topics in your works. please use this app if your struggling in areas, this app is key for that. wish I'd of done a review before. and it's also free so don't worry about that.
Rohan U
Android user
I know a lot of apps use fake accounts to boost their reviews but this app deserves it all. Originally I was getting 4 in my English exams and this time I got a grade 7. I didn’t even know about this app three days until the exam and it has helped A LOT. Please actually trust me and use it as I’m sure you too will see developments.
Xander S
iOS user
THE QUIZES AND FLASHCARDS ARE SO USEFUL AND I LOVE Knowunity AI. IT ALSO IS LITREALLY LIKE CHATGPT BUT SMARTER!! HELPED ME WITH MY MASCARA PROBLEMS TOO!! AS WELL AS MY REAL SUBJECTS ! DUHHH 😍😁😲🤑💗✨🎀😮
Elisha
iOS user
This apps acc the goat. I find revision so boring but this app makes it so easy to organize it all and then you can ask the freeeee ai to test yourself so good and you can easily upload your own stuff. highly recommend as someone taking mocks now
Paul T
iOS user
John Joyce
@johnjoyce4535
This guide covers the essential programming concepts you'll need for Computer Science Paper 1. From basic programming principles like variables and subroutines to advanced topics like object-oriented programming and recursion, these are the building blocks that'll help you write better... Show more

Access to all documents
Improve your grades
Join milions of students
Identifiers are simply meaningful names you give to variables - think of them as labels that make your code readable. Instead of using random letters, you'd write age = 18 rather than x = 18.
The difference between constants and variables is straightforward: constants are fixed values that never change during your program , while variables can change as your program runs. Variables come in two flavours - global variables work throughout your entire program, whilst local variables only exist within specific subroutines.
Be careful with global variables though - they can introduce bugs when local and global variables share the same name, making your code confusing and harder to test.
Quick Tip: Always use descriptive identifiers - your future self will thank you when debugging!

Access to all documents
Improve your grades
Join milions of students
Subroutines are blocks of code that perform specific tasks - think of them as mini-programs within your main program. They're absolute lifesavers for keeping your code organised and avoiding repetition.
There are two types: functions return a value (like a calculator giving you an answer), while procedures just do something without returning anything. The beauty of subroutines lies in their reusability - write once, use everywhere.
Structured programming takes this organisation further by encouraging clear, logical code structure using loops, conditionals, and subroutines. It's like having a tidy room - everything has its place, making it easier to find what you need and spot problems quickly.
Remember: Good code structure isn't just about making teachers happy - it saves you hours of debugging time!

Access to all documents
Improve your grades
Join milions of students
Recursion is when a function calls itself to solve problems - it's like looking into two mirrors facing each other. Every recursive function needs a base case (the condition where it stops calling itself), otherwise you'll get stuck in an infinite loop.
Stack frames are the computer's way of keeping track of function calls. Each time a function is called, the system creates a frame containing local variables and parameters - like having separate notepads for each task.
Recursion can create elegant solutions for complex problems, but it's a double-edged sword. Whilst it produces clean, natural code, it uses loads of system resources because each function call creates another stack frame.
Pro Tip: Always identify your base case first when writing recursive functions - it's your escape route!

Access to all documents
Improve your grades
Join milions of students
Object-oriented programming (OOP) organises code using objects - it's like building with Lego blocks where each piece has specific properties and abilities. A class is your blueprint (like the instruction manual), whilst an object is the actual thing you build from it.
Key concepts include attributes (the characteristics of your object) and methods (what your object can do). Instantiation is simply creating a new object from your class template, whilst the constructor sets up your object when it's first created.
Encapsulation keeps related data and methods bundled together, inheritance lets classes share features with their parent classes, and polymorphism allows different classes to be treated similarly when they share common features.
Think of it this way: If "Vehicle" is a class, then "Car" and "Bus" are subclasses that inherit wheels and engines but have their own unique features.

Access to all documents
Improve your grades
Join milions of students
Understanding relationships between objects is crucial in OOP. Association means objects can exist independently, aggregation is like a team where players can exist without the team, and composition is like a hotel where rooms can't exist without the building.
Protected variables (marked with a single underscore) are meant for use within a class family, whilst private variables (double underscore) are strictly for internal class use only. Python uses name mangling to make private variables harder to access from outside.
Static methods belong to the class itself rather than specific objects - you can use them without creating an object first. Abstract methods serve as templates that subclasses must implement, whilst virtual methods can optionally be overridden by subclasses.
Memory trick: Think of protected as "family only" and private as "top secret" - Python enforces these privacy levels differently.

Access to all documents
Improve your grades
Join milions of students

Access to all documents
Improve your grades
Join milions of students

Access to all documents
Improve your grades
Join milions of students

Access to all documents
Improve your grades
Join milions of students

Access to all documents
Improve your grades
Join milions of students
Our AI Companion is a student-focused AI tool that offers more than just answers. Built on millions of Knowunity resources, it provides relevant information, personalised study plans, quizzes, and content directly in the chat, adapting to your individual learning journey.
You can download the app from Google Play Store and Apple App Store.
That's right! Enjoy free access to study content, connect with fellow students, and get instant help – all at your fingertips.
2
Smart Tools NEW
Transform this note into: ✓ 50+ Practice Questions ✓ Interactive Flashcards ✓ Full Mock Exam ✓ Essay Outlines
App Store
Google Play
The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.
Stefan S
iOS user
This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.
Samantha Klich
Android user
Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.
Anna
iOS user
Best app on earth! no words because it’s too good
Thomas R
iOS user
Just amazing. Let's me revise 10x better, this app is a quick 10/10. I highly recommend it to anyone. I can watch and search for notes. I can save them in the subject folder. I can revise it any time when I come back. If you haven't tried this app, you're really missing out.
Basil
Android user
This app has made me feel so much more confident in my exam prep, not only through boosting my own self confidence through the features that allow you to connect with others and feel less alone, but also through the way the app itself is centred around making you feel better. It is easy to navigate, fun to use, and helpful to anyone struggling in absolutely any way.
David K
iOS user
The app's just great! All I have to do is enter the topic in the search bar and I get the response real fast. I don't have to watch 10 YouTube videos to understand something, so I'm saving my time. Highly recommended!
Sudenaz Ocak
Android user
In school I was really bad at maths but thanks to the app, I am doing better now. I am so grateful that you made the app.
Greenlight Bonnie
Android user
very reliable app to help and grow your ideas of Maths, English and other related topics in your works. please use this app if your struggling in areas, this app is key for that. wish I'd of done a review before. and it's also free so don't worry about that.
Rohan U
Android user
I know a lot of apps use fake accounts to boost their reviews but this app deserves it all. Originally I was getting 4 in my English exams and this time I got a grade 7. I didn’t even know about this app three days until the exam and it has helped A LOT. Please actually trust me and use it as I’m sure you too will see developments.
Xander S
iOS user
THE QUIZES AND FLASHCARDS ARE SO USEFUL AND I LOVE Knowunity AI. IT ALSO IS LITREALLY LIKE CHATGPT BUT SMARTER!! HELPED ME WITH MY MASCARA PROBLEMS TOO!! AS WELL AS MY REAL SUBJECTS ! DUHHH 😍😁😲🤑💗✨🎀😮
Elisha
iOS user
This apps acc the goat. I find revision so boring but this app makes it so easy to organize it all and then you can ask the freeeee ai to test yourself so good and you can easily upload your own stuff. highly recommend as someone taking mocks now
Paul T
iOS user
The app is very easy to use and well designed. I have found everything I was looking for so far and have been able to learn a lot from the presentations! I will definitely use the app for a class assignment! And of course it also helps a lot as an inspiration.
Stefan S
iOS user
This app is really great. There are so many study notes and help [...]. My problem subject is French, for example, and the app has so many options for help. Thanks to this app, I have improved my French. I would recommend it to anyone.
Samantha Klich
Android user
Wow, I am really amazed. I just tried the app because I've seen it advertised many times and was absolutely stunned. This app is THE HELP you want for school and above all, it offers so many things, such as workouts and fact sheets, which have been VERY helpful to me personally.
Anna
iOS user
Best app on earth! no words because it’s too good
Thomas R
iOS user
Just amazing. Let's me revise 10x better, this app is a quick 10/10. I highly recommend it to anyone. I can watch and search for notes. I can save them in the subject folder. I can revise it any time when I come back. If you haven't tried this app, you're really missing out.
Basil
Android user
This app has made me feel so much more confident in my exam prep, not only through boosting my own self confidence through the features that allow you to connect with others and feel less alone, but also through the way the app itself is centred around making you feel better. It is easy to navigate, fun to use, and helpful to anyone struggling in absolutely any way.
David K
iOS user
The app's just great! All I have to do is enter the topic in the search bar and I get the response real fast. I don't have to watch 10 YouTube videos to understand something, so I'm saving my time. Highly recommended!
Sudenaz Ocak
Android user
In school I was really bad at maths but thanks to the app, I am doing better now. I am so grateful that you made the app.
Greenlight Bonnie
Android user
very reliable app to help and grow your ideas of Maths, English and other related topics in your works. please use this app if your struggling in areas, this app is key for that. wish I'd of done a review before. and it's also free so don't worry about that.
Rohan U
Android user
I know a lot of apps use fake accounts to boost their reviews but this app deserves it all. Originally I was getting 4 in my English exams and this time I got a grade 7. I didn’t even know about this app three days until the exam and it has helped A LOT. Please actually trust me and use it as I’m sure you too will see developments.
Xander S
iOS user
THE QUIZES AND FLASHCARDS ARE SO USEFUL AND I LOVE Knowunity AI. IT ALSO IS LITREALLY LIKE CHATGPT BUT SMARTER!! HELPED ME WITH MY MASCARA PROBLEMS TOO!! AS WELL AS MY REAL SUBJECTS ! DUHHH 😍😁😲🤑💗✨🎀😮
Elisha
iOS user
This apps acc the goat. I find revision so boring but this app makes it so easy to organize it all and then you can ask the freeeee ai to test yourself so good and you can easily upload your own stuff. highly recommend as someone taking mocks now
Paul T
iOS user