What is the course order?
The key idea
Gammal Tech's prerequisite route is C, then C++, then Data Structures, then Algorithms. OOP is a separate branch whose prerequisite is C++. This means you do not need to finish Algorithms before starting the OOP course.
HTML, CSS, Entrepreneurship and Intrapreneurship are additional subjects. They serve different goals and should not be silently inserted as mandatory steps in the C-to-Algorithms route.
Use prerequisites as readiness checks
| Next course | Required previous course | A useful self-check |
|---|---|---|
| C++ | C | Explain a function, a loop and an array in your own code |
| Data Structures | C++ | Follow how a collection is created, accessed and updated |
| Algorithms | Data Structures | Explain the operations and costs of a chosen structure |
| OOP | C++ | Write and call functions and understand the data they use |
These self-checks are suggested practice, not an official admission test or a substitute for course requirements. If you have learnt elsewhere, ask Gammal Tech how your experience should be assessed.
Do not confuse completion with recall
Finishing a lesson once does not mean you can use its ideas later. Before moving on, revisit an earlier task without the solution open. Explain what each variable represents and what happens when the input changes.
For example, after practising arrays, find the largest value in a five-element list. Then try all equal values and a list containing negative values. If your approach assumes the answer starts at zero, the negative case exposes a gap worth fixing.
Where should the OOP branch fit?
Choose OOP after C++ when your immediate learning goal is to organise state and behaviour into objects. Choose Data Structures when the immediate goal is to understand collections and their operations. Both can become useful parts of a broader foundation.
Avoid turning this into a race between subjects. A clear understanding of functions will help you reason about methods, while a clear understanding of collections will help you model objects that contain them. The formal prerequisite for OOP in this route remains C++.
Plan by milestones instead of promises
Set a review point after each subject: one explanation, one independent exercise and one corrected mistake. Your available time and prior experience determine how quickly you reach that point. A suggested calendar is a planning tool, not a guarantee of mastery.
If you are preparing for university, compare these milestones with your actual module descriptions. A university may introduce another language or teach OOP earlier. Transfer the underlying concepts while following the institution's requirements.
Make your next step explicit
Write your completed course, a task you can solve independently, and the prerequisite for the course you want next. If those three items do not align, return to the missing skill or ask for guidance. A coherent route is easier to maintain than several half-finished courses.
References and course details
Use these references for further study. The examples and exercises in this article are educational; consult the catalogue for course details.