Programming: Difference between revisions

From Computer Science Wiki
 
(66 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<center>
[[file:computation.png|right|frame|Programming<ref>http://www.flaticon.com/</ref>]]
<blockquote style="padding: 5px; background-color: #FFF8DC; border: solid thin gray;">
  [[File:Exclamation.png]] This is one of '''the most important ideas''' you can remember:


  '''Decompose''' a problem into smaller parts, '''diagram''' a problem. Learn to think '''sequentially'''
</blockquote>
</center>


[[file:computation.png|right|frame|Programming<ref>http://www.flaticon.com/</ref>]]
= Introduction to programming =


Programming is the issuing of instructions to  a computer. You must learn how to issue instructions to a computer.  
Programming is the process of planning, writing, executing and testing instructions for a computer system.


== Introduction to programming ==
* [[What is a programming language?]]
** [[Fundamental and compound operations]]
** [[Higher level and lower level languages]]
** [[Interpreted and compiled languages]]


* [[What is a programming language?]]
* [[High level languages]]
* [[Low level languages]]
* [[Translating high-level code to low-level code]]
* [[Compiler]]


== Basic understanding ==  
== 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]]
* [[Variables]]  
* [[Variables]]  
* [[Constants]]
* [[Functions]]
* [[Data types]]
* [[Iteration]]
* [[Conditionals | Selection]]


== Basic (primitive) data types ==
* [[Operators]]
 
== Primitive data types ==
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.<ref>https://en.wikipedia.org/wiki/Data_type</ref>
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.<ref>https://en.wikipedia.org/wiki/Data_type</ref>


* [[Objects]]  
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 35: Line 42:


== Common data structures ==
== Common data structures ==
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]]
* [[Objects]]
=== Common data structures which are not assessed by the IB ===
* [[Lists]]
* [[Lists]]
* [[Dictionaries]]
* [[Dictionaries]]
Line 43: Line 60:
* [[Tuple]]
* [[Tuple]]


== Control Flow ==  
=== Abstract data structures which are assessed by the IB ===
In computer science, control flow (or flow of control) is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated. <ref>https://en.wikipedia.org/wiki/Control_flow</ref>
For a deeper understanding of abstract data structures, please see this page: [[Abstract data structures]]
* [[Conditionals]]
* [[stack]]
** [[Operators]]
* [[queue]]
* [[Loops]]
* [[linked list]]
* [[tree]]
* [[binary tree]]


== Basic program organization ==  
= 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 [[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 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]