Welcome to CMPE003 Personal Computer Concepts: Hardware and Software Winter 2003 UC Santa Cruz Instructor: Guy Cox.

Slides:



Advertisements
Similar presentations
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 15 Programming and Languages: Telling the Computer What to Do.
Advertisements

Welcome to CMPE003 Personal Computers: Hardware and Software Dr. Chane Fullmer Fall 2002 UC Santa Cruz.
Lecture 1: Overview of Computers & Programming
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Computers Are Your Future
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Module 10 Programming ___tell computers what to do
Programming Creating programs that run on your PC
Computers Are Your Future © 2006 Prentice Hall, Inc.
1 Program Flow Charting How to tackle the beginning stage a program design.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Computers: Tools for an Information Age
Program Flow Charting How to tackle the beginning stage a program design.
Program Flow Charting How to tackle the beginning stage a program design.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Chapter 16 Programming and Languages: Telling the Computer What to Do.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
1414 CHAPTER PROGRAMMING AND LANGUAGES. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved Competencies Describe the six steps of programming.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Objectives Machine language vs.. High-level language Procedure-oriented, object-oriented, and event- driven languages Background of Visual Basic VB Integrated.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
Copyright © 2001 by Wiley. All rights reserved. Chapter 1: Introduction to Programming and Visual Basic Computer Operations What is Programming? OOED Programming.
CS102 Introduction to Computer Programming
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Programming Languages: Telling the Computers What to Do Chapter 16.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Chapter 1 Introduction to Visual Basic Programming and Applications 1 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta.
Chapter Lead Black Slide Powered by DeSiaMore Powered by DeSiaMore.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Learning Objectives Data and Information Six Basic Operations Computer Operations Programs and Programming What is Programming? Types of Languages Levels.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 2 INTRODUCTION TO SOFTWARE DEVELOPMENT: PROGRAMMING & LANGUAGES.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
CHAPTER 1 Overview of Programming and Problem Solving.
PROGRAMMING LANGUAGES Prof. Lani Cantonjos. PROGRAM - set of step-by-step instructions that tells or directs the computer what to do. PROGRAMMING LANGUAGE.
CMPE13Cyrus Bazeghi 1 Programming Languages Telling computers what to do.
Java Programming, Second Edition Chapter One Creating Your First Java Program.
Visual C++ Programming: Concepts and Projects
Discovering Computers 2009 Chapter 13 Programming Languages and Program Development.
Computer Programs and Programming Languages What are low-level languages and high-level languages? High-level language Low-level language Machine-dependent.
Lead Black Slide. © 2001 Business & Information Systems 2/e2 Chapter 5 Information System Software.
Lecture 1 Introduction Figures from Lewis, “C# Software Solutions”, Addison Wesley Richard Gesick.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Copyright © Prentice Hall Programming and Languages Chapter 14 Telling the Computer What to Do.
The Programming Process Define the problem* Make or buy software? Design the program * Code (write) the program Test (debug) the program Document the.
Introduction to Computer Application (IC) MH Room 517 Time : 7:00-9:30pm.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
10/8: Software What is software? –Types of software System software: Operating systems Applications Creating software –Evolution of software development.
Software Development Programming & Languages. Programming: A Five-Step Procedure Define the problem Design a solution Code the program Test the program.
Chapter One An Introduction to Programming and Visual Basic.
Chapter 4 Software. Chapter 4: Software Generations of Languages Each computer is wired to perform certain operations in response to an instruction. An.
Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Chapter 11  Getting ready to program  Hardware Model  Software Model  Programming Languages  Facts about C++  Program Development Process  The Hello-world.
Skill Area 311 Part B. Lecture Overview Assembly Code Assembler Format of Assembly Code Advantages Assembly Code Disadvantages Assembly Code High-Level.
Evolution of C and C++ n C was developed by Dennis Ritchie at Bell Labs (early 1970s) as a systems programming language n C later evolved into a general-purpose.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
Introduction to Programming Languages © 2005 Prentice Hall, Inc. CXC IT Unit 2: Intro. to Programming.
Chapter 1: Introduction to Computers and Programming.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
CSCI-235 Micro-Computer Applications
Computer Programming.
Programming Concepts and Languages
Computer Programming.
Chapter 1 Introduction(1.1)
The Programming Process
PROGRAMMING AND LANGUAGES
Introduction to Computer Programming
Presentation transcript:

Welcome to CMPE003 Personal Computer Concepts: Hardware and Software Winter 2003 UC Santa Cruz Instructor: Guy Cox

January 23, Assignments Assignment #6 – DUE TODAY  Due March 12, 2003 Spreadsheets – (MS Excel)  Generate a monthly budget spreadsheet

January 23, 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

Programming Languages: Telling the Computers What to Do Chapter 16

January 23, 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

January 23, Program Set of instructions written in a programming language that tells the computer what to do

January 23, 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

January 23, The Programming Process Defining the problem Planning the solution Coding the program Testing the program Documenting the program

January 23, 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

January 23, 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

January 23, The Programming Process: Planning the Solution Accept series of numbers and display the average

January 23, 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)

January 23, 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

January 23, The Programming Process: Testing the Program

January 23, 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

January 23, 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?

January 23, 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

January 23, 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

January 23, Assembly Language Mnemonic codes  Add, sub, tst, jmp… Names for memory locations Computer dependent Assembler translates from Assembly to machine language

January 23, GL: 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

January 23, GL: 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

January 23, GL: Natural Languages Resemble natural or spoken English Translates human instructions into code the computer can execute Commonly used by non- programmers to access databases

January 23, Third Generation Languages: Traditional Programming Describe data Describe procedures or operations on that data Data and procedures are separate

January 23, Third Generation Languages FORTRAN  1954  Represent complex mathematical formulas  C/C++ has replaced FORTRAN COBOL  1959  Business  Large complex data files  Formatted business reports

January 23, Average a list of numbers Accept series of numbers and display the average

January 23, Third Generation Languages FORTRAN

January 23, Third Generation Languages COBOL

January 23, 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

January 23, Third Generation Languages BASIC

January 23, 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)

January 23, Third Generation Languages C++

January 23, 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

January 23, 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)

January 23, 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

January 23, Example Class: Boat Subclass: Canoe Subclass: Powerboat Subclass: Sailboat Instance: Chardonnay II OOP: Object-Oriented Programming

January 23, 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

January 23, OOP: Object-Oriented Programming Languages C++ Can write both structured and object-oriented code Visual Basic Rudimentary features of object-oriented language

January 23, 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

January 23, 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

January 23,