Outline of computer programming
Appearance
- include<iostream>
Using namespace std; int main() {int i=3; While(I<=30)
{
Court<<'\n'<<I; I+3; }
}
History
- History of computer science
- History of computing hardware
- History of programming languages
- Computer programming in the punched card era
- Operating systems timeline
Platforms
- Computer
- Computer hardware
- Virtual machine
Paradigms
- Agent-oriented
- Aspect-oriented
- Automata-based
- Data-driven
- Declarative (as opposed to imperative programming)
- Event-driven
- Expression-oriented
- Feature-oriented
- Function-level (as opposed to value-level programming)
- Generic
- Imperative (as opposed to declarative programming)
- Inductive programming
- Language-oriented (LOP)
- Non-structured (as opposed to Structured)
- Nondeterministic
- Process-oriented
- Role-oriented
- Semantic-oriented (SOP)
- Structured (as opposed to non-structured programming)
- Tacit
- Value-level (as opposed to function-level programming)
- Probabilistic
- Concept
Writing programs
Methodology
- Array programming
- End-user development
- Metaprogramming
- Recursion
- Separation of concerns
- Threaded coding
Algorithms
- List of algorithms
- List of algorithm general topics
- List of important_publications in theoretical computer science § Algorithms
- Algorithm characterizations
- Theory of computation
- Search algorithm
- Sorting algorithm
- Merge algorithm
- String algorithms
- Greedy algorithm
- Reduction
- Sequential algorithm
- Parallel algorithm
- Deterministic algorithm
- Randomized algorithm
- Quantum algorithm
Programming languages
Programming language – formal constructed language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs to control the behavior of a machine or to express algorithms.
- Generational list of programming languages
- List of programming languages by type
- Alphabetical list of programming languages
- Comparison of programming languages
- Programming language dialect
- Programming language theory
- Assembly language
- Macro
Types of programming languages
- Array programming language
- Aspect-oriented programming language
- Class-based programming language
- Concatenative programming language
- Concurrent programming language
- Data-structured language
- Dataflow programming language
- Declarative programming language
- Domain-specific language
- Dynamic programming language
- Esoteric programming language
- Event-driven programming language
- Extensible programming language
- Functional programming language
- High-level programming language
- Imperative programming language
- Interpreted language
- Logic programming language
- Low-level programming language
- Machine programming language
- Metaprogramming programming language
- Multi-paradigm programming language
- Non-English-based programming language
- Object-based language
- Object-oriented programming language
- Off-side rule programming language
- Pipeline programming language
- Procedural programming language
- Prototype-based programming language
- Reflective programming language
- Rule-based programming language
- Synchronous programming language
- Very high-level programming language
- Visual programming language
Popular languages
The top 20 most popular programming languages as of March 2022[update]:[1]
- Python
- C
- Java
- C++
- C#
- Visual Basic .NET
- JavaScript
- PHP
- Assembly language
- SQL
- R
- Delphi/Object Pascal
- Go
- Swift
- MATLAB
- Ruby
- Classic Visual Basic
- Objective-C
- Perl
- Lua
Anatomy of a programming language
Comparisons of programming languages
Programming language comparisons
- General comparison
- Basic syntax
- Basic instructions
- Exception handling
- Enumerated types
- Anonymous functions
- Conditional expressions
- Functional instructions
- Arrays
- Associative arrays
- String operations
- String functions
- List comprehension
- Object-oriented programming
- Object-oriented constructors
- While loops
- For loops
- Evaluation strategy
- List of "Hello World" programs
- Languages with dependent types
- Comparison of type systems
Comparisons of individual languages
- Java and .NET platforms
- ALGOL 58's influence on ALGOL 60
- ALGOL 60: Comparisons with other languages
- Comparison of ALGOL 68 and C++
- ALGOL 68: Comparisons with other languages
- Compatibility of C and C++
- Comparison of Pascal and Borland Delphi
- Comparison of Object Pascal and C
- Comparison of Pascal and C
- Comparison of Java and C++
- Comparison of C# and Java
- Comparison of C# and Visual Basic .NET
- Comparison of Visual Basic and Visual Basic .NET
Compilation
Software
- Computer program
- Hello world (a common form of example program for learning programmers)
- Application software
- Programming software
- System software
Components
Software development
Software engineering
- Implementation
- Execution
- Software architecture
- Software reliability
- Software quality
- Software testing
- Software maintenance
- Software optimization
- Software brittleness
See also
- Outline of computers
- Outline of computing
- Outline of computer science
- Outline of the Internet
- Outline of software
- Types of software
- Outline of software development
- Outline of software engineering
- Outline of web design and web development
- Outline of computer programming
- Programming languages
- Outline of computing
References
- ^ "index | TIOBE - The Software Quality Company". www.tiobe.com. Retrieved 2022-03-20.
External links
- How to Think Like a Computer Scientist - by Jeffrey Elkner, Allen B. Downey and Chris Meyers