Programming: Difference between revisions

From Computer Science Wiki
 
(20 intermediate revisions by 2 users not shown)
Line 6: Line 6:
Programming is the process of planning, writing, executing and testing instructions for a computer system.
Programming is the process of planning, writing, executing and testing instructions for a computer system.


* [[What is a programming language?]] [[File:Answer.png|This topic has formative assessment as part of the article.]]<ref name="formative">Icons made by https://www.flaticon.com/authors/eucalyp from https://www.flaticon.com/ </ref>
* [[What is a programming language?]]  
** [[Fundamental and compound operations]]
** [[Fundamental and compound operations]]
** [[Higher level and lower level languages]]
** [[Higher level and lower level languages]]
** [[Interpreted and compiled languages]]
** [[Interpreted and compiled languages]]


== What is the best programming language? ==
<html>
<iframe width="560" height="315" src="https://www.youtube.com/embed/RfWGJS7rckk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</html>
== Learning to Program ==
* [[Inputs and outputs]]
* [[Inputs and outputs]]
* [[Variables]]
* [[Variables]]
* [[Functions]]
* [[Data types]]
* [[Iteration]]  
* [[Iteration]]  
* [[Conditionals | Selection]]
* [[Conditionals | Selection]]
* [[Functions]]
 
* [[Operators]]
* [[Operators]]


Line 23: Line 32:
The list below describes some of the more common primitive data types
The list below describes some of the more common primitive data types


* [[Scalar type]]
* [[Boolean]]
* [[Boolean]]
* [[Int]]
* [[Int|Integers]]
** [[Signed integers]]
** [[Unsigned integers]]
* [[Float]]
* [[Float]]
* [[Char]]
* [[Char]]
Line 56: Line 68:
* [[binary tree]]
* [[binary tree]]


= Object Oriented Programming =
= Python =
 
* Please visit our [[python]] programming page
= Programming Paradigms =


* [[Object-Oriented Programming]]
* [[Object-Oriented Programming]] ([[Separation of concerns]])
* [[Procedural programming]]
* [[Declarative programming]]
* [[Functional programming]]
* [[Imperative programming]]


= Advanced Programming =
= Advanced Programming =
In general these are unordered collection of topics that commonly comes up as I teach:


* [[Regular expressions]]
* [[Regular expressions]]
* [[Artificial Intelligence]]
* [[API]]
* [[API]]
* [[Robotics]]
* [[Working with files]]
* [[Working with files]]
* Working with [[Databases|databases]]
* Working with [[Databases|databases]]
Line 70: Line 91:
* [[Hashing]]
* [[Hashing]]
* [[Blockchain]]
* [[Blockchain]]
* [[Genetic Algorithms]]
* [[Machine learning]]


== References ==
== References ==

Latest revision as of 05:33, 22 August 2024

Programming[1]


Introduction to programming[edit]

Programming is the process of planning, writing, executing and testing instructions for a computer system.


What is the best programming language?[edit]

Learning to Program[edit]

Primitive data types[edit]

In computer science and computer programming, a data type or simply type is a classification of data which tells the compiler or interpreter how the programmer intends to use the data. Most programming languages support various types of data, for example: real, integer or Boolean.[2]

The list below describes some of the more common primitive data types

Common data structures[edit]

A data structure is just some organization of data that we've built into an orderly arrangement. The organization and arrangement of data can make our programs run much more efficiently. Each data structure has advantages and disadvantages. There are common data structures and abstract data structures. In general abstract data structures are advanced and more specific to a specific task.

Common data structures which are assessed by the IB[edit]

Common data structures which are not assessed by the IB[edit]

Abstract data structures which are assessed by the IB[edit]

For a deeper understanding of abstract data structures, please see this page: Abstract data structures

Python[edit]

  • Please visit our python programming page

Programming Paradigms[edit]

Advanced Programming[edit]

References[edit]