Download presentation
Presentation is loading. Please wait.
Published byRachel McCormick Modified over 10 years ago
2
Welcome to CMPE003 Personal Computer Concepts: Hardware and Software Winter 2003 UC Santa Cruz Instructor: Guy Cox
3
January 23, 20032 Assignments Assignment #6 – DUE TODAY Due March 12, 2003 Spreadsheets – (MS Excel) Generate a monthly budget spreadsheet
4
January 23, 20033 Final Project Due no later than March 19, 2003 You can turn in earlier.. Power Point presentation 4 pages Extra points for special effects, animations Up load to your CATS account and write file location on your printout http://www.soe.ucsc.edu/classes/cmpe003/Winter03/finalproject.html
5
Programming Languages: Telling the Computers What to Do Chapter 16
6
January 23, 20035 Objectives Describe what programmers do and do not do Explain how programmers define a problem, plan the solution and then code, test, and document the program List and describe the levels of programming languages – machine, assembly, high level, very high level, and natural Describe the major programming languages in use today Explain the concepts of object-oriented programming
7
January 23, 20036 Program Set of instructions written in a programming language that tells the computer what to do
8
January 23, 20037 Programmers Prepare instructions that make up the program Run the instructions to see if they produce the correct results Make corrections Document the program Interact with Users Managers Systems analysts Coordinate with other programmers to build a complete system
9
January 23, 20038 The Programming Process Defining the problem Planning the solution Coding the program Testing the program Documenting the program
10
January 23, 20039 The Programming Process: Defining the Problem What is the input What output do you expect How do you get from the input to the output
11
January 23, 200310 The Programming Process: Planning the Solution Algorithms Detailed solutions to a given problem Sorting records, adding sums of numbers, etc.. Design tools Flowchart Pseudocode Has logic structure, but no command syntax Desk-checking Personal code design walk through Peer Reviews “Code walk through”/structured walk through
12
January 23, 200311 The Programming Process: Planning the Solution Accept series of numbers and display the average
13
January 23, 200312 The Programming Process: Coding the Program Translate algorithm into a formal programming language Within syntax of the language How to key in the statements? Text editor Programming environment Interactive Development Environment (IDE)
14
January 23, 200313 The Programming Process: Testing the Program Translation – compiler Translates from source module into object module Detects syntax errors Link – linkage editor (linker) Combines object module with libraries to create load module Finds undefined external references Debugging Run using data that tests all statements Logic errors
15
January 23, 200314 The Programming Process: Testing the Program
16
January 23, 200315 The Programming Process: Documenting the Program Performed throughout the development Material generated during each step Problem definitions Program plan Comments within source code Testing procedures Narrative Layouts of input and output Program listing
17
January 23, 200316 Choosing a Language Choice made for you What is available? Required interface What do you know best? Which language lends itself to the problem to be solved?
18
January 23, 200317 Language Generations Low levels closer to binary High levels closer to human code Five Generations: Procedural Languages Machine language Assembly language High-level language – 3GL Nonprocedural Languages Very high-level language – 4GL Natural language – 5GL
19
January 23, 200318 Machine Language Written in strings of 0 and 1 Displayed as hexadecimal Only language the computer understands All other programming languages are translated to machine language Computer dependent
20
January 23, 200319 Assembly Language Mnemonic codes Add, sub, tst, jmp… Names for memory locations Computer dependent Assembler translates from Assembly to machine language
21
January 23, 200320 3GL: High-Level Languages 1960s Languages designed for specific types of problems and used syntax familiar to the people in that field FORTRAN: (FORmula TRANslator) Math COBOL: (COmmon Business Oriented Language) Business Compile translates from high-level language to machine language
22
January 23, 200321 4GL: Very High-Level Languages Programmer specifies the desired results; the language develops the solution Ten times more productive with a 4GL than a procedural language Query Languages Retrieve information from databases Easy to learn and use
23
January 23, 200322 5GL: Natural Languages Resemble natural or spoken English Translates human instructions into code the computer can execute Commonly used by non- programmers to access databases
24
January 23, 200323 Third Generation Languages: Traditional Programming Describe data Describe procedures or operations on that data Data and procedures are separate
25
January 23, 200324 Third Generation Languages FORTRAN 1954 Represent complex mathematical formulas C/C++ has replaced FORTRAN COBOL 1959 Business Large complex data files Formatted business reports
26
January 23, 200325 Average a list of numbers Accept series of numbers and display the average
27
January 23, 200326 Third Generation Languages FORTRAN
28
January 23, 200327 Third Generation Languages COBOL
29
January 23, 200328 Third Generation Languages BASIC (Beginners All-purpose Symbolic Instruction Code) 1965 Popularity grew with PC popularity (1970s) Easy to learn Used little memory Bill Gates beginnings.. MS Basic RPG 1965 Report generation – quickly creates complex reports
30
January 23, 200329 Third Generation Languages BASIC
31
January 23, 200330 Third Generation Languages MS Visual Basic 1987 Create complex user interfaces Uses standard Windows features Event-driven – user controls the program C 1972 Efficient code – the language of UNIX Portability C++ Enhancement of C (Object Oriented)
32
January 23, 200331 Third Generation Languages C++
33
January 23, 200332 OOP: Object-Oriented Programming Object Self-contained unit of data and instructions Includes Related facts (data) Related functions (instructions to act on that data) Example Object:cat Data:feet, nose, fur, tail Functions:eat, purr, scratch, walk Cat:Kitty, Tabby
34
January 23, 200333 OOP: Object-Oriented Programming Encapsulation – describes the objects self- containment Attributes – the facts that describe the object Methods / operations – the instructions that tell the object what to do Instance – one occurrence of an object Messages – activate methods Polymorphism Example: A ‘walk’ message causes Kitty to move (in a cat-like way)
35
January 23, 200334 OOP: Object-Oriented Programming Class – defines characteristics unique to all objects of that class Inheritance – Objects of a class automatically posses all of the characteristics of the class from which it was derived Subclass – inherits characteristics from class and defines additional characteristics that are unique Instance – actual occurrence of an object
36
January 23, 200335 Example Class: Boat Subclass: Canoe Subclass: Powerboat Subclass: Sailboat Instance: Chardonnay II OOP: Object-Oriented Programming
37
January 23, 200336 OOP: Object-Oriented Programming Using Objects in Business Class:Customer Subclass:Retail or Wholesale Instance: John Smith Retail and Wholesale customers automatically inherit customer address since it is part of the Customer class
38
January 23, 200337 OOP: Object-Oriented Programming Languages C++ Can write both structured and object-oriented code Visual Basic Rudimentary features of object-oriented language
39
January 23, 200338 Third Generation Languages Java Cross-platform Java Virtual Machine (JVM) Sits on top of computer’s regular platform Translates compiled Java code into instructions for the specific platform Applets
40
January 23, 200339 Learning to Program Enroll in courses Learn logic as well as language syntax Read books, articles Use tutorials View Sample code Write code (start small) Enjoy
41
January 23, 200340
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.