IS220 Computer Programming

Slides:



Advertisements
Similar presentations
What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word processor), it must be given the instructions.
Advertisements

Living in a Digital World Discovering Computers 2011.
Computers Are Your Future
Chapter 13 Programming Languages and Program Development
Programming Creating programs that run on your PC
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
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.
© Prentice Hall CHAPTER 3 Computer Software.
Objectives Overview Define system development and list the system development phases Identify the guidelines for system development Discuss the importance.
Chapter 3 Software Two major types of software
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Building Applications.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
© Paradigm Publishing Inc Chapter 12 Programming Concepts and 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.
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.
Program development & programming languages Chapter 13.
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.
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
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.
1 Chapter 13 Understanding Computers, 11 th Edition 13 Program Development and Programming Languages TODAY AND TOMORROW 11 th Edition CHAPTER.
Chapt. 10. What’s a Program? A set of instructions -- that lead to the accomplishment of an objective.
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.
Chapter 13 Programming Languages and Program Development.
1 Chapter 13 Programming Languages and Program Development Tools.
Chapter 12 Information Systems and Program Development Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
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.
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
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 1 Coding Introduction.
Chapter 13 Programming Languages and Program Development
Project 1 Introduction to HTML.
Chapter 1 Introduction to HTML.
CSCI-235 Micro-Computer Applications
Introduction to Visual Basic 2008 Programming
Project 1 Introduction to HTML.
Programming Concepts and Languages
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.
Chapter 4 Computer Software.
Developing Applications
Unit# 8: Introduction to Computer Programming
Computer Programming.
Describe uses of web databases, types of databases, and Big Data
Chapter 12 Programming Concepts and Languages.
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Chapter 1 Introduction(1.1)
and Program Development
Principles of Programming Languages
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
Programming Logic and Design Eighth Edition
Presentation transcript:

IS220 Computer Programming Prerequisite: IS201 is201_cslo_5: Explain programming languages 5.1 Identify and distinguish between various programming languages Is220_cslo_1.1-5: Explain computer programming concepts. 1.1 Describe features and benefits of prevalent programming languages 1.1 Describe the general phases of program development, including planning, coding, compiling, linking, and debugging 1.3 Explain three types of basic instructions – input, process output 1.4 Identify programming tools- flowcharts, pseudocode,  hierarchy chart  and documentation basics 1.5 Define the following terms related to object-oriented programming, such as objects, encapsulation, classes, instantiation, properties, methods, and events

CIS_PSLO_1 Assessment CY F2015-S2015 Assessment Plan: IS201, IS220, and IS280 Assessment Strategy: Use essay to access student’s understanding of computer programming concepts. What is a programming language? Compare and contrast the two categories of languages, and describe in detail the two main examples of low-level languages, including a discussion of their uses.

Computer Programs and Programming Languages A computer program is a series of instructions that directs a computer to perform tasks Created by a programmer using a programming language What is a programming language? their uses. ANS: A programming language is a set of words, symbols, and codes that enables a programmer to communicate instructions to a computer. Just as humans speak a variety of languages (English, Spanish, French, and so on), programmers use a variety of programming languages and tools to write, or code, a program. Several hundred programming languages exist today. Each language has its own rules for writing the instructions. Languages often are designed for specific purposes, such as scientific applications, business solutions, or Web page development.

Computer Programs and Programming Languages What is a programming language? A programming language is a set of words, symbols, and codes that enables a programmer to communicate instructions to a computer. What is a programming language? ANS: A programming language is a set of words, symbols, and codes that enables a programmer to communicate instructions to a computer. Just as humans speak a variety of languages (English, Spanish, French, and so on), programmers use a variety of programming languages and tools to write, or code, a program. Several hundred programming languages exist today. Each language has its own rules for writing the instructions. Languages often are designed for specific purposes, such as scientific applications, business solutions, or Web page development.

Two categories of languages Low-level languages High level languages Compare and contrast the two categories of languages, and describe in detail the two main examples of low-level languages, including a discussion of their uses. Two categories of languages Low-level languages High level languages Compare and contrast the two categories of languages, and describe in detail the two main examples of low-level languages, including a discussion of their uses. two categories of languages are low-level and high-level. A low-level language is a programming language that is machine dependent. A machine-dependent language runs on only one particular type of computer. These programs are not easily portable to other types of computers. Each language instruction in a low-level language usually equates to a single machine instruction. With a high-level language, by contrast, each language instruction typically equates to multiple machine instructions. High-level languages often are machine independent. A machine-independent language can run on many different types of computers and operating systems. Two types of low-level languages are machine languages and assembly languages. Machine language, known as the first generation of programming languages, is the only language the computer directly recognizes. Machine language instructions use a series of binary digits (1s and 0s) or a combination of numbers and letters that represents binary digits. The binary digits correspond to the on and off electrical states. As you might imagine, coding in machine language is tedious and time-consuming. With an assembly language, the second generation of programming languages, a programmer writes instructions using symbolic instruction codes. Symbolic instruction codes are meaningful abbreviations. With an assembly language, a programmer writes abbreviations such as A for addition, C for compare, L for load, and M for multiply. Assembly languages also use symbolic addresses. A symbolic address is a meaningful name that identifies a storage location. For example, a programmer can use the name RATE to refer to the storage location that contains a pay rate. Despite these advantages, assembly languages can be difficult to learn. In addition, programmers must convert an assembly language program into machine language before the computer can execute, or run, the program. That is, the computer cannot execute the assembly source program. A source program is the program that contains the language instructions, or code, to be converted to machine language. To convert the assembly language source program into machine language, programmers use a program called an assembler. One assembly language instruction usually equates to one machine language instruction. In some cases, however, the assembly language includes macros. An assembly language macro generates many machine language instructions for a single assembly language instruction. Macros save the programmer time during program development. Today, assembly languages primarily are used to increase the performance of critical tasks or to control hardware.

A low-level language is a programming language that is machine dependent. 1. A machine-dependent language runs on only one particular type of computer. 2. These programs are not easily portable to other types of computers. 3. Each language instruction in a low-level language usually equates to a single machine instruction Compare and contrast the two categories of languages, and describe in detail the two main examples of low-level languages, including a discussion of their uses. two categories of languages are low-level and high-level. A low-level language is a programming language that is machine dependent. A machine-dependent language runs on only one particular type of computer. These programs are not easily portable to other types of computers. Each language instruction in a low-level language usually equates to a single machine instruction. With a high-level language, by contrast, each language instruction typically equates to multiple machine instructions. High-level languages often are machine independent. A machine-independent language can run on many different types of computers and operating systems. Two types of low-level languages are machine languages and assembly languages. Machine language, known as the first generation of programming languages, is the only language the computer directly recognizes. Machine language instructions use a series of binary digits (1s and 0s) or a combination of numbers and letters that represents binary digits. The binary digits correspond to the on and off electrical states. As you might imagine, coding in machine language is tedious and time-consuming. With an assembly language, the second generation of programming languages, a programmer writes instructions using symbolic instruction codes. Symbolic instruction codes are meaningful abbreviations. With an assembly language, a programmer writes abbreviations such as A for addition, C for compare, L for load, and M for multiply. Assembly languages also use symbolic addresses. A symbolic address is a meaningful name that identifies a storage location. For example, a programmer can use the name RATE to refer to the storage location that contains a pay rate. Despite these advantages, assembly languages can be difficult to learn. In addition, programmers must convert an assembly language program into machine language before the computer can execute, or run, the program. That is, the computer cannot execute the assembly source program. A source program is the program that contains the language instructions, or code, to be converted to machine language. To convert the assembly language source program into machine language, programmers use a program called an assembler. One assembly language instruction usually equates to one machine language instruction. In some cases, however, the assembly language includes macros. An assembly language macro generates many machine language instructions for a single assembly language instruction. Macros save the programmer time during program development. Today, assembly languages primarily are used to increase the performance of critical tasks or to control hardware. Page 665Figure 13-2

A high-level language- a programming language that is machine independent. 1. A machine-independent language can run on many different types of computers and operating systems 2. Each language instruction typically equates to multiple machine instructions. Compare and contrast the two categories of languages, and describe in detail the two main examples of low-level languages, including a discussion of their uses. two categories of languages are low-level and high-level. A low-level language is a programming language that is machine dependent. A machine-dependent language runs on only one particular type of computer. These programs are not easily portable to other types of computers. Each language instruction in a low-level language usually equates to a single machine instruction. With a high-level language, by contrast, each language instruction typically equates to multiple machine instructions. High-level languages often are machine independent. A machine-independent language can run on many different types of computers and operating systems. Two types of low-level languages are machine languages and assembly languages. Machine language, known as the first generation of programming languages, is the only language the computer directly recognizes. Machine language instructions use a series of binary digits (1s and 0s) or a combination of numbers and letters that represents binary digits. The binary digits correspond to the on and off electrical states. As you might imagine, coding in machine language is tedious and time-consuming. With an assembly language, the second generation of programming languages, a programmer writes instructions using symbolic instruction codes. Symbolic instruction codes are meaningful abbreviations. With an assembly language, a programmer writes abbreviations such as A for addition, C for compare, L for load, and M for multiply. Assembly languages also use symbolic addresses. A symbolic address is a meaningful name that identifies a storage location. For example, a programmer can use the name RATE to refer to the storage location that contains a pay rate. Despite these advantages, assembly languages can be difficult to learn. In addition, programmers must convert an assembly language program into machine language before the computer can execute, or run, the program. That is, the computer cannot execute the assembly source program. A source program is the program that contains the language instructions, or code, to be converted to machine language. To convert the assembly language source program into machine language, programmers use a program called an assembler. One assembly language instruction usually equates to one machine language instruction. In some cases, however, the assembly language includes macros. An assembly language macro generates many machine language instructions for a single assembly language instruction. Macros save the programmer time during program development. Today, assembly languages primarily are used to increase the performance of critical tasks or to control hardware.

Two types of low-level languages Machine language Assembly language Two types of low-level languages are machine languages and assembly languages. Machine language, known as the first generation of programming languages, is the only language the computer directly recognizes. Machine language instructions use a series of binary digits (1s and 0s) or a combination of numbers and letters that represents binary digits. The binary digits correspond to the on and off electrical states. As you might imagine, coding in machine language is tedious and time-consuming. Page 665 Figure 13-2

Low-Level Languages Machine language is the first generation of programming languages Only language the computer directly recognizes Two types of low-level languages are machine languages and assembly languages. Machine language, known as the first generation of programming languages, is the only language the computer directly recognizes. Machine language instructions use a series of binary digits (1s and 0s) or a combination of numbers and letters that represents binary digits. The binary digits correspond to the on and off electrical states. As you might imagine, coding in machine language is tedious and time-consuming. Page 665 Figure 13-2

Low-Level Languages Assembly language is the second generation of programming languages Programmer writes instructions using symbolic instruction codes A source program contains the code to be converted to machine language Symbolic instruction codes are meaningful abbreviations. With an assembly language, a programmer writes abbreviations such as A for addition, C for compare, L for load, and M for multiply. Assembly languages also use symbolic addresses. A symbolic address is a meaningful name that identifies a storage location. For example, a programmer can use the name RATE to refer to the storage location that contains a pay rate. Despite these advantages, assembly languages can be difficult to learn. In addition, programmers must convert an assembly language program into machine language before the computer can execute, or run, the program. That is, the computer cannot execute the assembly source program. A source program is the program that contains the language instructions, or code, to be converted to machine language. To convert the assembly language source program into machine language, programmers use a program called an assembler. One assembly language instruction usually equates to one machine language instruction. In some cases, however, the assembly language includes macros. An assembly language macro generates many machine language instructions for a single assembly language instruction. Macros save the programmer time during program development. Today, assembly languages primarily are used to increase the performance of critical tasks or to control hardware. Pages 665 – 666 Figure 13-3

High level languages Machine independent Resemble human languages Easy to read and write Pages 666 - 667

Procedural Languages In a procedural language, the programmer writes instructions that tell the computer what to accomplish and how to do it Third-generation language (3GL) A compiler translates an entire program before executing it An interpreter converts and executes one code statement at a time Pages 666 - 667

Discovering Computers 2010: Living in a Digital World Chapter 13 Procedural Languages Page 667 Figures 13-4 – 13-5 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Procedural Languages COBOL (COmmon Business-Oriented Language) is designed for business applications, but easy to read because of the English-like statements Pages 668 – 669 Figure 13-7 Discovering Computers 2010: Living in a Digital World Chapter 13

Object-Oriented Programming Languages and Program Development Tools An object-oriented programming (OOP) language allows programmers the ability to reuse and modify existing objects Other advantages include: Objects can be reused Programmers create applications faster Work well in a RAD environment Most program development tools are IDEs RAD- Rapid Application Development Method of developing software in which a programmer writes and implements a program in segments instead of waiting until an entire program is completed IDE- Integrated Development Environment include program development tools for building graphical user interfaces, an editor for entering for program code, a compiler and or interpreter and a debugger Page 669 Discovering Computers 2010: Living in a Digital World Chapter 13

Object-Oriented Programming Languages and Program Development Tools Java is an object-oriented programming language developed by Sun Microsystems The Just-in-time (JIT) compiler to convert the bytecode into machine-dependent code Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Java Platforms below Chapter 13 Page 670 Figure 13-8

Object-Oriented Programming Languages and Program Development Tools The Microsoft .NET Framework allows almost any type of program to run on the Internet or an internal business network, as well as computers and mobile devices Features include: CLR (Common Language Runtime) Classes Page 670

Object-Oriented Programming Languages and Program Development Tools C++ is an extension of the C programming language Additional features for working with objects, classes, events, and other object-oriented concepts C# is based on C++ and was developed by Microsoft C is powerful language that requires professional programming skills Many programmer use C for business and scientific problems Today many programs are written in C like the OS word, spreadsheet programs It runs in almost type of computers and OS But most often with the UNIX and Linus OS Page 671 Figure 13-9 Discovering Computers 2010: Living in a Digital World Chapter 13

Object-Oriented Programming Languages and Program Development Tools Visual Studio is Microsoft’s suite of program development tools Visual Basic is based on the BASIC programming language Visual C++ is based on C++ Visual C# combines the programming elements of C++ with an easier, rapid-development environment Pages 671 - 673

Object-Oriented Programming Languages and Program Development Tools Pages 671 - 672

Object-Oriented Programming Languages and Program Development Tools A visual programming language is a language that uses a visual or graphical interface for creating all source code Borland’s Delphi is a powerful program development tool that is ideal for building large-scale enterprise and Web applications in a RAD environment Page 673 Discovering Computers 2010: Living in a Digital World Chapter 13

Object-Oriented Programming Languages and Program Development Tools Page 673 Figure 13-11 Discovering Computers 2010: Living in a Digital World Chapter 13

Object-Oriented Programming Languages and Program Development Tools PowerBuilder is a powerful program development RAD tool Best suited for Web-based, .NET, and large-scale enterprise object-oriented applications Page 674 Figure 13-12 Discovering Computers 2010: Living in a Digital World Chapter 13

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 One popular 4GL is SQL Page 674 Figure 13-13 Discovering Computers 2010: Living in a Digital World Chapter 13

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 Page 675 Figure 13-14 Discovering Computers 2010: Living in a Digital World Chapter 13

Other Programming Languages and Development Tools An application generator is a program that creates source code or machine code from a specification of the required functionality Often bundled as part of a DBMS Page 676 Figure 13-15 Discovering Computers 2010: Living in a Digital World Chapter 13

Other Programming Languages and Development Tools A macro is a series of statements that instructs an application how to complete a task You usually create the macro in one of two ways: Record the macro with a macro recorder Write the macro Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Macros below Chapter 13 Pages 676 - 677 Discovering Computers 2010: Living in a Digital World Chapter 13

Other Programming Languages and Development Tools Page 677 Figure 13-16 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development HTML is a special formatting language that programmers use to format documents for display on the Web XHTML is a markup language that allows Web sites to be displayed more easily on mobile devices Page 678 Figure 13-17 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development XML allows Web developers to create customized tags and use predefined tags to display content appropriately on various devices WML is a subset of XML and is used to design pages for microbrowsers Two applications of XML are RSS 2.0 and ATOM Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click XML below Chapter 13 Page 679 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Page 679 Figure 13-18 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Web browsers can execute short programs to add interactive elements to Web pages To send and receive information between your computer and a Web server, these programs use the CGI (common gateway interface) Scripts Applets Servlets ActiveX controls Page 680 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Page 681 Figure 13-19 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Programmers write scripts, applets, servlets, or ActiveX controls using a variety of languages JavaScript Perl PHP Rexx Tcl VBScript Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click PHP below Chapter 13 Pages 682 - 683 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Page 682 Figure 13-20 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Dynamic HTML (DHTML) allows Web developers to include more graphical interest and interactivity Cascading style sheets (CSS) contain the formats for how a particular object should be displayed Ruby on Rails (RoR) provides technologies for developing object-oriented, database-driven Web sites Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Cascading Style Sheets below Chapter 13 Page 683 Discovering Computers 2010: Living in a Digital World Chapter 13

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 Page 684 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Most Web 2.0 sites use APIs An API enables programmers to interact with an environment such as a Web site or operating system Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click APIs below Chapter 13 Page 684 Figure 13-21 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Web Page Development Web page authoring software can create sophisticated Web pages that include images, video, audio, animation, and other effects Dreamweaver Expression Web Flash SharePoint Designer Page 685 Discovering Computers 2010: Living in a Digital World Chapter 13

Multimedia Program Development Multimedia authoring software allows programmers to combine text, graphics, animation, audio, and video in an interactive presentation ToolBook Director Page 685 Discovering Computers 2010: Living in a Digital World Chapter 13

Multimedia Program Development Page 685 Figure 13-22 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Program Development Program development consists of a series of steps programmers use to build computer programs Page 686 Figure 13-23 Discovering Computers 2010: Living in a Digital World Chapter 13

Step 1 – Analyze Requirements To initiate program development, programmer: Reviews the requirements Meets with the systems analyst and users Identifies input, processing, and output IPO chart Page 687 Figure 13-24 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution Design a solution algorithm In structured design, the programmer typically begins with a general design and moves toward a more detailed design Programmers use a hierarchy chart to show program modules graphically Page 688 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution Page 688 Figure 13-25 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution With object-oriented (OO) design, the programmer packages the data and the program into a single object Encapsulation Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Object-Oriented Design below Chapter 13 Page 689 Figure 13-26 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution The sequence control structure shows one or more actions following each other in order Page 689 Figure 13-27 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution The selection control structure tells the program which action to take, based on a certain condition If-then-else Case Page 689 Figure 13-28 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution Page 690 Figure 13-29 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution The repetition control structure enables a program to perform one or more actions repeatedly as long as a certain condition is met Page 690 Figures 13-30 – 13-31 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution A program flowchart graphically shows the logic in a solution algorithm Page 691 Figure 13-33 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution Flowcharting software makes it easy to modify and update flowcharts SmartDraw Visio Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Flowcharting Software below Chapter 13 Page 692 Figure 13-34 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution Pseudocode uses a condensed form of English to convey program logic Page 692 Figure 13-35 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 2 – Design Solution UML (Unified Modeling Language) has been adopted as a standard notation for object modeling and development Page 693 Figure 13-37 Discovering Computers 2010: Living in a Digital World Chapter 13

Step 3 – Validate Design Check for logic errors using test data Develop various sets of test data Determine the expected result Step through the algorithm Compare the results Repeat steps for each set of test data Page 694 Discovering Computers 2010: Living in a Digital World Chapter 13

Step 4 – Implement Design Implementation of the design includes using a program development tool that assists the programmer by: Generating or providing some or all code Writing the code that translates the design into a computer program Creating the user interface Extreme programming is a strategy where programmers immediately begin coding and testing solutions as soon as requirements are defined Pages 694 - 695 Discovering Computers 2010: Living in a Digital World Chapter 13

Discovering Computers 2010: Living in a Digital World Chapter 13 Step 5 – Test Solution The goal of program testing is to ensure the program runs correctly and is error free Errors include syntax errors and logic errors Debugging the program involves removing the bugs A beta is a program that has most or all of its features and functionality implemented Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Beta Testers below Chapter 13 Pages 695 - 696 Discovering Computers 2010: Living in a Digital World Chapter 13

Step 6 – Document Solution In documenting the solution, the programmer performs two activities: Review the program code Review all the documentation Page 696 Discovering Computers 2010: Living in a Digital World Chapter 13

Video: Electronic Arts Going Mobile CLICK TO START Discovering Computers 2010: Living in a Digital World Chapter 13

Summary Various programming languages used to create computer programs A variety of Web development and multimedia development tools Steps in the program development life cycle and tools used to make this process efficient Page 705 Discovering Computers 2010: Living in a Digital World Chapter 13

Chapter 13 Complete