Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.

Similar presentations


Presentation on theme: "Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables."— Presentation transcript:

1

2 Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables a programmer to specify a computation abstractly, and to let a program (usually called an assembler, compiler or interpreter) implement the specification in the detailed form needed for execution on a computer

3

4 To build programs, people use languages that are similar to human language. The results are translated into machine code, which computers understand. Programming languages fall into three broad categories  Machine languages  Assembly languages  Higher-level languages

5 Categories of Programming Languages Machine Language Machine Language – 1 st generation programming language – Considered a low-level language because it involves basic coding using the binary symbols 1 and 0 Machine languages (first-generation languages) are the most basic type of computer languages, consisting of strings of numbers the computer's hardware can use. Different types of hardware use different machine code. For example, IBM computers use different machine language than Apple computers

6 Assembly Language Assembly Language – 2 nd generation language – Replaced binary digits with mnemonics (e.g., “ADD”) programmers could more easily understand Assembly languages (second-generation languages) are only somewhat easier to work with than machine languages. To create programs in assembly language, developers use cryptic English-like phrases to represent strings of numbers. The code is then translated into object code, using a translator called an assembler. Categories of Programming Languages

7

8 Higher-level languages are more powerful than assembly language and allow the programmer to work in a more English-like environment. Higher-level programming languages are divided into three "generations," each more powerful than the last Third-generation languages Fourth-generation languages Fifth-generation languages Categories of Programming Languages

9 Third Generation Languages Third Generation Languages – Continued trend to more symbolic code (e.g. COBOL) Third-generation languages (3GLs) are the first to use true English-like phrasing, making them easier to use than previous languages. 3GLs are portable, meaning the object code created for one type of system can be translated for use on a different type of system. The following languages are 3GLs FORTANC COBOLC++ BASICJava PascalActiveX Categories of Programming Languages

10

11 Fourth Generation Languages (4GLs) Fourth Generation Languages (4GLs) – Languages that are less procedural and even more English-like than third-generation languages (e.g. FOCUS) Fourth-generation languages (4GLs) are even easier to use than 3GLs. 4GLs may use a text-based environment (like a 3GL) or may allow the programmer to work in a visual environment, using graphical tools. The following languages are 4GLs  Visual Basic (VB)  Visual Age  Authoring environments Categories of Programming Languages

12 5 th generation languages 5 th generation languages – Combines rule-based code generation, component management, visual programming techniques, and reuse management – Knowledge-based management An approach to the development of computer programs in which you do not tell a computer how to do a job, but what you want it to do Fifth-generation languages (5GLs) are an issue of debate in the programming community – some programmers cannot agree that they even exist. These high-level languages would use artificial intelligence to create software, making 5GLs extremely difficult to develop. Solve problems using constraints rather than algorithms, used in Artificial Intelligence Prolog Categories of Programming Languages

13 Query languages Query languages – Used to ask the computer questions in English-like sentences – Also known as database languages Structured query language (SQL) Structured query language (SQL) – A standardized language often used to perform database queries and manipulations Categories of Programming Languages

14 Object Oriented Languages Languages that allow interaction of programming objects, including data elements and the actions that will be performed on them Note: OOP = object-oriented programming Object-oriented programming (OOP) is a method of structuring programs by identifying real world or other objects, and then writing modules each of which contains all the data and executable statements needed to represent one class of objects. Within such a module, there is a clear distinction between the abstract properties of the class which are exported for use by other objects, and the implementation which is hidden so that it can be modified without affecting the rest of the system.

15 Object Oriented Languages Encapsulation The process of grouping items into an object Polymorphism A process allowing the programmer to develop one routine or set of activities that will operate on multiple objects

16 Object Oriented Languages Inheritance Property used to describe objects in a group of objects taking on characteristics of other objects in the same group or class of objects Reusable code The instruction code within an object that can be reused in different programs for a variety of applications Examples Smalltalk, C++, Java

17 C++, Objective- C, Smalltalk, Java, C#, Perl,Python, Ruby and C++Objective- CSmalltalkJavaC#PerlPythonRuby PHP are examples of object-oriented programming languages.PHP The goals of object-oriented programming are  Increased understanding.  Ease of maintenance.  Ease of evolution. Object Oriented Languages

18 Visual Programming Languages – Languages that use a mouse, icons, or symbols on the screen and pull-down menus to develop programs – Examples Visual Basic Visual C++ PC COBOL

19 Programming Languages: Terminology Language translator – Systems software that converts a programmer’s source code into its equivalent in machine language Source code – High-level program code written by the programmer Object code – Another name for machine language code

20 Programming Languages: Terminology Interpreter – A language translator that translates one program statement at a time into machine code

21 Programming Languages: Terminology Compiler – A language translator that converts a complete program into machine language to produce a program that the computer can process in its entirety

22

23 Elements of Programming Languages Like ordinary languages, programming languages have syntax The syntax of a (programming) language is a set of rules that define what sequences of symbols are considered to be valid expressions (programs) in the language if-statement ::= if ( expression ) statement [ else statement ]

24 Hardware Description Language Basic idea is a programming language to describe hardware Initial purpose was to allow abstract design and simulation – Design could be verified then implemented in hardware Now Synthesis tools allow direct implementation from HDL code. – Large improvement in designer productivity There are many different HDLs – Verilog HDL – ABEL – VHDL

25 Hardware Description Languages allow fast design and verification of digital circuits. Accurate simulation and testing requires delays and inputs to be specified. There are three different levels of abstraction for modelling circuits. Hardware Description Language


Download ppt "Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables."

Similar presentations


Ads by Google