Contents
Of your course.
module 1
Introduction in Computer science
+
-
Enter computer science
Your first lesson in Computer Science will leave you appreciating the relationship between the real world and computers. You will understand key terms, the relationship between math and computing, notable progressions and why computer science is such a great field to take up!Processes, procedures, computers
In this lesson we will learn how a computer processes information and the procedures it goes through to convert that information into something a human can understand. We will also start to dive in to different operating systems, their structure and characteristics. By the end of this lesson you will know exactly where programming falls into all of this.Measuring Computer Power
Do you know how the speed of a computer is measured? Well after this lesson, you will! We are going to go through computer architecture and the structure of the Complex Instruction Computing Set (CISC) before moving on to binary questions and discussing where computers can fall short.
Language Construction
Language construction is instrumental in understanding computers, and this lesson breaks down how computers compare to the natural human language. You will understand the binary system and how it is used in instructing computers, and we will finish off with transducers which enable computers to respond to physical phenomena.
Programming Languages
A quick peek at the tools we’ll be using for the rest of the course - programming languages. We’ve explained that computers think in 0s and 1s, and that this format is not the easiest for humans to use or follow. This is where programming languages come in. It bridges the gap between machine language and human language.
Problem Definition
A look at one of the main concepts in computer science; problem solving. All the amazing apps and systems in the world start their lives as simple problems in a statement. It is the job of a computer scientist to break this problem down to its most basic components, then describe a solution for it.
Formulating Pseudocode
in this lesson, we look at the path you follow when formulating a solution. we look at one of the most popular techniques used in solving problems, pseudocode. we look at a few examples to get you started.
Algorithms
Discover the science of algorithms and their monumental impact on our daily lives.
module 2
Intermediate in Computer science
+
-
C Language (intermediate-computer-science-20)
Module 1 has laid your foundation, and now you are ready to look at specific programming languages in detail. In this lesson, we step into the world of C programming and discover its roots, characteristics, and uses.
Environment Setup (intermediate-computer-science-20)
Today's lesson will see you installing a Development Environment which is where we create our code, and the various functions and layouts of this environment will be explored.
Program structure
Develop an understanding of the layout of a typical program. understand how a program should be structured concerning previously learnt computational procedures.
C Syntax
Discover how the c language is spoken, plus the rules and laws that govern code.
Data types
Recognise data types and how they are used in programs to achieve various results.
Variables and constants
Develop an understanding of variables, and how they are used to change the behaviour of your code at runtime.
Basic input and output
Building on our knowledge of how algorithms require input and produce output, we look at the practical side of things as we try it out using C.
Operators
Develop an understanding of operators in programs and how they work in conjunction with variables, constants and other program components.
module 3
Advanced in Computer science
+
-
Decision Making
Our first lesson in Module 3 starts off with decision making. Specifically, we will discover how computers deal with options - make decisions - when presented with a set of choices as input.
Loops and Functions
Nobody likes repetitive tasks, which is why we have computers to deal with them! Today we will explore the different methods of handling repetitive operations and routines.
Storage Classes
By the end of this lesson, you will have learnt how to manipulate variables to add various properties, which aid a computer in memory management. This is one of the key features of C that allow you to manage the attributes that your variables carry
Arrays
When it comes to large or organised data sets, arrays need to be used. You'll learn exactly how these are used in this lesson.
Pointers
In computer science, a pointer is an object in many programming languages that stores a memory address. You will discover the structure and functions of these, and learn how to apply them when manipulating data.
Type Casting
We get into the more complex aspects of variables in this lesson, having covered variables in the previous modules. Today you will learn how to change variable types at runtime.
Preprocessors, Header Files and Libraries
In every industry and even in our daily lives, we want to streamline what we do. For computers, an aspect of this is preprocessor directives and header files, which streamline code and shorten it. we expand on the previous lesson topic and dive into libraries, using them to deal with complex tasks without having to code the nitty gritties yourself. You will know how this works by the end of the lesson!
Memory management
If you want your code to run faster, you need to understand memory management. Memory management helps your code become more efficient, and therefore execute more quickly. Speed is everything!
module 4
Proficient in Computer science
+
-
Variable Arguments
If you haven't figured it out already, variables are a huge topic in programming! Now, we are adding arguments to the mix. An argument is another factor in customising a program. when using arguments, it is not always that the number of arguments is predictable. learn how to overcome this problem.
The Software Development Lifecycle
Now that you have learnt how to write code, you need to know how to efficiently manage the software development process. you will learn how to manage your time and spend it on things that actually matter to the end product.
Command Line Arguments
Learn how to pass arguments to your program at runtime rather than hard coding them into your code. this is important as one other method of driving the application.
File Input and Output
Like in the real world, file management makes our lives much easier. Today we look at file input and output - learn how to save your work to a file and retrieve information from it.
Debugging
Debugging is about detecting and removing existing and potential errors (bugs) in a software code that can cause it to behave unexpectedly or crash. You'll learn how to read this code and understand it enough to pinpoint and rectify errors.
Error handling
Even the most seasoned programmer encounters errors - if we expected everything to be perfect from the beginning, nothing would ever get released. Explore how to handle errors that are encountered during runtime in order to minimise program crashes.
Scaling Up
Continuing your knowledge in the C programming language, we are looking at the many industrial applications you could come across.
Course Summary and Wrapping Up
We wrap up your course in Computer Science by looking at the Dos and Don'ts of C, as well as its limitations. We will then recap the most important takeaways in this course, preparing you for the next step in your journey!