Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming.

Slides:



Advertisements
Similar presentations
Numbers Treasure Hunt Following each question, click on the answer. If correct, the next page will load with a graphic first – these can be used to check.
Advertisements

1
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (Parallel Algorithms) Robin Pomplun.
Chapter 7 System Models.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 3 CPUs.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
Objectives: Generate and describe sequences. Vocabulary:
UNITED NATIONS Shipment Details Report – January 2006.
© 2010 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Chapter 5: Repetition and Loop Statements Problem Solving & Program.
1 RA I Sub-Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Casablanca, Morocco, 20 – 22 December 2005 Status of observing programmes in RA I.
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
Exit a Customer Chapter 8. Exit a Customer 8-2 Objectives Perform exit summary process consisting of the following steps: Review service records Close.
Custom Statutory Programs Chapter 3. Customary Statutory Programs and Titles 3-2 Objectives Add Local Statutory Programs Create Customer Application For.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
For Translators and Translation Editors Note-Taking presents... by Riccardo Schiaffino CTA 3rd Annual Conference Boulder, May © Riccardo Schiaffino,
Solve Multi-step Equations
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
Configuration management
Chapter 11: Models of Computation
Table 12.1: Cash Flows to a Cash and Carry Trading Strategy.
PP Test Review Sections 6-1 to 6-6
EIS Bridge Tool and Staging Tables September 1, 2009 Instructor: Way Poteat Slide: 1.
Bellwork Do the following problem on a ½ sheet of paper and turn in.
1 University of Utah – School of Computing Computer Science 1021 "Thinking Like a Computer"
CS 6143 COMPUTER ARCHITECTURE II SPRING 2014 ACM Principles and Practice of Parallel Programming, PPoPP, 2006 Panel Presentations Parallel Processing is.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
Chapter 1 Introduction to Visual Basic Programming and Applications 1 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta.
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
© 2012 National Heart Foundation of Australia. Slide 2.
Adding Up In Chunks.
Note to the teacher: Was 28. A. to B. you C. said D. on Note to the teacher: Make this slide correct answer be C and sound to be “said”. to said you on.
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 15 Programming and Languages: Telling the Computer What to Do.
Chapter 10: The Traditional Approach to Design
Programming Fundamentals 1 st lecture. ELTE 2/ Content  Steps of solving problems – steps of writing a computer.
Analyzing Genes and Genomes
Systems Analysis and Design in a Changing World, Fifth Edition
Chapter 9 Interactive Multimedia Authoring with Flash Introduction to Programming 1.
Chapter 12 Programming Concepts and Languages
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Chapter 12 Working with Forms Principles of Web Design, 4 th Edition.
Essential Cell Biology
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
Programming Languages Structure
Chapter 16 Programming and Languages: Telling the Computer What to Do.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
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.
High level & Low level language High level programming languages are more structured, are closer to spoken language and are more intuitive than low level.
1 3. Computing System Fundamentals 3.1 Language Translators.
Computing System Fundamentals 3.1 Language Translators.
Programming Languages
CSCI-235 Micro-Computer Applications
Programming Concepts and Languages
Developing Applications
Assembler, Compiler, Interpreter
Assembler, Compiler, Interpreter
Presentation transcript:

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

Languages in IT and CS  English …  Pseudo-code  Programming languages  Other formalised languages

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

5 Pseudo-code  A half-way point between the way in which we would describe the steps in a algorithm to another person and the way in which one would write them in a specific programming language to be run on a computer

6 Pseudo-code  Doesn't relate to any specific programming language  More formal than natural human language, less formal than something written in a programming language  You’ll be familiar with flow charts

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

8 Not all computer languages are programming languages  Programming languages –VB –Javascript –Java –VBScript –XSLT  NOT programming languages –HTML –XHTML –XML –UML

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

10 A early history of computing languages  Machine code –completely consists of binary, –is the computer code that machines actually execute –hard for humans to read, write and understand (even when its converted to hex)  Assembler – designed so that humans have some guides to understanding – gets changed into the actual code that is run on the computers  Early higher order languages (eg FORTRAN, COBOL, BASIC, Lisp)

11 The translation from high-level language to machine instructions. Programs in assembly language ADD 20, 20, 24 Programs in a standard programming language (C, C#, Java, VB.Net Total=princ+interest Programs in binary Compile Assemble

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

13 Compiling  Many computing languages are complied in versions that can be run on computers – languages such as C++, Java (most languages that are used for writing applications are compiled)  Other computing languages are interpreted. The machine code is generated by an interpreter at the time that they are run. Most scripting languages are of this sort – eg. JavaScript and VBScript

14 Compiling and Interpreting  Not all computing languages are compiled. Some are interpreted  In interpreted languages, the source code is always present and it when it is run it is interpreted line-by-line and then it is executed. Most scripting languages are of this sort – eg. JavaScript and VBScript

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

16 Classifying computer languages  Syntax  Paradigm  Common uses  Relationship to with the lower-level software and hardware

17 Syntax  There are families of languages that have the same or nearly the same syntax  JavaScript's syntax is very like the syntax of C, C++, C#, Java...  VB.Net's syntax is very like the syntax of Basic, VBScript...

18 Different types of computer languages – different paradigms  Procedural programming languages (eg: C and Basic)  Functional languages (eg: Lisp, Haskell)  Object-oriented languages (eg C++, Smalltalk, Java, VisualBasic.Net)  Scripting languages (JavaScript, Perl, VBScript)  Declarative languages (Prolog)

19  Object-oriented programming –Examples C++, Java –Hopes to parallel ways we think about and analyse problems

20 Scripting languages  Examples: javascript perl, VBScript, php, …  Usually interpreted rather than compiled  Usually "weakly typed"  Relatively quick to write – often used for small jobs You write a script to handle.  Many of them are especially designed for certain purposes (javascript, php and to some extent perl

21 Different types of computer languages – different paradigms  Procedural programming languages (eg: C and Basic)  Functional languages (eg: Lisp, Haskell)  Object-oriented languages (eg C++, Smalltalk, Java, VB.Net)  Scripting languages (JavaScript, Perl, VBScript)  Declarative languages (Prolog)

22 Common uses  Scripting languages (Javascript, VBScript, perl, php)  Application languages  Text manipulation (perl)

23 FAQ  Why are there so many?  Do I need to learn them all?  Which ones are important for me to learn?  How are they different?

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

25 Things we do when programming Writing code Writing tests Running tests Finding problems with the code Fixing problems with the code Interpreting specifications Adding functionality Gathering specifications

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

27 Tools  To understand what we need to build  To create software IDEs Text editors  To test software unit test tools  To debug software - debuggers

28 IDEs  Visual Studio  BlueJ  Excel (?)

29 Tools  Write – IDEs  Test – IDEs debuggers  Design and analyse – UML  IDEs are software applications  UML – (the unified modelling language) helps people design software and communicate their designs

30 An IDE

31 A text editor Syntax highlighting !

32 The cycle for writing code  Write some code ('edit')  Compile the code  Run the code Repeat

33 A tool – UML ("the Unified Modelling language")  Class diagrams are a simple and useful way of expressing relationships between parts of our program in an object-oriented language.

Languages for IT & CS Pseudo-code What HTML isn’t Early history Compiling & interpreting Classifying languages The process of programming Programming tools Bugs Languages

35 All the code we write has bugs  'All' 'Well,...'  Bugs are not good!

36 Harvard Mark II – the 1st bug

37 What to do when you find a bug  Apply the debugging strategy: –Reproduce the error, understand the problem, check the obvious causes –If this does not solve the problem, press on –Try to isolate the problem –Think through the probable process

38 Programming languages  Similiarities – help us to learn other ones –Syntax –Purpose –Paradigm  There are different programming languages for different purposes – different strengths and weaknesses

39 Things we do when programming Writing code Writing tests Running tests Finding problems with the code Fixing problems with the code Interpreting specifications Adding functionality Gathering specifications Is there any special order here?

Terminology you should know  IDE – Integrated programming environment  Scripting language  Pseudo-code  Machine code  Syntax

Exam questions (2009 – CO332) What is an IDE and what does it do? Give an example of an IDE. [2 marks] Draw a flow diagram or write in pseudo-code an algorithm for alphabetising a collection of CDs. [4 marks]