Programming: Difference between revisions

From Computer Science Wiki
 
(47 intermediate revisions by 2 users not shown)
Line 2: Line 2:




== Introduction to programming ==
= Introduction to programming =


Programming is the writing and executing 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?]]
* [[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>
** [[Fundamental and compound operations]]
** [[Higher level and lower level languages]] [[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>
** [[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]] [[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>
* [[Functions]]
* [[Data types]] [[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>
* [[Iteration]]  
* [[Iteration]]  
* [[Conditionals | Selection]]
* [[Conditionals | Selection]]
* [[Operators]]
* [[Operators]]


Line 19: 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 27: Line 43:
== Common data structures ==
== Common data structures ==


A data structure is just some organization of data that we've built into an orderly arrangement.
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 ===


* [[Arrays]]
* [[Arrays]]
* [[two-dimensional arrays]]
* [[Collections]]
* [[Collections]]
* [[Linked list]]
* [[Linked list]]
* [[Objects]]  
* [[Objects]]  


=== Important, but not assessed by the IB ===
=== Common data structures which are not assessed by the IB ===
 
* [[Lists]]
* [[Lists]]
* [[Dictionaries]]
* [[Dictionaries]]
Line 40: Line 60:
* [[Tuple]]
* [[Tuple]]


== Basic program organization ==  
=== Abstract data structures which are assessed by the IB ===
For a deeper understanding of abstract data structures, please see this page: [[Abstract data structures]]
* [[stack]]
* [[queue]]
* [[linked list]]
* [[tree]]
* [[binary tree]]
 
= Python =  


* [[Algorithms]]
* Please visit our [[python]] programming page
* [[Functions]]
= Programming Paradigms =


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


== Other important ideas in programming ==
= Advanced Programming =


* [[Regular expressions]]
* [[Regular expressions]]
* [[Design Patterns]]
* [[Artificial Intelligence]]
* [[Object-Oriented Programming]]
* [[API]]
* [[Robotics]]
* [[Working with files]]
* [[Working with files]]
* [[Compiler]]
* Working with [[Databases|databases]]
* [[GUI|Graphical User Interfaces]]
* [[Hashing]]
* [[Blockchain]]
* [[Genetic Algorithms]]
* [[Machine learning]]


== References ==
== References ==
<references />
<references />


[[Category:computational thinking]]
[[Category:programming]]
[[Category:programming]]

Latest revision as of 08:11, 10 October 2023

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.[3]

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]