Chapter 13 Programming Languages and Program Development

Slides:



Advertisements
Similar presentations
Computers Are Your Future
Advertisements

Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming and Languages Chapter 13.
Algorithms and Program Development
Programming Creating programs that run on your PC
Programming System development life cycle Life cycle of a program
Computers Are Your Future © 2006 Prentice Hall, Inc.
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
Computers: Tools for an Information Age
Computer Programming How Can You Create Your Own Software? Chapter 11.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
Discovering Computers 2008 Chapter 13 Programming Languages and Program Development.
Program Development and Programming Languages
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
Chapter 1 Program Design
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Computer Programming How Can You Create Your Own Software? Chapter 13.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Building Applications.
Your Interactive Guide to the Digital World Discovering Computers 2012.
CS102 Introduction to Computer Programming
© Paradigm Publishing Inc Chapter 12 Programming Concepts and Languages.
Chapter 11 Information System Development and Programming Languages.
Chapter 13 Programming Languages and Program Development.
Chapter 13 Programming Languages and Program Development 1.
Discovering Computers 2009 CSC 1100 Computer Literacy Dr. Carlos E. Otero Introduction to Computer Programming.
Program Development and Programming Languages
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Computers Are Your Future Tenth Edition Chapter 11: Programming Languages & Program Development Copyright © 2009 Pearson Education, Inc. Publishing as.
Programming Languages: Telling the Computers What to Do Chapter 16.
Computers Are Your Future Eleventh Edition
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
CC111 Lec#5: Program Development 1 Program Development and Programming Languages Lecture 4 Reference :Understanding Computers Chapter 13.
Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 2: Developing a Program.
Chapter 11 Information System Development and Programming Languages
Alexandria University Faculty of Science Computer Science Department Introduction to Programming (CS 102) C++ Programminhg.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
Chapter 11 Information System Development and Programming Languages
Programming Languages 1.07a.  A computer program is a series of instructions that direct a computer to perform a certain task.  A programming language.
Chapter 15 Program Development and Programming Languages.
Computer Concepts 2014 Chapter 12 Computer Programming.
Describe the Program Development Cycle. Program Development Cycle The program development cycle is a series of steps programmers use to build computer.
1 Chapter 13 Understanding Computers, 11 th Edition 13 Program Development and Programming Languages TODAY AND TOMORROW 11 th Edition CHAPTER.
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.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Chapter 13 Programming Languages and Program Development.
1 Chapter 13 Programming Languages and Program Development Tools.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
5.0 PROGRAMMING Duration: 10 weeks Prepared by Ong Lay Peng Copyright © 2007.
Discovering Computers Fundamentals, 2010 Edition Living in a Digital World.
Alexandria University Faculty of Science Computer Science Department Introduction to Programming C++
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 13 A & B Programming Languages and the.
Introduction to Programming Languages © 2005 Prentice Hall, Inc. CXC IT Unit 2: Intro. to Programming.
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
CHAPTER ELEVEN Information System Development and Programming Languages Copyright © Cengage Learning. All rights reserved.
Chapter 13 Programming Languages and Program Development
IS220 Computer Programming
Chapter 13 Programming Languages and Program Development
Objectives Overview Differentiate between machine and assembly languages Identify and discuss the purpose of procedural programming languages, and describe.
An Introduction to Visual Basic .NET and Program Design
Developing Applications
and Program Development
Presentation transcript:

Chapter 13 Programming Languages and Program Development

Applications vs. Program Languages User Oriented CPU Oriented

Program Language vs. Application Procedural Non-Procedural

Program Language vs. Application You Communicate CPU Application

Computer Programs and Programming Languages What is a computer program? Series of instructions that tells CPU what to do known as “perform tasks” Created by a programmer using a programming language p. 664 Fig. 13-1 Next

Procedural Languages Visual Studio 2010 in beta

VB 2010 beta

What is debugging? Process of locating and correcting syntax and logic errors in program Dr. Grace Hopper Harvard University, September 9, 1945

Why Program ?????? Communicate with programmer on the job Customize software Increase computer understanding Increase software understanding Promotion within the company Challenging and Fun Computer Programming Video

Computer Programs and Programming Languages What are low-level languages and high-level languages? High-level language Low-level language Machine and assembly languages are low-level Machine-dependent runs only on one type of computer p. 664 Next

Low-Level Languages What is machine language? Only language computer directly recognizes Uses a series of binary digits (1s and 0s) with a combination of numbers and letters that represent binary digits A dump p. 665 Fig. 13-2 Next

Low-Level Languages What is assembly language? Instructions made up of symbolic instruction codes, meaningful abbreviations and codes Source program contains code to be converted to machine language p. 666 Fig. 13-3 Next

Computer Programs and Programming Languages What are high-level languages? High-level language Often machine-independent can run on many different types of computers and operating systems p. 665 Next

Uses series of English-like words to write instructions Procedural Languages What is a procedural language? Programmer writes instructions that tell computer what to accomplish and how to do it Uses series of English-like words to write instructions BASIC, COBOL, and C Next

Procedural Languages What is COBOL? Designed for business applications English-like statements make code easy to read, write, and maintain COmmon Business-Oriented Language p. 668

Procedural Languages What is C? Powerful language originally designed to write operating system software Requires professional programming skills } for(int b = 0; b < 1; b++) { outp(PortAddr, 50); while((inp(PortAddr + 5) & 0x020) == 0); for(int c = 0; c < 1; c++) outp(PortAddr, 32); while((inp(PortAddr + 5) & 0x020) == 0); p. 668

Object-Oriented Programming Languages What is an object-oriented programming (OOP) language? Used to implement object-oriented design Major benefit is ability to reuse existing objects Event-driven—checks for and responds to set of events Java, C++, C#, and Visual Basic are complete object-oriented languages Object is item that contains data and procedures that act on data Event is action to which program responds p. 669 Next

Object-Oriented Programming Languages What is Java? Developed by Sun Microsystems Similar to C++ Used to develop Web applications Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Java below Chapter 13 p. 669 Fig. 13-8 Next

Object-Oriented Programming Languages What is C++? Includes all elements of C, plus additional features for working with object-oriented concepts Used to develop database and games because of its speed; applications; operating systems Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click C++ below Chapter 13 p. 670 Fig. 13-9 Next

Object-Oriented Programming Languages What is C#? Object-oriented programming language based on C++ Accepted as a standard for Web applications and XML-based Web services Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click C# below Chapter 13 p. 670 Next

Other Programming Languages and Development Tools A 4GL (fourth-generation language) is a nonprocedural language that enables users and programmers to access data in a database Structured Query Language Open Portland.accdb and do query Portland.accdb

Other Programming Languages and Development Tools Classic programming languages include: Ada ALGOL APL BASIC Forth FORTRAN HyperTalk LISP Logo Modula-2 Pascal PILOT PL/1 Prolog RPG Smalltalk

Other Program Development Tools What is a macro? Series of statements that instructs an application how to complete a task Prevents creating the same task over and over again How to create a simple macro in Microsof Excel Show Exit database and Exit switchboard in Access. p. 676 - 677 Fig. 13-17 Next

Web Page Development What is HTML (Hypertext Markup Language)? Used to create Web pages Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click HTML below Chapter 13 p. 678 Fig. 13-18 Next

Web Page Development What is the common gateway interface (CGI)? Communications standard that defines how Web server communicates with outside sources CGI script—program that manages sending and receiving across CGI http://www.harrietcarter.com/ p.679 - 680 Fig. 13-19

Web Page Development What is a scripting language? Typically easy to learn and use JavaScript Perl (Practical Extraction and Report Language) PHP (PHP: Hypertext Preprocessor) VBScript (Visual Basic, Scripting Edition) COD Script p. 680 - 681 Fig. 13-20 Next

Web Page Development What is Web page authoring software? Creates sophisticated Web pages without using HTML Generates HTML Dreamweaver Expression Web Flash p. 683 Next

Web Page Development Web 2.0 allows Web sites to provide a means for users to: Share personal information Allow users to modify Web site content Have application software built into the site

Web Page Development Most Web 2.0 sites use APIs Application Programming Interfaces An API enables programmers to interact with an environment such as a Web site or operating system

Multimedia Program Development What is multimedia authoring software? Combines text, graphics, animation, audio, and video into interactive presentation Used for computer-based training (CBT) and Web-based training (WBT) Software includes Toolbook, Authorware, and Director Multimedia Presentation p. 684 Fig. 13-22

The Program Development Cycle What is the program development cycle? Steps programmers use to build computer programs Programming team—Group of programmers working on program Scientific Method? p. 685 - 686 Fig. 13-23 Next

Structured Programming Starting in the 1960s, a number of techniques evolved to make program design more systematic and programs themselves easier to read and maintain. This type of design became known as structured programming. Avoid GOTO Statements Starting in the 1960s, a number of techniques evolved to make program design more systematic and programs themselves easier to read and maintain. These methods have often been identified with the term structured programming. Program Control Structures: Advocates of structured programming have shown that any program can be constructed out of three fundamental control structures: sequence, selection, and looping.

Step 1 — Analyze Requirements What is involved in analyzing the requirements? Review requirements Meet with systems analyst and users Identify input, output, processing, and data components IPO chart—Identifies program’s inputs, outputs, and processing steps p. 686 Fig. 13-24 Next

Step 2 — Design Solution What is involved in designing the solution? Object-oriented design Devise solution algorithm, step-by-step procedure to solve problem Two approaches Structured design, sometimes called top-down design Programmer begins with general design and moves toward detailed design p. 687 Next

Design Solution Pseudocode Flowcharts Structure Charts The design of the program addresses all of the tasks the program must perform and how to organize or sequence them when coding the program. Design tools to plan the solution include: Pseudocode Flowcharts Structure Charts The design, or plan, of the program must address all of the tasks the program must perform as well as how to organize or sequence them when coding the program. Program design tools help both analysts and programmers plan programs. Many such tools have been developed, but three of the most important are structure charts, program flowcharts, and pseudocode.

Step 2 — Design Solution What is pseudocode? Uses condensed form of English to convey program logic p. 690 and 692 Fig. 13-35 Next

Design Solution - Pseudocode The design, or plan, of the program must address all of the tasks the program must perform as well as how to organize or sequence them when coding the program. Program design tools help both analysts and programmers plan programs. Many such tools have been developed, but three of the most important are structure charts, program flowcharts, and pseudocode.

Step 2 — Design Solution What is a program flowchart? Graphically shows logic in solution algorithm p. 690 Fig. 13-32 Next

Step 2 — Design Solution What is flowcharting software? Used by programmers to develop flowcharts Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Flowcharting Software below Chapter 13 p. 690 - 691 Fig. 13-34 Next

Hierarchy Chart Hierarchy charts depict the overall organization of a program. Program modules should be arranged hierarchically, in a top-down design. Structure charts—unlike flowcharts and pseudocode, which show the specific processing logic involved in step-by-step program execution—depict the overall organization of a program. Structure charts show how the modules of a program—logically related operations that perform a well-defined task—are defined and how they connect to each other hierarchically (show the ET-99 here). Program modules should be arranged hierarchically, in a top-down fashion, so that their relationship to each other is apparent. Top-down design indicates that modules are defined first at the highest levels of the hierarchy, and then at successively lower levels.

Step 2 — Design Solution What is a hierarchy chart? Shows program modules graphically Also called structure chart p. 687 Fig. 13-25 Next

Step 2 – Design Solution What is structured design? sequence control structure Technique that builds all program logic from combination of three basic control structures selection control structure repetition control structure

Step 2 — Design Solution What is a sequence control structure? Control structure that shows actions following each other in order Control structure depicts logical order of program instructions p. 688 Fig. 13-27 Next

Step 2 — Design Solution What is a selection control structure? Tells program which action to take, based on a certain condition Two types Case control structure If-then-else control structure—yields one of two possibilities: true or false p. 689 Fig. 13-28 Next

Step 2 — Design Solution What is a repetition control structure? Enables program to perform one or more actions repeatedly Do-while control structure—repeats as long as condition is true Do-until control structure—repeats as long as the condition is false p. 689 - 690 Figs. 13-30–13-31 Next

Step 3 — Validate Design What is involved in validating the design? Check program design for accuracy Programmer checks logic for correctness and attempts to uncover logic errors What is involved in validating the design? Desk check programmers use test data to step through logic Logic error design flaw that causes inaccurate results Inspection systems analyst reviews deliverables during the system development cycle Test data sample data that mimics real data that program will process p. 693 Next

Step 4 — Implement Design What is implementation? Writing the code that translates the design into a program Syntax—rules that specify how to write instructions Comments—program documentation Extreme programming (XP)—coding and testing as soon as requirements are defined p. 693 - 694 Fig. 13-38 Next

Ensure program runs correctly and is error free Step 5 — Test Solution Ensure program runs correctly and is error free Debugging is the process of making sure a program is free of errors, or “bugs”. Logic errors Syntax errors Testing insures that the programs work as planned. Alpha testing Beta testing Design Code Logic Error Debug Debugging is the process of making sure a program is free of errors, or “bugs.” Debugging is usually a lengthy process, often amounting to more than 50 percent of the total development time for a program. Preliminary Debugging: The debugging process often begins after the program has been entered into the computer system. Rarely is a program error free the first time it runs. The computer's systems software usually provides the programmer with a list of informative error messages indicating the source of many of the errors. Two common types of errors are syntax errors and logic errors. A syntax error occurs when the programmer has not followed the rules of the language. A logic error, or run-time error, results when the command syntax is correct but the program is producing incorrect results. Testing: At some point in the preliminary debugging process, the program will appear to be correct. At this point, the programmer, or preferably someone else, will run the original program with extensive test data. Good test data will subject the program to all the conditions it might conceivably encounter when finally implemented. Most companies run on-site alpha tests to test programs; companies in the business of selling software also commonly run beta tests by distributing preliminary versions of the program to outside users. Syntax Error Document

Step 6 — Document Solution What is involved in documenting the solution? Programmer performs two activities Reviews program code—removes dead code, program instructions that program never executes Reviews documentation p. 696 Next

Summary of Programming Languages and Program Development Various programming languages used to write and develop computer programs Web development and multimedia development tools The program development cycle and the tools used to make this process efficient Chapter 13 Complete