Chapter 13 Programming Languages and Program Development
Chapter 13 Objectives Next Describe various ways to develop Web pages including HTML, scripting languages, DHTML, XML, WML, and Web page authoring software Differentiate between machine and assembly languages Identify and discuss the purpose of procedural programming languages Identify and discuss the characteristics of object-oriented programming languages Discuss the advantages and uses of visual programming languages Identify the uses of other programming languages and other program development tools Identify the uses of popular multimedia authoring programs List the six steps in the program development cycle Differentiate between structured design and object-oriented design Explain the basic control structures and design tools used in designing solutions to programming problems
Computer Programs and Programming Languages What is a computer program? p. 664 Fig Next Set of instructions that directs computer to perform tasks Programming language—used to write instructions
Computer Programs and Programming Languages What are low-level languages and high-level languages? p. 665 Next High-level language Low-level language Machine-dependent runs only on one type of computer Often machine-independent can run on many different types of computers Machine and assembly languages are low-level
Low-Level Languages What is machine language? p. 665 Fig Next 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
Low-Level Languages What is assembly language? p. 666 Fig Next Instructions made up of symbolic instruction codes, meaningful abbreviations and codes Source program contains code to be converted to machine language
Procedural Languages What is a procedural language? p. 666 Next Most widely used are BASIC, COBOL, and C Uses series of English-like words to write instructions third-generation language (3GL) Often called third-generation language (3GL) Programmer writes instructions that tell computer what to accomplish and how to do it
Procedural Languages What is a compiler? p. 667 Fig Next Program that converts entire source program into machine language before executing it
Procedural Languages What is an interpreter? p. 667 Fig Next Program that translates and executes one program code statement at a time Does not produce object program
Procedural Languages What is COBOL? p. 668 Fig Next Designed for business applications English-like statements make code easy to read, write, and maintain COmmon Business-Oriented Language Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click COBOL below Chapter 13
Procedural Languages What is C? p. 668 Fig Next Powerful language originally designed to write system software Requires professional programming skills
Object-Oriented Programming Languages What is an object-oriented programming (OOP) language? p. 669 Next Used to implement object-oriented design Major benefit is ability to reuse existing objects Event-driven Event-driven— checks for and responds to set of events C++ and Java are complete object-oriented languages Object is item that contains data and procedures that act on data Event is action to which program responds
Object-Oriented Programming Languages What is Java? p. 669 Fig Next Developed by Sun Microsystems Similar to C++ but uses just-in-time (JIT) compiler to convert source code into machine code Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Java below Chapter 13
Object-Oriented Programming Languages What is C++? p. 670 Fig Next Includes all elements of C, plus additional features for working with object-oriented concepts Used to develop database and Web applications Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click C++ below Chapter 13
Object-Oriented Programming Languages What is C#? p. 670 Next Object-oriented programming language based on C++ Accepted as a standard for Web applications and XML-based Web services Uses a JIT compiler Resulting code is called Microsoft Intermediate Language (MSIL)
Object-Oriented Programming Languages What is a visual programming language? p. 670 Next Programmer writes and implements program in segments Visual programming environment (VPE) allows developers to drag and drop objects to build programs Often used in RAD (rapid application development) environment Sometimes called fifth-generation language Provides visual or graphical interface for creating source code Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click RAD below Chapter 13
Object-Oriented Programming Languages What is Visual Studio 2005? p. 671 Fig Next .NET is set of technologies that allows program to run on Internet Comprised of Visual Basic 2005, Visual C , Visual C# 2005, and Visual J# 2005 Step 1. The programmer designs the user interface. Step 2. The programmer assigns properties to each object on the form. Step 4. The programmer tests the application. Step 3. The programmer writes code to define the action of each command button. Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Visual Studio 2005 below Chapter 13
Object-Oriented Programming Languages What is Delphi? p. 672 Fig Next Powerful visual programming tool Ideal for large-scale enterprise and Web applications
Object-Oriented Programming Languages What is PowerBuilder? p. 673 Fig Next Another powerful visual programming tool Best suited for Web-based and large-scale object-oriented applications
Nonprocedural Languages and Program Development Tools What are nonprocedural languages and program development tools? p. 670 and 674 Next Nonprocedural Language The programmer writes English- like instructions or interacts with a visual environment to retrieve data from files or a database Program Development Tools User-friendly programs designed to assist both programmers and users in creating programs
Other Programming Languages What is RPG (Report Program Generator)? p. 674 Fig Next Nonprocedural language used for generating reports, performing computations, and updating files
Other Programming Languages What is a fourth-generation language (4GL)? p. 675 Fig Next Nonprocedural language that allows access to data in database Popular 4GL is SQL, query language that allows users to manage data in relational DBMS
Other Programming Languages What are other available programming languages? p. 675 Next ALGOLALGOLADAADAAPLAPL FORTHFORTHLISPLISPHYPERTALKHYPERTALKFORTRANFORTRAN LOGOLOGOPASCALPASCALMODULA-2MODULA-2 PILOTPILOTSMALLTALKSMALLTALKPROLOGPROLOGPL/IPL/I
Other Program Development Tools What is an application generator? p. 676 Fig Next Program that creates source code or machine code from specification Consists of report writer, form, and menu generator Form provides areas for entering data
Other Program Development Tools What is Visual Basic for Applications (VBA)? p Fig Next Macro programming language Macro—series of statements used to automate tasks Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Macros below Chapter 13
Web Page Development What is HTML (Hypertext Markup Language)? p. 678 Fig Next 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
Web Page Development How are special effects and interactive elements added to a Web page? p. 679 Next Counter Counter tracks number of visitors to Web site Image map Image map graphic image that points to URL Script Script interpreted program that runs on client Applet Applet usually runs on client, but is compiled Processing form Processing form collects data from visitors to Web site Servlet Servlet applet that runs on server ActiveX control ActiveX control small program that runs on client
Web Page Development What is the common gateway interface (CGI)? p Fig Next Communications standard that defines how Web server communicates with outside sources Step 3. When the user submits a request, it is sent to the CGI program. The CGI program contacts the database and requests information for the user. In this case, it looks for a movie titled The Wizard of Oz. Step 1. The programmer stores the CGI program in a special folder on the Web server such as /cgi-bin. Database CGI script—program that manages sending and receiving across CGI Step 2. The Webmaster creates a link between the CGI program and Web page. When a user displays the Web page, the CGI program automatically starts. Step 4. The CGI program receives information from the database, assembles it in an HTML format, and sends it to the user’s Web browser.
Web Page Development What is a scripting language? p. 681 Fig Next Typically easy to learn and use JavaScript—adds dynamic content and interactive elements to Web page VBScript (Visual Basic, Scripting Edition)—adds intelligence and interactivity to Web page Perl (Practical Extraction and Report Language)— has powerful text processing capabilities Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Scripting Languages below Chapter 13
Web Page Development What is dynamic HTML (DHTML)? p. 682 Fig Next Allows developers to include more graphical interest and interactivity in Web page
Web Page Development What are XHTML, XML, and WML? p Next XHTML (Extensible HTML) XHTML (Extensible HTML) enables Web sites to be displayed more easily on microbrowsers XML (Extensible Markup Language) XML (Extensible Markup Language) allows developers to create customized tags WML (Wireless Markup Language) WML (Wireless Markup Language) allows developers to design pages specifically for microbrowsers Includes features of HTML and XML Many PDAs and smart phones use WML as their markup language Server sends entire record to client, enabling client to do much of processing without going back to server Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click XML below Chapter 13
FrontPage 2003 Flash MX Web Page Development What is Web page authoring software? p. 683 Next Creates sophisticated Web pages without using HTML Generates HTML Dreamweaver MX
Multimedia Program Development What is multimedia authoring software? p. 684 Fig Next 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 MX
The Program Development Cycle What is the program development cycle? p. 685 Fig Next Steps programmers use to build computer programs Programming team—Group of programmers working on program
Step 1 — Analyze Requirements What is involved in analyzing the requirements? p. 686 Fig Next 1. Review requirements 2. Meet with systems analyst and users 3. Identify input, output, processing, and data components IPO chart— Identifies program’s inputs, outputs, and processing steps
Programmer begins with general design and moves toward detailed design Step 2 — Design Solution What is involved in designing the solution? p. 687 Next Object-oriented design Structured design, sometimes called top-down design Two approaches Devise solution algorithm, step-by-step procedure to solve problem
Step 2 — Design Solution What is a hierarchy chart? p. 687 Fig Next Shows program modules graphically Also called structure chart
Step 2 — Design Solution What is object-oriented (OO) design? p. 688 Fig Next Programmer packages data and procedure into single unit, an object Objects are grouped into classes Class diagram represents hierarchical relationships of classes graphically Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Object-Oriented Design below Chapter 13
Step 2 — Design Solution What is a sequence control structure? p. 688 Fig Next Control structure that shows actions following each other in order Control structure depicts logical order of program instructions
Step 2 — Design Solution What is a selection control structure? p. 689 Fig Next 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
Step 2 — Design Solution What is a case control structure? p. 689 Fig Next Yields one of three or more possibilities
Step 2 — Design Solution What is a repetition control structure? p Figs –13-31 Next 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 until condition is true Do-While Control StructureDo-Until Control Structure
Step 2 — Design Solution What is a program flowchart? p. 690 Fig Next Graphically shows logic in solution algorithm
Step 2 — Design Solution What is an example of a flowchart? p Fig Next
Step 2 — Design Solution What is flowcharting software? p Fig Next 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
Step 2 — Design Solution What is pseudocode? p. 690 Fig Next Uses condensed form of English to convey program logic
Step 3 — Validate Design What is involved in validating the design? p. 693 Next Check program design for accuracy Logic error Logic error design flaw that causes inaccurate results Test data Test data sample data that mimics real data that program will process Programmer checks logic for correctness and attempts to uncover logic errors Desk check Desk check programmers use test data to step through logic Inspection Inspection systems analyst reviews deliverables during the system development cycle
Step 4 — Implement Design What is implementation? p Fig Next 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 Click to view Web Link, click Chapter 13, Click Web Link from left navigation, then click Extreme Programming below Chapter 13
Step 5 — Test Solution What is involved in testing the solution? p Next Ensure program runs correctly and is error free Debugging—locating and correcting syntax and logic errors, or bugs Test copy of program, called beta, sometimes used to find bugs
Step 6 — Document Solution What is involved in documenting the solution? p. 696 Next Programmer performs two activities Reviews program code—removes dead code, program instructions that program never executes Reviews documentation
Summary of Programming Languages and Program Development Various programming languages used to write and develop computer programs The program development cycle and the tools used to make this process efficient Web development and multimedia development tools Chapter 13 Complete