Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World



Similar documents
How To Understand Programming Languages And Programming Languages

Chapter 12 Programming Concepts and Languages

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages

Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. CIV 112 Computer Programming Lecture Notes (1)

McGraw-Hill The McGraw-Hill Companies, Inc.,

Web Pages. Static Web Pages SHTML

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

Announcements FORTRAN ALGOL COBOL. Simula & Smalltalk. Programming Languages

Chapter 1 Programming Languages for Web Applications

Chapter 10: Multimedia and the Web

Internet Technologies_1. Doc. Ing. František Huňka, CSc.

Lecture 1: Introduction

Computer Science. Computer Science 207. Degrees and Certificates Awarded. A.S. Computer Science Degree Requirements. Program Student Outcomes

COS 301 Programming Languages

CSE 307: Principles of Programming Languages

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

CSCI 3136 Principles of Programming Languages

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

1. Overview of the Java Language

SKILLS HIGHLIGHTS: W e b a n d G r a p h i c D e s i g n e r

Chapter 1. Dr. Chris Irwin Davis Phone: (972) Office: ECSS CS-4337 Organization of Programming Languages

What is a programming language?

ActiveX AJAX ASP. AudioMP3

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida

Languages september 12, 2015 Éric Lévénez < FORTRAN III end-1958 FORTRAN II FORTRAN I october 1956

Lesson Overview. Getting Started. The Internet WWW

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

CSE 130 Programming Language Principles & Paradigms

Short notes on webpage programming languages

ERIE COMMUNITY COLLEGE COURSE OUTLINE A. COURSE NUMBER CS WEB DEVELOPMENT & PROGRAMMING I AND TITLE:

Web Design Specialist

Modeling Web Applications Using Java And XML Related Technologies

IBM Rational Web Developer for WebSphere Software Version 6.0

Systems Analysis Input and Output 1. Input and Output

Outline. CIW Web Design Specialist. Course Content

ATSBA: Advanced Technologies Supporting Business Areas. Programming with Java. 1 Overview and Introduction

Web Programming Languages Overview

2667A - Introduction to Programming

Programming and Software Development CTAG Alignments

Web Development News, Tips and Tutorials

STATEMENT OF PURPOSE

HTML5. Turn this page to see Quick Guide of CTTC

Computer and Information Science

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

ASP &.NET. Microsoft's Solution for Dynamic Web Development. Mohammad Ali Choudhry Milad Armeen Husain Zeerapurwala Campbell Ma Seul Kee Yoon

Curl Building RIA Beyond AJAX

WEB SITE DEVELOPMENT WORKSHEET

Oct 15, Internet : the vast collection of interconnected networks that all use the TCP/IP protocols

PCCC PCCC Course Description

Evolution of the Major Programming Languages

Software: Systems and. Application Software. Software and Hardware. Types of Software. Software can represent 75% or more of the total cost of an IS.

A Performance Comparison of Web Development Technologies to Distribute Multimedia across an Intranet

ASP.NET. Web Programming. Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics

CS 209 Programming in Java #1

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

Web Application diploma using.net Technology

How To Set Up An Outsourcing Center In China

Stage 5 Information and Software Technology

Computer Science. Computer Science 213. Faculty and Offices. Degrees and Certificates Awarded. AS Computer Science Degree Requirements

Course Descriptions COMPUTER INFORMATION SYSTEMS 1

Web Development Frameworks

Appendix N INFORMATION TECHNOLOGY (IT) YOUTH APPRENTICESHIP WEB & DIGITAL COMMUNICATIONS PATHWAY WEB & DIGITAL MEDIA UNIT UNIT 6

CENTRIQ TRAINING Credit Recommendation Guide

ICAPRG409A Develop mobile applications

Developing Your School Website

Ch. 10 Software Development. (Computer Programming)

Efficiency of Web Based SAX XML Distributed Processing

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program

At least 2 GCE A Level Passes and credit in Mathematics at Ordinary level. Mature candidates will also be considered on a case-by-case basis.

Computer and Information Sciences

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

CSC Software II: Principles of Programming Languages

DIABLO VALLEY COLLEGE CATALOG

1/20/2016 INTRODUCTION

Windows 2000 / NT 4.0 / 95 / 98, MS-DOS, Suse Operating Systems

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development

Computer Information Systems (CIS)

Programming Languages

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Web Design Technology

A Comparative Study of Web Development Technologies Using Open Source and Proprietary Software

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming

WizTom Localization Suite. Main Customer benefits: Adding a new language is no longer an issue!

SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1

Java Application Developer Certificate Program Competencies

Syllabus INFO-UB Design and Development of Web and Mobile Applications (Especially for Start Ups)

JavaScript By: A. Mousavi & P. Broomhead SERG, School of Engineering Design, Brunel University, UK

Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT

Programming Fundamentals of Web Applications Course 10958A; 5 Days

10CS73:Web Programming

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT

Transcription:

Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World

Objectives Overview Differentiate between machine and assembly languages Identify and discuss the purpose of procedural programming languages, and describe the features of C and COBOL Identify and discuss the characteristics of these object oriented programming languages and program development tools Identify the uses of other programming languages and program development tools Describe various ways to develop Web pages See Page 663 for Detailed Objectives Discovering Computers 2012: Chapter 13 2

Objectives Overview Identify the uses of popular multimedia authoring programs List the six steps in the program development life cycle Differentiate between structured design and object oriented design Explain the basic control structures and design tools used in designing solutions to programming problems See Page 663 for Detailed Objectives Discovering Computers 2012: Chapter 13 3

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 Pages 664 665 Figure 13 1 Discovering Computers 2012: Chapter 13 4

Low Level Languages Machine language is the first generation of programming languages Only language the computer directly recognizes Page 665 Figure 13 2 Discovering Computers 2012: Chapter 13 5

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 Pages 665 666 Figure 13 3 Discovering Computers 2012: Chapter 13 6

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 2012: Chapter 13 7

Procedural Languages Page 667 Figures 13 4 13 5 Discovering Computers 2012: Chapter 13 8

Procedural Languages The C programming language is used to write many of today s programs Page 668 Figure 13 6 Discovering Computers 2012: Chapter 13 9

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 2012: Chapter 13 10

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 Page 669 Discovering Computers 2012: Chapter 13 11

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 converts the bytecode into machine dependent code Page 670 Figure 13 8 Discovering Computers 2012: Chapter 13 12

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 Discovering Computers 2012: Chapter 13 13

Object Oriented Programming Languages and Program Development Tools C++ is an extension of the C programming language C# is based on C++ and was developed by Microsoft F# combines the benefits of an objectoriented language with those of a functional language Page 671 Figure 13 9 Discovering Computers 2012: Chapter 13 14

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 Discovering Computers 2012: Chapter 13 15

Object Oriented Programming Languages and Program Development Tools Page 672 Figure 13 10 Discovering Computers 2012: Chapter 13 16

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 largescale enterprise and Web applications in a RAD environment Page 673 Discovering Computers 2012: Chapter 13 17

Object Oriented Programming Languages and Program Development Tools Page 673 Figure 13 11 Discovering Computers 2012: Chapter 13 18

Object Oriented Programming Languages and Program Development Tools PowerBuilder is a powerful program development RAD tool Best suited for Webbased,.NET, and largescale enterprise objectoriented applications Page 674 Figure 13 12 Discovering Computers 2012: Chapter 13 19

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 2012: Chapter 13 20

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 2012: Chapter 13 21

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 2012: Chapter 13 22

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 Page 676 Discovering Computers 2012: Chapter 13 23

Other Programming Languages and Development Tools Page 677 Figure 13 16 Discovering Computers 2012: Chapter 13 24

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 2012: Chapter 13 25

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 Page 679 Discovering Computers 2012: Chapter 13 26

Web Page Development Page 679 Figure 13 18 Discovering Computers 2012: Chapter 13 27

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 2012: Chapter 13 28

Web Page Development Page 681 Figure 13 19 Discovering Computers 2012: Chapter 13 29

Web Page Development Programmers write scripts, applets, servlets, or ActiveX controls using a variety of languages JavaScript Perl PHP Rexx Tcl VBScript Pages 682 683 Discovering Computers 2012: Chapter 13 30

Web Page Development Page 682 Figure 13 20 Discovering Computers 2012: Chapter 13 31

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, databasedriven Web sites Page 683 Discovering Computers 2012: Chapter 13 32

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 2012: Chapter 13 33

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 Page 684 Figure 13 21 Discovering Computers 2012: Chapter 13 34

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 2012: Chapter 13 35

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 2012: Chapter 13 36

Multimedia Program Development Page 685 Figure 13 22 Discovering Computers 2012: Chapter 13 37

Program Development Program development consists of a series of steps programmers use to build computer programs Page 686 Figure 13 23 Discovering Computers 2012: Chapter 13 38

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 2012: Chapter 13 39

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 Pages 687 688 Discovering Computers 2012: Chapter 13 40

Step 2 Design Solution Page 688 Figure 13 25 Discovering Computers 2012: Chapter 13 41

Step 2 Design Solution With object oriented (OO) design, the programmer packages the data and the program into a single object Encapsulation Page 689 Figure 13 26 Discovering Computers 2012: Chapter 13 42

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 2012: Chapter 13 43

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 2012: Chapter 13 44

Step 2 Design Solution Page 690 Figure 13 29 Discovering Computers 2012: Chapter 13 45

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 2012: Chapter 13 46

Step 2 Design Solution A program flowchart graphically shows the logic in a solution algorithm Page 691 Figure 13 33 Discovering Computers 2012: Chapter 13 47

Step 2 Design Solution Flowcharting software makes it easy to modify and update flowcharts SmartDraw Visio Page 692 Figure 13 34 Discovering Computers 2012: Chapter 13 48

Step 2 Design Solution Pseudocode uses a condensed form of English to convey program logic Page 692 Figure 13 35 Discovering Computers 2012: Chapter 13 49

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 2012: Chapter 13 50

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 Pages 693 694 Discovering Computers 2012: Chapter 13 51

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 2012: Chapter 13 52

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 Pages 695 696 Discovering Computers 2012: Chapter 13 53

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 2012: Chapter 13 54

Video: Electronic Arts Going Mobile CLICK TO START Discovering Computers 2012: Chapter 13 55

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 697 Discovering Computers 2012: Chapter 13 56

Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Chapter 13 Complete