• Tidak ada hasil yang ditemukan

CHAPTER 13 COMPUTER PROGRAMMING SOFTWARE DEVELOPMENT

N/A
N/A
Protected

Academic year: 2018

Membagikan "CHAPTER 13 COMPUTER PROGRAMMING SOFTWARE DEVELOPMENT"

Copied!
49
0
0

Teks penuh

(1)

Discovering Computers

CHAPTER 13

COMPUTER PROGRAMMING

& SOFTWARE DEVELOPMENT

Chapter 13 Objectives

Describe various ways to develop Web pages including HTML, scripting languages, XHTML,

XML, WML, and Web page authoring software Describe various ways to develop Web pages including HTML, scripting languages, XHTML,

XML, WML, and Web page authoring software Differentiate between machine ,

assembly languages, high-level languages Differentiate between machine , assembly languages, high-level languages

Identify and discuss the purpose of procedural programming languages Identify and discuss the purpose of procedural programming languages

Discuss the advantages and uses of visual programming languages Discuss the advantages and uses of

visual programming languages

Id tif d di th h t i ti f Id tif d di th h t i ti f

Identify the uses of popular multimedia authoring programs Identify the uses of popular multimedia

authoring programs

List the 6 steps in the program development cycle List the 6 steps in the program development cycle

Diff ti t b t t t d d i d Diff ti t b t t t d d i d Identify and discuss the characteristics of

object-oriented programming languages Identify and discuss the characteristics of

object-oriented programming languages

Identify the uses of various nonprocedural languages and tools

Identify the uses of various nonprocedural languages and tools

Differentiate between structured design and object-oriented design

Differentiate between structured design and object-oriented design

Explain the basic control structures used in designing solutions to programming problems

(2)

Program Komputer & Bahasa Pemrograman

Program Komputer

Sekumpulan instruksi yang membuat komputer

dapat menampilkan suatu tugas tertentu dapat menampilkan suatu tugas tertentu

Bahasa Pemrograman: Menyajikan sintax, aturan kode instruksi yang dibutuhkan pada sebuah program komputer

Computer Programs & Programming Languages

low-level languages dan high-level languages

High-level language High-level

language Low-level

language Low-level

language

Machine-dependent runs only on one type of computer

Machine-dependent

runs only on one type of computer Often machine-independentcan run on many different types of computers Often machine-independent

can run on many different types of computers Machine and assembly languages

are low-level

(3)

Low-Level Languages: Machine

Bahasa mesin

Bahasa yang dapat

langsung dikenali langsung dikenali komputer

 Menggunakan binary digits

(1 dan 0) dengan

kombinasi huruf dan angka yang merepresentasikan binary digits

binary digits

Low-Level Languages: Assembly

Bahasa rakitan

(

assembly language

)

Instruksi yang berupa

singkatan dan kode yang memiliki arti khususSource programberupa

kode untuk dikonfersikan ke bahasa mesin

(4)

Bahasa Level Tinggi

Procedural Languages:

BASIC, BASICA, GWBASIC, QBASIC

COBOL

FORTRAN

PASCAL

Object Oriented Languages

JAVA Object Oriented

C++ Object Oriented

SMALLTALKObject Oriented

SMALLTALK Object Oriented

Alice (game programming) Object Oriented (based on Java)

VISUAL BASIC .NET Object Based

The Program Development Cycle: 6 Steps

Siklus membangun program

Langkah-langkah yang dilakukan programmer dalam

membangun program membangun program

Programming team—Beberapa programer yang membuat program

(5)

Step 1 — Analisa Kebutuhan

Yang termasuk kegiatan menganalisa kebutuhan?

1. Mereview kebutuhan

2 Bertemu sistem analis dan pengguna

2. Bertemu sistem analis dan pengguna

3. Mengidentifikasi input, output, pemrosesan dan

komponen dataIPO chart—

Mengidentifikasi input program, outputs dan step

IPO chart

outputs, dan step pemrosesan

Step 2 — Design the Solution

Apa saja yang termasuk dalam perancangan solusi?

Obj t Obj t ii t dt d Object Object--oriented oriented

design design

Structured Structured design

design, sometimes , sometimes called

called toptop--down designdown design Two Two approaches approaches Devise Devise solution solution algorithm algorithm, , step

step--byby--stepstep

Programmer Programmer begins with general begins with general design and moves toward design and moves toward

detailed design detailed design step

(6)

Step 2 — Design the Solution

hierarchy chart

Menampilkan modul program secara grafis &

relasinya relasinya

Disebut juga Structure Chart atauVTOC: Visual Table

of Contents

Step 2 — Design the Solution

Object-oriented design

(OOD)

Programmer mengemas data dan

metode (procedures) dalam unit metode (procedures) dalam unit

tunggal, disebutobject

 Objek dikelompokkan menjadi kelas-kelas

A Class Diagramsecara grafis merepresentasikan hubungan hirarkis

(7)

Step 3 — Validasi Desain

Apa saja yang termasuk dalam validasi desain?

Ch k

Programmer checks

l i f t

Check program design for accuracy

Logic error design flaw that causes inaccurate results

logic for correctness and attempts to uncover

logic errors

Desk check

programmers use test data to step through logic

p. 13.32 Next

Test data sample data that mimics real data that program will process

Structured walkthrough

programmer explains logic of algorithm while programming team steps

through program logic

Step 4 — Implement the Design

Implementation

? (Coding,testing,debugging)

Menulis kode yang diterjemahkan dari desain ke program

Syntax—aturan yang menspesifikkan bagaimana untuk menulis instruksi

Comments—dokumentasi program

(8)

Step 5 — Test the Solution

Apa saja yang termasuk dalam pengujian solusi?

Ensure program runs correctly Ensure program runs correctly

and is error free and is error free

Debugging

Debugging——locating and locating and correcting syntax and logic correcting syntax and logic

errors, or errors, orbugsbugs

Test copy of program, Test copy of program, called

calledbetabeta sometimessometimes called

called betabeta, sometimes , sometimes used to find bugs used to find bugs

Alpha & Beta testing: What is the difference ?

Step 6 — Document the Solution

Apa saja yang termasuk dalam dokumentasi solusi?

Programer melakukan dua aktivitas

Mereview kode program— menghilangkandead

codeyaitu program instruksi yang tidak

pernah dieksekusi Mereview kode

program— menghilangkandead

codeyaitu program instruksi yang tidak

pernah dieksekusi

Mereview dokumentasi

Mereview dokumentasi

(9)

Algoritma

Algorithm: langkah-langkah prosedur

untuk menyelesaikan masalah.

Masalah yang diselesaikan TIDAK harus

berupa program komputer

Prosedur untuk mengganti ban mobil yang

kempes juga merupakan algoritma,

prosedur untuk merakit sepeda membuat

prosedur untuk merakit sepeda, membuat

kue, atau membangun rumah

Coding Computer Programs

Apa saja yang termasuk pengkodean program?

Two steps:

1 Menterjemahkan solusi

1. Menterjemahkan solusi algoritma ke dalam bahasa pemrograman

2. Memasukkan kode bahasa pemrograman ke dalam komputer

Setiap bahasa pemrograman memiliki sintax yang spesifik

Syntax

Sekumpulan grammar dan aturan yang

menspesifikan bagaimana menulis

p.15.13 Next

(10)

Testing Programs and Run time Errors

Run time error

Kegagalan program yang terjadi ketika program dieksekusi. Programmer menggunakan data (good, bad, none) dengan senaja menyebabkan run time error untuk menguji program. Contoh run time errors:Input file not foundDivision by zero

Array Index out of bounds

B ff fl G l

Buffer overflow General Protection Fault (GPF) (Memory overrun)

Dividing a Number by Zero

G = 1234.56 / .00000000000000000001

(Di i

h

0 )

(Divisor approaches zero

0 )

(Then, invert and multiply)

Example: x = a / 1/b = ab

G = 1234.56 x 10 ** 320 (G is a very large number)

(

y

g

)

Jika terlalu besar, akan memenuhi register

datanya.

(11)

Debugging Computer Programs

Debugging

Proses mengkoreksi sintax dan eror logika dalam program Error berarti bug Kata bug pertama kali

dikenal dalam bahasa pemrograman COBOL (1959)

Debug Utilities

Debug utility

Software Computer: debugger Tersedia dengan banyak

Mill i B

g y

kompiler

Memungkinkan mengidentifikasi kesalahan sintax dan

menemukan kesalahan logika Programmer can menguji nikai

keluaran program saat program berjalan slow

Millennium Bug

Also called the Y2K bug

Took effect when the computer date rolled over to January 1,

2000

motion

p.15.14 Next

Non Y2K compliant computers read the

(12)

Y2K Computation (Example of error)

currentYear = 00; // Using a 2-digit value for year

yearOfBirth = 1990;

Age = currentYear – yearOfBirth;

Age = currentYear – yearOfBirth;

Age = 0 – 1990

Age = -1990 // Ridiculous value for Age !

currentYear = 2011; // Correct 4 digit year

currentYear = 2011; // Correct 4-digit year

Age = 2011 – 1990

Age = 21 // Correct age

http://www.y2ktimebomb.com/

Year 2038 Unix Y2K Bug

http://en.wikipedia.org/wiki/Year_2038_problem

The year 2038 problem (also known as the Unix Millennium Bug, Y2K38, Y2.038K, or S2G by analogy to theY2K

Bug, Y2K38, Y2.038K, or S2G by analogy to the Y2K problem)

The problem affects all software and systems that both store system timeas a signed 32-bit integer, and interpret this number as the number of seconds since 00:00:00 UTCon Thursday, 1 January 1970.

Times beyond this moment will "wrap around" and be

(13)

Y2K Problem Examples

Visit: http://en.wikipedia.org/wiki/Y2K

In the C programming language, the standard library function to get the current year originally did have the problem that it

t d l th b ithi th 20th t d f returned only the year number within the 20th century, and for compatibility's sake still returns the year as year minus 1900. Many programmers in C, and in Perland Java, two

programming languages widely used in Web development that use the C functions, incorrectly treated this value as the last two digits of the year. On the Web this was a mostly harmless bug, but it did cause many dynamically generated webpages to but it did cause many dynamically generated webpages to

display January 1, 2000, as "1/1/19100", "1/1/100", or variations of that depending on the format.

Division Computation (Example of error)

int num1 = 167; int num2 = 0; i t lt int result; if (num2 != 0)

result = num1 / num2;

else // Divide num1 by num2 num2 = 1;

result = num1 / num2;

print (“Error:Attempt to Divide by zero”); print ( Error:Attempt to Divide by zero );

(14)

Memecah spesifikasi satu

program ke dalam Mengidentifikasi fungsi utama

program yaitu main routine atau main

Top-down design

Designing Computer Programs

bagian yang lebih mudah dikelola

Hal ini disebut module

program, yaitu main routine atau main module

Decompose (break down) main routine ke dalam sections yang lebih kecil subroutines

Analisa tiap subroutine untuk menentukan apakah dapat di dekomposi lagi

Melanjutkan mendekomposisi subroutines sampai maing-masing menampilkan fungsi tunggal

Bagian dari program yang melakukan fungsi tunggal adalah modul

Structured Computer Program Design

Desain terstruktur

Suatu teknik membangun program dengan Sequence control structure program dengan mengkombinasikan 3 struktur kontrol dasar Struktur kontrol adalah

rencangan yang menentukan urutan logis ari instruksi program structure Selection control structure program

(15)

Sequence Control Structure

Sequence control structure

Menampilkan satu atau lebih aksi yang saling berurutan.

Aksi:Inputs

Processes

Outputs

p.15.7 Fig. 15-5 Next

Selection Control Structure (IF-THEN-ELSE)

Selection Control Structure

Memberitahu program aksi program aksi mana yang akan diambil,

berdasarkan kondisi tertentu 2 tipe umum struktur

selection kontrol

if-then-else control structure

selection kontrol

p.15.7 Next

(16)

Selection Control Structure (IF-THEN-ELSE)

IF-THEN-ELSE

Memungkinkan program untuk mengevaluasi kondisi dan h ilk 2 k ki t t f l

menghasilkan 2 kemungkinan: true atau false Jika hasilnya true, program

menampilkan aksi

Jika hasilnya salah, program salah, program Menampilkan aksi yang berbeda

p.15.7 Fig. 15-6 Next

Selection Control Structure (IF-THEN-ELSE)

A = 12 // Assign 12 to integer variable A

B = 65 // Assign 65 to integer variable B

IF ( A

B ) // Th

t

diti

if A

t

th

B

IF ( A > B ) // The true condition, if A greater than B

PRINT “The Internet is a great source of info!”

PRINT “Have a nice day !”

ELSE

// The false condition: means A <= B

PRINT “This is the false condition”

(17)

Infinite Loops

boolean loopSwitch = true; // 1 bit is set

int count = 5;

hil (l

S it h) // L

if l

S it h i t

while (loopSwitch) // Loop if loopSwitch is true

{

System.out.println(“Count is: “ + count);

count = count – 1; // Subtract 1 from counter

if (count = = 0) // When count reaches 0, stop loop

(

)

,

p

p

loopSwitch = false; // Causes loop to end

}

NESTED IF STRUCTURE (pseudocode)

IF (SCORE >= 90) // Nested IF “ladder”

GRADE = ‘A’; // Assign letter grade of ‘A’ ELSE

IF (SCORE >= 80) GRADE = ‘B’; ELSE

IF (SCORE >= 70) GRADE = ‘C’; ELSE

ELSE

IF(SCORE >= 60) GRADE = ‘D’;

(18)

CASE ENTRY STRUCTURE(pseudocode)

INPUT SCORE

SCORE = (int) SCORE / 10; // Make score between ( 0 <= SCORE <= 10) SWITCH (SCORE) // Case Entry is more efficient than a Nested-IF ladder

BEGIN SWITCH BEGIN CASE

CASE 10: GRADE = ‘A’; BREAK;

CASE 9: GRADE = ‘A’; BREAK;

CASE 8: GRADE = ‘B’; BREAK;

CASE 7: GRADE = ‘C’; BREAK;

CASE 6 GRADE ‘D’ CASE 6: GRADE = ‘D’;

BREAK;

DEFAULT: GRADE = ‘F’; END CASE

END SWITCH

PRINT GRADE // Next statement after the END SWITCH

The CASE Control Structure

Case control structure

Suatu kondisi yang menghasilkan satu dari empat atau lebih kemungkinan; kondisi terakhir biasanya merupakan kondisi default atau kondisi error. CASE lebih cepat daripada IF bersarang (nested IF)

(19)

Repetition Control Structure (Looping)

Repetition control structure

Disebut juga iteration t l t t control structure atau loop

Digunakan ketika program

menampilkan satu atau lebih aksi yang

b l l

Do While control structure

berulang selama kondisi tertentu ditemui

2 Bentuk:

p.15.8 Next

Do Until control structure

Do While Control Structure (Looping)

Struktur Do While

Selalu berulang selama kondisinya benar

Menguji kondisi di awal loop

Jika hasilnya benar,

program mengeksekusi aksi di dalam loop

Program berulang kembali dan menguji kondisi sekali lagi

lagi

Looping berlanjut sampai kondisi salah

(20)

DO WHILE LOOP: EXAMPLE

3000-READ-A-RECORD // Read a record from input file FLAG = 0 // Set loop control flag to zero

DO WHILE (FLAG = 0) // Loop as long as FLAG is zero 2000-COMPUTE-PAY

2500-PRINT-PAY-RECORD

3000-READ-A-RECORD // Read next record in file IF END-OF-FILE // If End-Of-File (EOF) is detected

FLAG = 1 ELSE

ELSE NULL ENDIF

END DO WHILE

DO WHILE LOOPS

Given the following pseudocode, what are the values of COUNTER and SUM when they are printed by the PRINT statement? Use the Gauss formula: Sum = N*(N+1)/2 statement? Use the Gauss formula: Sum N (N+1)/2 COUNTER = 0

SUM = 0

DO WHILE (COUNTER < 11) COUNTER = COUNTER + 1 SUM = SUM + COUNTER

END DO

PRINT COUNTER, SUM

(21)

Do Until Control Structure (Looping)

Do Until

Menguji kondisi di akhir perulangan

perulangan Aksi akan selalu

dieksekusi paling tidak 1 kali

Melanjutkan looping sampai kondisi benar d b h ti

dan berhenti

p.15.8 Fig. 15-9 Next

DO UNTIL LOOP

FLAG = 0

3000-READ-A-RECORD // Read first record from input file DO // Start of DO UNTIL loop

2000-COMPUTE-PAY // Invoke COMPUTE-PAY module 2500-PRINT-PAY-RECORD

3000-READ-A-RECORD // Read next record from file IF END-OF-FILE

FLAG = 1 ELSE

NULL ENDIF

(22)

COUNT CONTROLLED LOOPS

SUM = 0 // SUM is an Accumulator FOR I = 1 TO 10

SUM = SUM + I // 1 + 2 + 3 + … + 10 NEXT I

NEXT I

SUM = 0 // Without a loop, the statements would have to be written I = 1 // many times, making the program very long…

SUM = SUM + I // SUM = 0 + 1 I = 2

SUM = SUM + I // 1 + 2 = 3 (SUM)

// H d f l f thi i SUM N (N + 1) /2 // Handy formula for this series: SUM = N (N + 1) /2 SUM = 10 ( 10 + 1) /2 = 10 (11)/2 = 5 * 11 = 55 PRINT SUM // 55 is the printed SUM

Program Design Guidelines

Entry dan exit points

Modul program Modul program

sering memiliki struktur kontrol di dalamnya

Masing-masing kontrol harus memiliki entry memiliki entry point dan exit point

(23)

Solution Algorithms for Computer Programs

3 Solusi algoritma

Disebut juga logika program.

program.

Suatu deskripsi grafis atau tertulis dari langkah-langkah prosedur dalam suatu modul.

Untuk membantu membangun algoritma

Program flowchart

Nassi-Schneiderman

charts

membangun algoritma solusi, programer

menggunakan tools desain.

p.15.9 Next

Pseudocode

Flowcharting Computer Programs

Program Flowchart

Menunjukkan logika dalam suatu algoritma dalam suatu algoritma solusi

Mengikuti suatu standar yang dipublikasikan oleh American National Standards Institute (ANSI) in the early (ANSI) in the early 1960s

(24)

Flowcharting Computer Programs

Menggambar flowchart

Sebagian besar simbol terhubung dengan garis tegas yang menunjukkan arah program Dotted lines

connect t comment symbols

Next

A comment symbol or annotation symbol

Explains or clarifies logic p.15.10 Fig. 15-12

Flowcharting Computer Programs: Software

Perangkat lunak flowchart? (Visio, SmartDraw)

Digunakan untuk untuk membangun flowchart Mudah untuk

dimodifikasi dan

diupdate diupdate

(25)

Nassi-Schneiderman (N-S) Charts

Nassi-Schneiderman (N-S) chart

Menampilkan secara grafis logika dari suatu solusi algoritma

Disebut juga dengan flowchart terstruktur: Process, Do-While loop, IF, Casej g g , p, ,

p.15.11 Fig. 15-14 Next

Pseudocode for Computer Program Design

Pseudocode

M k b h t k

Menggunakan bahasa untuk menyampaikan logika dari program komputer

Memanfaatkan 3 struktur kontrol dasar

Menggabungkan bahasa dengan 3 struktur kontrol dasar

(26)

Procedural Languages (3GL)

P

rocedural language

(3GL)

Programmer memberikan nama

Examples: BASIC, COBOL, Uses a series of English-like

words to write instructions

Often called thirdthird--generation generation

Programmer memberikan nama untuk urutan instruksi yang memberitahu komputer apa

yang akan dicapai dan bagaimana melakukannya

p. 13.04 Next

and C

language (3GL) language (3GL)

Procedural Languages: Compilers

compiler

Program yang

mengkonversi e g o ve s source

program ke mesin language (0’s, 1’s)

sebelum

p. 13.05 Fig. 13-4 Next

(27)

Procedural Languages: Interpreters

Interpreter

Program yang

menterjemahkan menterjemahkan dan mengeksekusi satu program dalam satu waktu

Tidak menghasilkan

EXE (binary code) file

p. 13.05 Fig. 13-5 Next

EXE (binary code) file yang di eksekusi

Procedural Languages: BASICA, QBASIC

BASIC

(BASICA, GWBASIC, QBASIC)

Simple, bahasa pemrograman interaktif

Beginner’sAll-purposeSymbolicInstructionCode

Beginner s All purpose Symbolic Instruction Code

(28)

Procedural Languages: COBOL

COBOL

(Developed in 1959)

Di desain untuk aplikasi bisnis

Statement berbentuk seperti bahasa Inggris

English- Statement berbentuk seperti bahasa Inggris English

membuat kode mudah dibaca, ditulis, dan dimaintain

COmmon

Business-Oriented

Language

p. 13.06 Fig. 13-7 Next

Procedural Languages: C

C

(Developed in early 1970’s by AT&T)

Bahasa pemrograman powerful yang di desain secara

original untuk membangun software. Mengeksekusi original untuk membangun software. Mengeksekusi dengan cepat seperti C++

Membutuhkan skill pemrograman profesional

(29)

Object-Oriented Programming Languages

Object-oriented programming (OOP) language

Used to Major benefit Event driven C++ and Java Used to

implement object-oriented

design

Major benefit is ability to reuse existing

objects

Event-driven— checks for and responds to set of events

C++ and Java are complete object-oriented

languages

Objectis item that contains

Eventis action to

p. 13.07 Next

contains data and procedures

that act on data

which program responds

Object-Oriented Programming Languages

C++

Terdiri dari elemen C, dan fitur tambahan untuk

bekerja dengan konsep object-oriented bekerja dengan konsep object oriented

Digunakan untuk membangun database dan aplikasi

web

Java: based on C++

(30)

C++ Programming Language

/ Demonstrates the declaration of a class and the // definition of class methods C++ Program: CAR.CPP #include <iostream.h> // For cout function #include <stdio.h> // For the gets() function #include <conio.h>

#i l d h #include <ctype.h>

class Car // Declare the class {

public: // Begin public section void Start(); // Accessor function void Accelerate(); // Accessor function void Brake(); // Accessor function void HonkHorn(); // Accessor function void SetYear (int year); // Accessor function int GetYear(); // Accessor function void SetCylinders (int cyl); // Accessor function void SetCylinders (int cyl); // Accessor function int GetCylinders(); // Accessor function void SetSpeed (float speed); // Accessor function float GetSpeed(); // Accessor function private: // Begin private section

int Year; // Member variable int Cylinders; // Member variable int Speed; // Member variable }; // End of class car

Object-Oriented Programming Languages

Java

(1995)

Dibangun oleh Sun

Microsystems. Microsystems.

Program Java

dikompile ke dalam Bytecode.

Sama dengan C++

tapi digunakan secara

j st in time (JIT)

p. 13.08 Fig. 13-10 Next

just-in-time (JIT)

(31)

Java Sudoku Puzzle

Java Game Links

Text Twist Game (in Java):

http://www.gamefools.com/onlinegames/free/SuperTex

tTwist html

tTwist.html

Java Sudoku Puzzle

(runs as an applet on a Web page)

(32)

Java Applets Example

<html> <head>

<title> House Class Applet Demo </title>

</head> <body> <applet

code = "HouseApplet.class" width = 600

height = 500 > </applet> </body> </html>

Java Applets

Minimal dibutuhkan 3 file:

HouseApplet java (Java source code)

HouseApplet.java (Java source code)

HouseApplet.class (bytecode file)

HouseApplet.html (HTML file which refers

(33)

Nonprocedural Languages: 4GLs: SQL

Fourth-generation language (4GL)

Bahasa non prosedural yang memungkinkan pengguna mengakses data di databaseg

4GL yang terkenal adalahSQL, query language yang

memungkinkan pengguna untuk memange database rasional DBMS

p. 13.13 Fig. 13-15 Next

Object-Oriented Programming Languages

Visual Programming Language (a 5GL)

Visual programming

environment (VPE) Provides visual orProvides visual or

P li

environment (VPE)

memungkinkan developer untuk drag

dan drop objects to build programs Sometimes called Sometimes called Fifth generation Fifth generation language language

Provides visual or Provides visual or graphical interface for graphical interface for creating source code creating source code

Examples: Visual Basic

NET

p. 13.09 Next

Programmer menulis dan mengimplementasikan

program dalam segmen Often used in a RAD

Often used in a RAD

(34)

Object-Oriented Programming Languages

Visual Studio 2010

Cocok dengan bahasa pemrograman visual dan RAD tools

.NET adalah sekumpulan teknologi yang mungkin dijalankan di internetVisual Basic digunakan untuk membangun objek yang kompleksVisual Basic digunakan untuk membangun objek yang kompleks

Step 1. The programmer designs the user interface.

Step 2.The programmer assigns properties to each object on the form.

p. 13.10 Next

Step 3.The programmer writes code to define the action of each command button.

Step 4.The programmer tests the application.

Object-Based Programming Languages

Visual Basic 2010 (VB .NET) adalah bahasa

pemrograman visual yang dapat digunakan untuk

membangun program berorientasi objek.

membangun program berorientasi objek.

VB 2010 berdasarkan pemrograman Visual Basic

yang dibangun oleh Microsoft di awal 1990.

VB 2010 adalah bahasa pemrograman yang baik

(35)

Object-Oriented Programming Languages

Visual C++ 2010 dan Visual C# 2010 (pronounced

Visual C sharp). Sangat handal! Programmers

dapat membangun software pada semua platform!

dapat membangun software pada semua platform!

Visual C# 2010 adalah bahasa pemrograman yang

dibangun pada platform NET platform yang lebih

mudah daripada C++

Object-Oriented Programming Languages

Visual C# 2010 (C# artinya “C – sharp”)

(36)

More on C# (C-Sharp)

C# (dibaca "see sharp" or "C Sharp") adalah satu dari banyak bahasa pemrograman .NET programming languages. Berorientasi objek, dan mengijinkan

mengg nakan komponen (re sable) nt k berbagai jenis menggunakan komponen (reusable) untuk berbagai jenis aplikasi. Microsoft memperkenalkan C# pada 26 Juni 2000 dan meluncurkan produk v1.0 pada 13 Februari 2002.

C# adalah evolusi dari keluarga C dan C. Meskipun demikian, meminjam fitur dari bahasa pemrograman yang lain, seperti Delphi dan Java. Jika dilihat dari sintax paling dasar, C# dan Java kode kelihatan sangat mirit namun kode dan Java, kode kelihatan sangat mirit, namun kode kelihatan tidak seperti C++

C# tutorials:

http://www.csharp-station.com/Default.aspx

Object-Oriented Programming Languages

Visual J# 2010 (J# artinya “JAY – sharp”)

Adalah bahasa pemrograman visual yang

memungkinkan Java dibangun dalam lingkungan

memungkinkan Java dibangun dalam lingkungan

.NET. Programmer yang familiar dengan Java atau

Visual J++ dapat dengan mudah bermigrasi ke

Visual J# 2010

Di perkuliahan sering diajarkan J# sebab lebih

Di perkuliahan sering diajarkan J# sebab lebih

(37)

Object-Oriented Programming Languages

Delphi (dari Borland Software)

Bahasa pemrograman visual yang powerful

Ideal untuk perusahaan skala besar

Ideal untuk perusahaan skala besar

p. 13.11 Fig. 13-12 Next

Object-Oriented Programming Languages

Delphi

Delphi dapat digunakan untuk membangun program seperti Windows, Linux, dan .NET

D l hi iliki l bih b k f i d i d Vi l B i NET

Delphi memiliki lebih banyak fungsi dari pada Visual Basic .NET tapi lebih sulit digunakan.

(38)

Object-Oriented Programming Languages

PowerBuilder

(Sybase Corp.)

Bahasa pemrograman visual lain yang powerful

Berbasis web dan aplikasi berorientasi objek

Berbasis web dan aplikasi berorientasi objek

Menggunakan tool pemrograman RAD

p. 13.12 Fig. 13-13 Next

Web Page Development HTML

HTML (Hypertext Markup Language)

Bahasa pemrograman spesial yang digunakan untuk

membuat webe buat web

(39)

Web Page Development HTML

A Web page is a file that contains both text and HTML

tags.

Examples of tags:

Examples of tags:

<html>

<head>

<title> ITE100 Web Page example </title>

</head>

<body>

<body>

( Most of the HTML code goes here )

</body>

</html>

Web Page Development HTML Example

<HTML> <HEAD>

<TITLE> ITE 100 Sample Web Page</TITLE> </HEAD>

<BODY>

<CENTER> <IMG SRC = “bigwood.gif” HEIGHT = 75 WIDTH = 170>

</CENTER>

<P><ADDRESS> Nova Community Collegey g <BR> 15200 Neabsco Mills Road </BR>

<BR> Woodbridge, Virginia 22191</BR> </ADDRESS> </BODY>

</HTML>

(40)

XP

A Basic Web Page

http://www.nvcc.edu/home/phealy/ElmerFuddHomePage.htm

<html><head>

<title>My Test Page at Woodbridge Campus</title></head>

<body><center>

<img src =“ElmerFudd.jpg”> alt=“Elmer Fudd Photo” /></center>

<p>

<h2><center>Woodbridge Campus</center></h2><h2><center><b>Web page developed by Elmer P.

Fudd </b><center></h2>

Tutorial 1 New Perspectives on HTML and XHTML, Comprehensive

Fudd.</b><center></h2>

</p><p>

The NOVA Woodbridge Campus is located in Northern Virginia.</p>

</body></html>

Microsoft

 

Visual

 

Basic

Discovering Computers 2011: Living in a Digital World Chapter 13

80

(41)

Microsoft Silverlight

http://www.microsoft.com/SILVERLIGHT/

Silverlight adalah halaman web authoring program

yang juga memungkinkan pengembang Web untuk

yang juga memungkinkan pengembang Web untuk

menggabungkan konten interaktif dengan teks,

audio grafis, dan video.

Berdasarkan .NET framework dan bekerja dengan

sejumlah bahasa termasuk JavaScript, Ruby, C#,

dan Visual Basic NET

dan Visual Basic .NET

Dapat berjalan di Windows, Mac OS X, Linux

platforms

Web Development Software

Web page authoring software

Membangun Web tanpa HTML

Software ini mengenerate HTML code

Software ini mengenerate HTML code

Dreamweaver

Flash http://www.adobe.com/products/flash/

Microsoft Expression Web

Visual Web Studio by Microsoft

Expression Expression

Web Web Flash

Flash

p. 683

(42)

Web Page Development: XHTML

p. 13.20 Next

Web Page Development: XHTML

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <h d>

<head>

<meta name="Keywords" content="CIW, Foundations, Example"/> <meta name="Description" content="For the CIW Foundations Course"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

<! <link rel="stylesheet" type="text/css" href="myform.css" title="stylesheet"/> -->

<!-- Patrick Healy, NVCC-Woodbridge --> <title>Basic Web Form for ITE Classes</title> </head>

<body>

<h1>Basic NVCC XHTML Input Form</h1> <form

method="post"

action="http://ss1.ciwcertified.com/cgi-bin/process.p1">

(43)

Web Page Development: XHTML

<strong>Enter Your Name: <input type = "text" name="Name" size="47"/></strong> <br/>

<br/>

<strong> Enter Your Email Address: <input type = "text" name="Email" size="40"/></strong>

<br/> <br/>

<strong>Do you want to be adding to our mailing list?</strong>

<input type="radio" name="AddToList" value="yes" checked="checked"/>Yes <input type="radio" name="AddToList" value="no" />No

<br/> <br/>

Which campus of NVCC to you regularly visit ? (Check all that apply): </br> <input type="checkbox" name="Alexandria"/> Alexandria <br/>

<input type="checkbox" name="Annandale"/> Annandale <br/> <input type="checkbox" name="Annandale"/> Annandale <br/> <input type="checkbox" name="Loudon"/> Loudon <br/> <input type="checkbox" name="Manassas"/> Manassas <br/> <input type="checkbox" name="Woodbridge"/> Woodbridge <br/> <br/>

<br/>

p. 13.20 Next

Web Page Development: XHTML

How often do you want to receive an Email from NOVA? <br/> <select name="EmailFreq">

<option>Every Day </option> <option> Once a Week </option> <option> Once every two weeks </option> <option> Once a Month </option> <option> Once a Month </option> <option value="Remove">Never </option> </select>

<br/> <br/>

Where would you like to vacation? (Choose all that apply) <br/>

<select name="vacation" multiple="multiple" size="4"> <option>Hawaii</option>

<option>Virgin Islands</option> <option>Canada</option>

ti F / ti <option>France</option> <option>Mexico</option> </select> <br/> <br/> <input type="submit"/> <input type="reset"/> </form> </body> </hmtl>

(44)

Web Developer Software

Perl

P th

Python

PHP4, PHP5, PHP6(beta)

Adobe Dreamweaver

Adobe Flash

NetObjects Fusion

Perl

Perl adalah bahasa pemrograman tingkat tinggi,

general, diinterpretasikan, dan dinamis dinamis.

Perl awalnya dikembangkan oleh Larry Wall pada

Perl awalnya dikembangkan oleh Larry Wall pada

tahun 1987 sebagai bahasa scripting untuk Unix

untuk membuat pengolahan laporan lebih mudah.

[1] [2] Sejak itu, telah mengalami banyak

perubahan dan revisi dan menjadi sangat populer

di kalangan programmer. Larry Wall terus

(45)

Perl Syntax

my $a = 5;

$a++; # $a is now 6; we added 1 to it.

$

10

# N

it' 16

dd d 10 t $

$a += 10; # Now it's 16; we added 10 to $a

$a /= 2; # And divided it by 2, so $a is 8

#!/usr/bin/perl print "Content-type: text/html \n\n";

 #HTTP HEADER #CREATE STRINGS WITH ESCAPING  CHARACTERS

$string = "David paid \$4.34 for Larry\'s shirt.";

$email = "youremail\@youremail.com"; #PRINT THE STRINGS print "$string<br />"; print "$email<br />"; print '$string and $email';

PHP Syntax

<html> <head>

<title>PHP Test</title>title PHP Test /title </head>

<body>

<?php echo "Hello World";

/* echo("Hello World"); works as well, although echo isn't a function, but a language construct. In some cases, such as when multiple parameters are passed to echo, parameters cannot be enclosed in parentheses. */

?> </body>

(46)

Multimedia Software Development

Multimedia authoring software

Mengkombinasikan

text, grafis, animasi, , g , , audio, and video ke presentasi interaktif

Digunakan untuk pelatihan berbasis komputer dan pelatihan berbasis web

p. 13.22 Fig. 13-23 Next

Software termasuk Toolbook, Authorware, and Director

Multimedia Development: ToolBook

ToolBook, olehSumTotal Systemsmemiliki sebuah GUI

dan menggunakan suatu pendekatan object-oriented. Developers dapat merancang aplikasi multimedia Developers dapat merancang aplikasi multimedia menggunakan objek dasar seperti tombol, fields, graphics, backgrounds, dan pages.

ToolBook, developers dapat mengkonversikan aplikasi

multimedia kedalam bentuk HTML dan Java jadi dapat didistribusikan melalui internet.

Next

p

ToolBookdapat digunakan untuk membangun isi dari

(47)

Multimedia Development: Authorware 7

Authorware, Adobe, suatu software multimedia untuk

menulis program yang menyajikan tool bagi kebutuhan developer untuk membangun mrogram kebutuhan developer untuk membangun mrogram pendidikan dan pelatihan multimedian.

Authorwaremenawarkan lingkungan yang powerful

bagi pembuatan majalah, katalog, daftar referensi dan judul untuk CD-ROM dan DVD-ROM.

p. 13.22 Fig. 13-23 Next

User perlu membangun software plug-inShockwave

untuk menampilkan aplikasi khusus.

http://www.adobe.com/products/authorware/

Multimedia: Adobe Director

Director Adobe, adalah suatu program penulisan yang

populer yang menyajikan fitur powerful untuk membangun aplikasi dan game multimedia interaktif membangun aplikasi dan game multimedia interaktif

FiturDirector’s cocok untuk membuat presentasi elektronik.

Pengguna memerlukan software Shockwaveuntuk aplikasi-aplikasi tertentu

p. 13.22 Fig. 13-23 Next

p p

(48)

Other Programming Languages

Bahasa Pemrograman lain:

ALGOL ALGOL ALGOL ALGOL ADA

ADA ADA

ADA APLAPLAPLAPL

FORTH FORTH FORTH

FORTH FORTRANFORTRANFORTRANFORTRAN HYPERTALKHYPERTALKHYPERTALKHYPERTALK LISPLISPLISPLISP

LOGO LOGO LOGO

LOGO MODULAMODULA--2MODULAMODULA--222 PASCALPASCALPASCALPASCAL

p. 13.22 Next

PILOT PILOT PILOT

PILOT PL/IPL/IPL/IPL/I PROLOGPROLOGPROLOGPROLOG SMALLTALKSMALLTALKSMALLTALKSMALLTALK

Other Programming Languages

LISP: LISt Processing– digunakan untuk aplikasi

AI. (began in 1958)

Logo: Digunakan untuk mengajar siswa

pemrograman dan pemecahan masalah.

Pascal: digunakan untuk mengajar pemrograman

terstruktur.

Modula-2: Penerus Pascal; digunakan untuk

membangun sistem perangkat lunak.

PL/I: Kombinasi dari FORTRAN & COBOL

Smalltalk: Bahasa pemrograman berorientasi

(49)

Nanotech: Computers of the Future

Menurut sebuah artikel 2007 November Computer World, disk drive magnetik di laptop dan perangkat lainnya akan digantikan dengan nanoteknologi dalam tahun-tahun mendatang, yang akan sangat mempercepat kinerja. LiveScience.com juga melaporkan pada bulan mempercepat kinerja. LiveScience.com juga melaporkan pada bulan Juli 2008 bahwa para peneliti telah menciptakan DNA buatan pertama, yang akan mempengaruhi kemajuan teknologi, termasuk komputer. Seorang insinyur keamanan dan ahli teknologi yang ingin tetap anonim karena sifat dari pekerjaannya, menjelaskan: " Berkaitan dengan nanoteknologi dan DNA buatan, komputer akan menjadi yang lebih kecil dan mampu menangani tugas-tugas yang lebih banyak. Sebagai contoh, saya melihat DNA buatan yang digunakan dengan mempercepat

' b h di i' ( d

penggunaan server 'penyembuhan diri' (server yang dapat memperbaiki diri ketika terjadi masalah) . "Apa yang para ahli teknologi ingin dicapai adalah apa yang mereka sudah ingin capai selama beberapa dekade sekarang: perangkat komputerisasi dengan penyimpanan yang lebih luas dan unit pengolahan lebih cepat. Nanotech dan komputer berbasis DNA mungkin untuk diwujudkan "

Referensi

Dokumen terkait

nilai ajaran Sunan Drajat; 3) tahap development berisi proses validasi dan uji coba produk; 4) tahapan implementation berisi penggunaan di lapangan dengan tujuan untuk

Mahasiswa mampu memahami, dan menjelaskan konsep dan perlakuan akuntansi untuk penggabungan badan usaha, pembuatan laporan keuangan konsolidasi, baik dengan metode

Kemudian plastik panas terus diinjeksikan kedalam cetakan, material dengan suhu yang lebih rendah tadi terdorong terus kedalam dan meniggalkan bekas aliran..

keilmuan yang mendukung mata pelajaran seni keilmuan (mencakup materi yang bersifat konsepsi, tiga dimensi imitasi budaya Nusantara. budaya (seni rupa) apresiasi, dan

(RPC) tanpa serat. 2) Nilai aspek rasio 100 dengan volume 1,5%, menghasilkan nilai modulus of rupture paling opti- mum dengan menggunakan metode penguapan. 3) Indeks

Frekuensi kemunculan (sumbu Y) dari variabel yang akan dibuat grafik akan ditampilkan g pilkan sesuai dengan periode yang dipilih dalam. jendela Periode, yang akan menentukan

Tujuan penelitian ini adalah untuk mengevaluasi apakah selama sistem ini berjalan sudah sesuai dengan kebutuhan pengguna serta dapat memberikan kemudahan

Aplikasi ini merupakan sebuah sistem dimana semua proses dan data yang ada dalam layanan Laboratorium Klinik RSKD dapat menjadi sebuah basis data secara fisikal yang