Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 1 Classification of Languages 1. Procedural.

Slides:



Advertisements
Similar presentations
GCSE Computing Lesson 5.
Advertisements

compilers and interpreters
Alford Academy Business Education and Computing1 Advanced Higher Computing Based on Heriot-Watt University Scholar Materials Comparison of OO with other.
Software Development Languages and Environments. Programming languages High level languages are problem orientated contain many English words are easier.
The Functions and Purposes of Translators Code Generation (Intermediate Code, Optimisation, Final Code), Linkers & Loaders.
Programming Types of Testing.
Software. What Is Software? software –Also called Computer programs –Are a list of instructions –Instructions are called code –CPU performs the instructions.
COSC 120 Computer Programming
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
Compilers and Interpreters. Translation to machine language Every high level language needs to be translated to machine code There are different ways.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Copyright © 2001 by Wiley. All rights reserved. Chapter 1: Introduction to Programming and Visual Basic Computer Operations What is Programming? OOED Programming.
1 CHAPTER 4 LANGUAGE/SOFTWARE Hardware Hardware is the machine itself and its various individual equipment. It includes all mechanical, electronic.
Course: Introduction to Computers
Systems Software Operating Systems.
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Languages and Environments Higher Computing Unit 2 – Software Development.
Introduction to Programming Lecture Number:. What is Programming Programming is to instruct the computer on what it has to do in a language that the computer.
Systems Software & Operating systems
1 Software Development Topic 2 Software Development Languages and Environments.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
Standard Grade Computing SYSTEM SOFTWARE CHAPTER 19.
Slide 1 Standard Grade Computing Studies Systems Software.
Standard Grade Computing System Software & Operating Systems.
Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Twelfth Edition.
1 2. Program Construction in Java Programming Fundamentals.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
Software Development Homework Revision Ex 2. State two tasks carried out by the project manager during the development of software Oversees whole project.
I Power Higher Computing Software Development Development Languages and Environments.
L ECTURE -9 Topics : Compiler Interpreter Loader Linker. Types of Software..
Intermediate 2 Computing Unit 2 - Software Development Topic 2 - Software Development Languages and Environments.
Chapter One An Introduction to Programming and Visual Basic.
Choosing the write programming language for the job. The choice of language may be based on: The experience and expertise of the development team. The.
Compilers and Interpreters. HARDWARE Machine LanguageAssembly Language High Level Language C++ Visual Basic JAVA Humans.
How to Program? -- Part 1 Part 1: Problem Solving –Analyze a problem –Decide what steps need to be taken to solve it. –Take into consideration any special.
Programming and Languages Dept. of Computer and Information Science IUPUI.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Compilers and Interpreters
Software Design and Development Languages and Environments Computing Science.
OCR A Level F453: The function and purpose of translators Translators a. describe the need for, and use of, translators to convert source code.
Chapter 1: Introduction to Computers and Programming.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Software Engineering Algorithms, Compilers, & Lifecycle.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Software Development – Topic 2 Types of Programming Language.
Software Development Languages and Environments. Computer Languages Just as there are many human languages, there are many computer programming languages.
Topic 2: Hardware and Software
Why don’t programmers have to program in machine code?
Component 1.6.
High and low level languages
Component 1.6.
Introduction to programming
CSCI-235 Micro-Computer Applications
C Programming Hardik H. Maheta.
A451 Theory – 7 Programming 7A, B - Algorithms.
Teaching Computing to GCSE
TRANSLATORS AND IDEs Key Revision Points.
Teaching Computing to GCSE
Translators & Facilities of Languages
Assembler, Compiler, Interpreter
Assembler, Compiler, Interpreter
Lecture 8 Programming Paradigm & Languages. Programming Languages The process of telling the computer what to do Also known as coding.
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
1.3.7 High- and low-level languages and their translators
WJEC GCSE Computer Science
Presentation transcript:

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 1 Classification of Languages 1. Procedural 2. Declarative 3. Event-driven 4. Scripting

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 2 Procedural Languages Procedural languages are the most common to programmers. They are high level languages (contain English words) that use commands and keywords to give instructions to the computer. They have a start and end point and give instructions in sequence. Examples of procedural languages are: Pascaldesigned to teach students programming C++can be used for scientific and business purposes JAVAused to create dynamic webpages

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 3 Declarative Languages Declarative languages use a collection of facts and rules to describe a problem. The user would then type in a query and the program compares what it knows to see if it can return an answer. An example of a declarative language is Prolog.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 4 Event-driven Languages Event-driven languages creates programs that wait for some form of user input (normally clicking a button) before it performs some action. An example of an event-driven language is Visual Basic. Pressing a button is an event, resulting in a piece of code running.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 5 Scripting Languages Scripting languages are used to create small programs in applications (scripts). These programs might be macro (a recorded set of actions) or an applet (a small application). Advantages of scripts; These extend the functionality of the program (it can do more things specific to your job!) These can be assigned to a key press (this is much quicker than going through many menus/windows, etc)

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 6 Macros A macro is a stored set of actions recorded directly from user actions. Code is created from this in a scripting language. It is therefore a sequence of commands to carry out a task. Often a macro is a recording of key presses and menu choices Macros are often used for tasks which are frequently done e.g. sorting a database on the same field every time, or to simplify a series of complex tasks for a non-expert user.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 7 Translators A special program called a translator is required to convert the high level language program into a machine code program, which the computer will then understand.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 8 Compilers Compilers take the whole program file (the source code) and translate it, producing a new file (the object code). The object code is now in binary, and this will run very fast. The new file is in executable form (ready to run) by the operating system. Advantage: Once the code is translated there is no need for any further translation – this will allow faster execution of the program. Disadvantage: Any mistakes in the program e.g. syntax (grammar) errors means it will not run.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 9 Interpreters Interpreters, on the other hand, take the whole program file and translate and execute each line in turn. The translator needs to be running in RAM every time the program is run. Advantage: The interpreter will highlight mistakes as soon as they are typed in. Disadvantage: The translator has to run at the same time as the program is running and each line of the program needs to be translated, so it is slower.

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 10 Example This example helps show the difference between how an interpreter and a compiler translate. A compiler will translate lines 1010 to 1030 once and run these 100 times. An interpreter will translate lines 1010 to 1030 one hundred times and then run these 100 times! 1000PROC test_procedure 1010FOR counter := 1 TO 100 DO 1020PRINT "Hello there" 1030ENDFOR counter 1040ENDPROC test_procedure

Higher Grade Computing Studies 2. Languages and Environments Higher Computing Software Development S. McCrossan 11 Module Library Module libraries contain pre-written and pre-tested sections, or modules, of code. The modules may be a single routine or a group of linked routines performing similar tasks. Advantages You do not have to write code for tasks that are already solved The code will have already been checked for errors The modules will be well documented