SlideShare a Scribd company logo
1 of 18
Programming
Index ,[object Object]
Programs and algorithms
Programming languages ,[object Object],[object Object]
Which is the programming? In computer science, programming is a process which is written (in a programming language), is tested, purified and remains the source code of a computer program. Within information technology, computer programs are the elements that make up the software, which is the set of instructions that run the hardware of a computer to perform a certain task. Therefore, programming is one of the major areas within computer science.
Programs and Algorithms An algorithm is a sequence of unambiguous, finite and ordered instructions to be followed to solve a problem. Usually implements a program (translated to a programming language specific) algorithm. Note that the instruction sequence itself (execution) which must be finite, not the number of steps taken.  The programs are usually divided into smaller parts (modules) so that the algorithmic complexity of each of the parties is less than the full program, which helps the development of the program.  According to Niklaus Wirth, a program consists of algorithms and data structure.  Various techniques have been proposed program whose goal is to improve the process of creating and maintaining software. Among them are the following:
Programming languages ,[object Object]
Low-level Language (assembly)
High-level Language
Machine Language Microprogrammes circuits are digital, which means working with only two  voltage levels. These levels, abstraction, are symbolized with zero 0 and a 1,  so the machine language uses only those signs. This allows the use of the theories of Boolean algebra and the binary system in the design of such circuits and their programming. Claude Elwood Shannon, in his Analysis of Relay and Switching Circuits, and their experiences in switching networks, laying the groundwork for the implementation of Boolean algebra to switching networks.
Low-level Language The low-level languages are programming languages that are close to the operation of a computer. The lowest level of language par excellence is the machine code. This was followed by the assembly language, as when programming in assembler is working with the memory registers of the computer directly. Key high-level language: Ada, ALGOL, Basic, C++, C #, Clipper, COBOL, Fortran, Foxpro or Visual Foxpro, Java, Terms, Logo, PHP (PHP Hypertext Preprocessor), PL / SQL, RPG and Matlab.
High-level Language Programming languages high-level feature to express algorithms in a way appropriate to the human cognitive ability, rather than executing the capacity of the machines. In the first high-level language that the limitation was aimed at a specific area and its installation required a predefined syntax. Are classified as procedural languages. Another limitation of the high-level language is that it requires some programming skills to perform the logical sequence of instructions. The very high level languages were created so that users could solve this common problem of a data processing easier and faster. For this reason, in the late 1950s came a new kind of programming language that avoids these drawbacks at the expense of giving a little on the benefits. These languages are called "third generation" or "high level", as opposed to "low" or "close to the machine."
Trend of programming Languages The growth of Ruby and Javascript, due to the growth of Web 2.0 applications is a fact. This is causing a gradual decline of Java and C / C + +. As can be seen from the graph the introduction of Rails is the start of an upward trend of Ruby .
Trend of programming languages
Types of Programs ,[object Object],[object Object]
Advantages and Disadvantages of structured programming ,[object Object]
Object-oriented programming (OOP)
Declarative programming

More Related Content

What's hot

La5 ict-topic-5-programming
La5 ict-topic-5-programmingLa5 ict-topic-5-programming
La5 ict-topic-5-programmingKak Yong
 
Coding vs programming
Coding vs programmingCoding vs programming
Coding vs programmingAman Kumar
 
The Programmer Life Cycle
The Programmer Life CycleThe Programmer Life Cycle
The Programmer Life CycleRussell Ovans
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and developmentAli Raza
 
Programming lesson1
Programming lesson1Programming lesson1
Programming lesson1camfollower
 
ICT, Importance of programming and programming languages
ICT, Importance of programming and programming languagesICT, Importance of programming and programming languages
ICT, Importance of programming and programming languagesEbin Robinson
 
DSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentDSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentESUG
 
ML Tutorial Introduction
ML Tutorial IntroductionML Tutorial Introduction
ML Tutorial Introductionelbop
 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmIRJET Journal
 
Programming language
Programming languageProgramming language
Programming languageRajThakuri
 
introduction to programming
introduction to programmingintroduction to programming
introduction to programmingGaea Bonita
 

What's hot (19)

La5 ict-topic-5-programming
La5 ict-topic-5-programmingLa5 ict-topic-5-programming
La5 ict-topic-5-programming
 
SYSTEM DEVELOPMENT
SYSTEM DEVELOPMENTSYSTEM DEVELOPMENT
SYSTEM DEVELOPMENT
 
Coding vs programming
Coding vs programmingCoding vs programming
Coding vs programming
 
The Programmer Life Cycle
The Programmer Life CycleThe Programmer Life Cycle
The Programmer Life Cycle
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and development
 
Lecture 21 - Preprocessor and Header File
Lecture 21 - Preprocessor and Header FileLecture 21 - Preprocessor and Header File
Lecture 21 - Preprocessor and Header File
 
Programming lesson1
Programming lesson1Programming lesson1
Programming lesson1
 
Notacd071
Notacd071Notacd071
Notacd071
 
Notacd07
Notacd07Notacd07
Notacd07
 
ICT, Importance of programming and programming languages
ICT, Importance of programming and programming languagesICT, Importance of programming and programming languages
ICT, Importance of programming and programming languages
 
Intro1
Intro1Intro1
Intro1
 
DSL, the absolute weapon for the development
DSL, the absolute weapon for the developmentDSL, the absolute weapon for the development
DSL, the absolute weapon for the development
 
ML Tutorial Introduction
ML Tutorial IntroductionML Tutorial Introduction
ML Tutorial Introduction
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Computer
ComputerComputer
Computer
 
Programming Language
Programming LanguageProgramming Language
Programming Language
 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting Algorithm
 
Programming language
Programming languageProgramming language
Programming language
 
introduction to programming
introduction to programmingintroduction to programming
introduction to programming
 

Viewers also liked

Computer maintenance lesson 4
Computer maintenance lesson 4Computer maintenance lesson 4
Computer maintenance lesson 4capjjj
 
Advanced PC Maintenance and Troubleshooting
Advanced PC Maintenance and TroubleshootingAdvanced PC Maintenance and Troubleshooting
Advanced PC Maintenance and TroubleshootingNatan Mesfin
 
structured programming
structured programmingstructured programming
structured programmingAhmad54321
 
Computer maintenance
Computer maintenanceComputer maintenance
Computer maintenancecapjjj
 
Presentation on generation of languages
Presentation on generation of languagesPresentation on generation of languages
Presentation on generation of languagesRicha Pant
 
Generations Of Programming Languages
Generations Of Programming LanguagesGenerations Of Programming Languages
Generations Of Programming Languagessebrown
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languagesVarun Garg
 
structured programming Introduction to c fundamentals
structured programming Introduction to c fundamentalsstructured programming Introduction to c fundamentals
structured programming Introduction to c fundamentalsOMWOMA JACKSON
 

Viewers also liked (12)

Computer maintenance lesson 4
Computer maintenance lesson 4Computer maintenance lesson 4
Computer maintenance lesson 4
 
Programming
ProgrammingProgramming
Programming
 
Procedural programming
Procedural programmingProcedural programming
Procedural programming
 
Advanced PC Maintenance and Troubleshooting
Advanced PC Maintenance and TroubleshootingAdvanced PC Maintenance and Troubleshooting
Advanced PC Maintenance and Troubleshooting
 
structured programming
structured programmingstructured programming
structured programming
 
Computer maintenance
Computer maintenanceComputer maintenance
Computer maintenance
 
Presentation on generation of languages
Presentation on generation of languagesPresentation on generation of languages
Presentation on generation of languages
 
Generations Of Programming Languages
Generations Of Programming LanguagesGenerations Of Programming Languages
Generations Of Programming Languages
 
Oops ppt
Oops pptOops ppt
Oops ppt
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languages
 
C language ppt
C language pptC language ppt
C language ppt
 
structured programming Introduction to c fundamentals
structured programming Introduction to c fundamentalsstructured programming Introduction to c fundamentals
structured programming Introduction to c fundamentals
 

Similar to Programming

Ppt about programming in methodology
Ppt about programming in methodology Ppt about programming in methodology
Ppt about programming in methodology Vaishnavirakshe2
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docAmanGunner
 
PCCF UNIT 2.pptx
PCCF UNIT 2.pptxPCCF UNIT 2.pptx
PCCF UNIT 2.pptxDivyaKS12
 
PCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptxPCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptxvishnupriyapm4
 
Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language Md. Imran Hossain Showrov
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaKim Moore
 
Procedural Programming Of Programming Languages
Procedural Programming Of Programming LanguagesProcedural Programming Of Programming Languages
Procedural Programming Of Programming LanguagesTammy Moncrief
 
Stnotes doc 5
Stnotes doc 5Stnotes doc 5
Stnotes doc 5Alok Jain
 
Trend of Visual Programming Language
Trend of Visual Programming LanguageTrend of Visual Programming Language
Trend of Visual Programming LanguageTeddy Marcus
 
PCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docxPCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docxprakashvs7
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020Ikbal Ahmed
 
Introduction to java
Introduction to  javaIntroduction to  java
Introduction to javaKalai Selvi
 
Grade 8: Introduction To Java
Grade 8: Introduction To JavaGrade 8: Introduction To Java
Grade 8: Introduction To Javanandanrocker
 

Similar to Programming (20)

Unit 1
Unit 1Unit 1
Unit 1
 
JAVA
JAVAJAVA
JAVA
 
Ppt about programming in methodology
Ppt about programming in methodology Ppt about programming in methodology
Ppt about programming in methodology
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
PCCF UNIT 2.pptx
PCCF UNIT 2.pptxPCCF UNIT 2.pptx
PCCF UNIT 2.pptx
 
PCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptxPCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptx
 
Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language
 
PROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPESPROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPES
 
Computer Programming
Computer Programming Computer Programming
Computer Programming
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of Java
 
PROBLEM SOLVING
PROBLEM SOLVINGPROBLEM SOLVING
PROBLEM SOLVING
 
Procedural Programming Of Programming Languages
Procedural Programming Of Programming LanguagesProcedural Programming Of Programming Languages
Procedural Programming Of Programming Languages
 
Stnotes doc 5
Stnotes doc 5Stnotes doc 5
Stnotes doc 5
 
Trend of Visual Programming Language
Trend of Visual Programming LanguageTrend of Visual Programming Language
Trend of Visual Programming Language
 
WEBSITE DEVELOPMENT
WEBSITE DEVELOPMENTWEBSITE DEVELOPMENT
WEBSITE DEVELOPMENT
 
PCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docxPCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docx
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020
 
Introduction to java
Introduction to  javaIntroduction to  java
Introduction to java
 
Grade 8: Introduction To Java
Grade 8: Introduction To JavaGrade 8: Introduction To Java
Grade 8: Introduction To Java
 

Recently uploaded

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Recently uploaded (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

Programming

  • 2.
  • 4.
  • 5. Which is the programming? In computer science, programming is a process which is written (in a programming language), is tested, purified and remains the source code of a computer program. Within information technology, computer programs are the elements that make up the software, which is the set of instructions that run the hardware of a computer to perform a certain task. Therefore, programming is one of the major areas within computer science.
  • 6. Programs and Algorithms An algorithm is a sequence of unambiguous, finite and ordered instructions to be followed to solve a problem. Usually implements a program (translated to a programming language specific) algorithm. Note that the instruction sequence itself (execution) which must be finite, not the number of steps taken. The programs are usually divided into smaller parts (modules) so that the algorithmic complexity of each of the parties is less than the full program, which helps the development of the program. According to Niklaus Wirth, a program consists of algorithms and data structure. Various techniques have been proposed program whose goal is to improve the process of creating and maintaining software. Among them are the following:
  • 7.
  • 10. Machine Language Microprogrammes circuits are digital, which means working with only two voltage levels. These levels, abstraction, are symbolized with zero 0 and a 1, so the machine language uses only those signs. This allows the use of the theories of Boolean algebra and the binary system in the design of such circuits and their programming. Claude Elwood Shannon, in his Analysis of Relay and Switching Circuits, and their experiences in switching networks, laying the groundwork for the implementation of Boolean algebra to switching networks.
  • 11. Low-level Language The low-level languages are programming languages that are close to the operation of a computer. The lowest level of language par excellence is the machine code. This was followed by the assembly language, as when programming in assembler is working with the memory registers of the computer directly. Key high-level language: Ada, ALGOL, Basic, C++, C #, Clipper, COBOL, Fortran, Foxpro or Visual Foxpro, Java, Terms, Logo, PHP (PHP Hypertext Preprocessor), PL / SQL, RPG and Matlab.
  • 12. High-level Language Programming languages high-level feature to express algorithms in a way appropriate to the human cognitive ability, rather than executing the capacity of the machines. In the first high-level language that the limitation was aimed at a specific area and its installation required a predefined syntax. Are classified as procedural languages. Another limitation of the high-level language is that it requires some programming skills to perform the logical sequence of instructions. The very high level languages were created so that users could solve this common problem of a data processing easier and faster. For this reason, in the late 1950s came a new kind of programming language that avoids these drawbacks at the expense of giving a little on the benefits. These languages are called "third generation" or "high level", as opposed to "low" or "close to the machine."
  • 13. Trend of programming Languages The growth of Ruby and Javascript, due to the growth of Web 2.0 applications is a fact. This is causing a gradual decline of Java and C / C + +. As can be seen from the graph the introduction of Rails is the start of an upward trend of Ruby .
  • 14. Trend of programming languages
  • 15.
  • 16.
  • 19. Structured Programming 1 In the late 1960s came a new way of programming which not only resulted in reliable and efficient programs,but also were written so as to facilitate comprehension later. Origin of the Structured Programming Advantages and Disadvantages With structured programming can get the following benefits:
  • 20. Structured Programming 2 1. The programs are easier to understand, since they can be read in sequence, without the need of monitoring newlines (GOTO) within blocks of code to understand the logic. 2. The program's structure is clear, since the instructions are more connected or related. 3. Reduced effort in testing. The monitoring of faults or errors of the program ( "debugging") is provided due to the structure more visible, so that errors can be detected and corrected more easily. 4. Reduced maintenance costs of the programs. 5. Programs simpler and faster (since it is easier to optimize).
  • 21. Structured Programming 3 6. The blocks of code are self explanatory, which makes the documentation. 7. GOTO the reserve to build the basic instructions. Although not used directly, they are banned for use, are implicitly included in the instructions for selection and iteration. 8. A program written according to these principles not only have a better structure but also an excellent presentation. 9. Structured programming provides these benefits, but should not be regarded as a panacea and that software development is primarily a task of dedication, effort and creativity. The main drawback of this method of programming is that you get a single block of program, when it becomes too big can be problematic handling and this is solved using modular programming, defining interdependent modules programmed and compiled separately
  • 22. Modular programming Modular programming is a programming paradigm that consists of dividing a program into modules or sub-programs in order to make it more readable and manageable. Is presented as a historically evolving programming structured programming problems to solve large, complex as it can solve. On having applied implement modular programming, a complex problem should be divided into several simpler subproblems, and these in turn into other simpler subproblems. This must be done to get simple enough subproblems to be solved easily with any programming language. This technique is called successive refinement, or divide-and-down analysis (Top-Down). A module is each part of a program that solves one of the subproblems which divides the original complex problem. Each of these modules is a task well defined and some others need to operate. If a module requires another, can communicate with it via a communication interface must also be well defined.
  • 23. Object-oriented Programming Object-oriented programming is a program as a set of objects that collaborate among themselves to perform tasks. This allows the programs and modules are easier to write, maintain and reuse. It is a paradigm that uses objects as key elements in building the solution. Surge in 70 years. An object is an abstraction of some fact or thing in the real world that has attributes that represent characteristics or properties and methods that represent their behavior or actions they perform. All properties and methods common to the objects are encapsulated into classes or groups. ¨ A class is a template or a prototype to create objects, so it is said that the objects are instances of classes. Programming Language: C + +, Java, C #, VB.Net, etc.
  • 24. Declarative Programming Declarative programming is a programming paradigm that is based on programs specifying or "declaring" a set of terms, propositions, assertions, constraints, equations or transformations that describe the problem and its detailed solution. The solution is obtained by internal control mechanisms, without specifying exactly how to find it. There are no destructive assignments, and variables are used with referential transparency Some languages declarative: * Haskell (Functional Programming) * Prolog (Logic Programming) * Lisp (functional programming) * F-Prolog (Fuzzy Logic Programming) * Curry (Functional-Logic Programming)