"Colon class" "Reading Notes" programming paradigm collation

Source: Internet
Author: User

Programming paradigm Imperative/Process type (imperative/procedural)

Representative Language FORTRAN/PASCAL/C

Core concept command/process (command/procedure)

Run mechanism command execution

Key breakthroughs break the limits of single main and non-structured programs

Introduction of logic Control and sub-program in implementing principle

The main purpose is to simulate the machine thinking and realize the top-down module design.

Common applications Interactive, event-driven systems, numerical calculations, etc.

Programming Paradigm Functional/Applied (functional/applicative)

Representative Language Scheme/haskell

Core concept function (Funcation)

Run-Mechanism expression evaluation

Key breakthroughs break the limits of machine thinking

The implementation principle introduces higher order functions and functions as data processing

The main objective is to simulate mathematical thinking, simplify code, and reduce side effects

Common application of calculus calculation, mathematical logic, game, etc.

Programming paradigm Logical (LOGIC)

Representative Language Prolog/mercury

Core concept assertion (predicate)

Operational mechanism Logic Calculation

Key breakthrough logic and console adhesion limitations

The implementation principle uses the inference engine to make logical inferences based on known facts and rules

The main purpose is to focus on logical analysis and reduce the control code

Common Application machine proofs, expert systems, natural language processing, Semantic web (semantic), decision analysis, business rules management, etc.

Programming Paradigm Object Style (object-oriented)

Representative Language Smalltalk/java

Core Concept objects (object)

Information exchange between operating mechanism objects

Key breakthrough breakthrough data and code separation limitations

Implementation principle introduces encapsulation, inheritance and polymorphism mechanism

The main purpose is to cater to human cognitive patterns and improve the usability and reusability of software.

Common applications large and complex interactive systems, etc.

Programming paradigm concurrency/parallel (concurrent/parallel)

Representative Language Erlang/oz

Core Conceptual processes/threads (Process/thread)

Running mechanism process/inter-thread communication and synchronization

Breakthrough serial limit for critical breakthroughs

Implementation principle introduces concurrent threading module and communication and synchronization mechanism between modules

The main purpose is to make full use of resources, improve operational efficiency and improve software responsiveness.

Common applications graphical user interface, I/O processing, multitasking systems such as operating systems, network services, real-time systems, embedded systems, computing-intensive systems such as scientific computing, artificial intelligence, etc.

Programming Paradigm Generics (Generic)

Representative Language ada/eiffel/c++

Core concept algorithm (algorithm)

Run mechanism algorithm instantiation (more in compiler)

Key breakthroughs break through the limitations of static type language

Implementation principle using template delay type designation

Main purpose to improve the universality of the algorithm

Common application of universal algorithms such as sorting, searching, etc., collection class containers, etc.

Programming paradigm meta-programming (meta-programming)

Representative Language Lisp/ruby/javascript

Core concept meta-Program (METAPROGRAM)

Run mechanism dynamically generate code or automatically modify execution instructions

Key breakthroughs breakthrough language's general grammatical limitations

The implementation principle uses the mechanism of code generation or language built-in reflection (reflection) and dynamics to process program language as data

The main objective is to reduce manual coding and improve language level

Common applications automatic code generation, definition of structured profiles, Ides, compilers, interpreters, AI, model-driven architecture (MDA), domain-specific languages (DSLS), etc.

Programming Paradigm Slice (aspect-oriented)

Representative Language aspectj/aspectc++

Core concept Facets (Aspect)

Operating mechanism to implement recommendations at the access point

Key breakthroughs break through the limitations of crosscutting concerns that cannot be modularized

The implementation principle embeds additional behavior into the main program by weaving (weaving)

The main purpose is to realize the separation of crosscutting concerns.

Common Application log output, code tracking, performance monitoring, exception handling, security checks, transaction management, and more

Programming Paradigm Event-driven (Event-driven)

Representative Language C#/vb.net

Core concept Events (event)

Run mechanism listener responds after receiving event notification

Critical breakout sequence, synchronized process limits

Implementation principle introduces control inversion and asynchronous mechanism

The main purpose caller is decoupled from the callee in code and time

Common Application Graphical user interface, Web application, server, operating system, IOC framework, asynchronous input, DOM, etc.

"Colon class" "Reading Notes" programming paradigm collation

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.