Pemrograman Internet

19
Pertemuan ke-2 Pertemuan ke-2 KONSEP DASAR KONSEP DASAR PEMROGRAMAN INTERNET

description

Pengantar Pembelajaran Pemrograman Internet

Transcript of Pemrograman Internet

  • Pertemuan ke-2Pertemuan ke-2

    KONSEP DASARKONSEP DASAR

    PEMROGRAMAN INTERNETPEMROGRAMAN INTERNET

  • Konsep Pemrograman InternetKonsep Pemrograman Internet

    Pemrograman internet adalah pemrograman Pemrograman internet adalah pemrograman aplikasi berbasis internet (aplikasi internet).

    Aplikasi internet adalah suatu jenis aplikasi yang Aplikasi internet adalah suatu jenis aplikasi yang menerapkan arsitektur sistem terdistribusi .

    Aplikasi internet menggunakan internet sebagai Aplikasi internet menggunakan internet sebagai media komunikasi antar komponennya.

  • Komunikasi via InternetKomunikasi via Internet

    Internet merupakan jaringan komputer yang sangat Internet merupakan jaringan komputer yang sangat besar (meliputi seluruh dunia).

    Jaringan besar yang menghubungkan jaringan- Jaringan besar yang menghubungkan jaringan-jaringan kecil.

    Menggunakan protokol transmisi berbasis TCP/IP Menggunakan protokol transmisi berbasis TCP/IP

  • Jenis Sistem TerdistribusiJenis Sistem Terdistribusi

    Jenis arsitektur sistem terdistribuasi: Jenis arsitektur sistem terdistribuasi:

    - Client-server

    Sistem dibagi menjadi komponen yang berfungsi sebagai permintaan layanan (client) dan pemberi layanan (server).layanan (server).

    - Peer-to-peer

    Sistem terdiri atas komponen-komponen yang fungsinya setara dan dapat saling melayani atau fungsinya setara dan dapat saling melayani atau meminta layanan.

  • Kelebihan Client-ServerKelebihan Client-Server

    Beban komputasi disebar ke beberapa mesin. Beban komputasi disebar ke beberapa mesin.

    Client mengakses fungsionalitas server dari jarak jauh.jauh.

    Client dan server didesain terpisah (dan mungkin berbeda), lebih sedarhana dibanding mendesain berbeda), lebih sedarhana dibanding mendesain suatu program yang dapat melakukan segalanya.

    Data dapat disimpan terpusat

  • Kekurangan Client-ServerKekurangan Client-Server

    Adanya delay komunikasi client-server Adanya delay komunikasi client-server

    Harus mempertimbangkan sinkronisasi dan paralelisme proses dalam mendesain serverparalelisme proses dalam mendesain server

  • Komunikasi Menggunakan ProtokolKomunikasi Menggunakan Protokol

    Protokol merupakan aturan yang telah disepakati Protokol merupakan aturan yang telah disepakati client dan server mengenai bagaimana cara berkomunikasi.berkomunikasi.

    Protokol aplikasi (tergantung aplikasi)

    Client dan server saling berbalas pesan dalam Client dan server saling berbalas pesan dalam format/sintaks dan urutan tertentu.

    Protokol transmisi (TCP/IP) Protokol transmisi (TCP/IP)

    Pesan dipecah-pecah menjadi potongan paket-paket data, setiap paket dapat melewati rute jaringan yang data, setiap paket dapat melewati rute jaringan yang berbeda, di tempat tujuan paket-paket data dikonstruksi ulang menjadi pesan seperti semula.

  • Contoh Aplikasi dan Layanan Berbasis InternetContoh Aplikasi dan Layanan Berbasis Internet

    Web (protokol aplikasi: HTTP) Web (protokol aplikasi: HTTP) E-mail (IMAP, POP, SMTP) Chatting Chatting- Open standard: IRC- Non standard: YM, ICQ, MNS, chat, AOL, dll.File Transfer (FTP) File Transfer (FTP)

    Remote terminal (telnet) Directory service (LDAP) Directory service (LDAP) Networking monitoring (NMAP) Web service (SOAP) Web service (SOAP) Voice (VoIP)

  • Berbasis Internet vs Berbasis WebBerbasis Internet vs Berbasis Web

    Aplikasi Berbasis Internet Aplikasi Berbasis InternetMenggunakan protokol aplikasi yang sudah ada atau mendefenisikan protokol sendiri.

    Aplikasi disisi server berkomunikasi langsung dengan client

    Aplikasi disisi client dapat berupa aplikasi yang berdiri Aplikasi disisi client dapat berupa aplikasi yang berdiri sendiri atau ditempelkan pada aplikasi lain

    Aplikasi Berbasis Web Aplikasi Berbasis Web Menggunakan protokol HTTP Aplikasi disisi server berkomunikasi dengan client melalui web servermelalui web server

    Aplikasi disisi client umumnya berupa web browser

  • Konsep Pemrograman Web Konsep Pemrograman Web

    Pemrograman web: membuat aplikasi berbasis web Pemrograman web: membuat aplikasi berbasis web

    Aplikasi berbasis web adalah aplikasi yang dibuat dengan memanfaatkan mekanisme dan aplikasi yang sudah ada pada sistem web (www)memanfaatkan mekanisme dan aplikasi yang sudah ada pada sistem web (www)

    Sistem web sebenarnya merupakan aplikasi yang:

    Berarsitektur client-serverBerarsitektur client-server

    Software web browser di sisi client

    Software web server di sisi serverSoftware web server di sisi server

    Menggunakan protokol HTTP dalam komunikasi antara client dan server

    Mempunyai fungsi untuk mengembil/menjalankan isi file dokumen web di server dan menampilkannya di sisi client

  • Arsitektur Aplikasi WebArsitektur Aplikasi Web

  • Konsep Pemrograman Web (2)Konsep Pemrograman Web (2)

    Membuat aplikasi berbasis web berarti: Membuat aplikasi berbasis web berarti:Memperkaya fungsi web server dengan cara menambahkan program pada dokumen web yang akan dieksekusi oleh server ketika file dokumen web dieksekusi oleh server ketika file dokumen web tersebut diakses oleh serverMisalnya: Program yang mengambil data ke basis data Misalnya: Program yang mengambil data ke basis data untuk ditampilkan ke web browser

    Memperkaya interaktivitas dokumen dengan cara menambahkan program pada dokumen web yang akan menambahkan program pada dokumen web yang akan dieksekusi oleh web browser ketika file dokumen tersebut ditampilkan oleh web browsertersebut ditampilkan oleh web browserMisalnya: Program yang memvalidasi data masukan pada form sebelum disubmit ke web server

  • Kelebihan & Kekurangan AplikasiBerbasis WebBerbasis Web

    Kelebihan: Kelebihan:

    Dapat diakses kapan pun dan dari mana pun selama ada internetinternet

    Dapat diakses hanya dengan menggunakan web browser (umumnya sudah tersedia di PC, PDA, dan handphone terbaru), tidak perlu menginstall aplikasi client khususterbaru), tidak perlu menginstall aplikasi client khusus

    Kekurangan:

    Antarmuka yang dapat dibuat terbatas sesuai spesifikasi Antarmuka yang dapat dibuat terbatas sesuai spesifikasi standar untuk membuat dokumen web dan keterbatasan kemampuan web browser untuk menampilkannya

    Terbatasnya kecepatan internet mungkin membuat respon Terbatasnya kecepatan internet mungkin membuat respon aplikasi menjadi lambat

  • Pemrograman WebPemrograman Web

    Di sisi client: Di sisi client:

    Sintaks pembuatan dokumen web (HTML & CSS)

    Client side scripting (JavaScript)Client side scripting (JavaScript)

    Di sisi server

    Mekanisme pemanggilan program dan pengambilan Mekanisme pemanggilan program dan pengambilan output program oleh web server (CGI)

    Server side scripting (PHP, JSP, ASP, dll) Server side scripting (PHP, JSP, ASP, dll)

    Penghubung

    Sintaks pengalamatan dokumen web (URL)

    Protokol komunikasi (HTTP)

  • Teknologi Pembangun Aplikasi WebTeknologi Pembangun Aplikasi Web

    Web client (web browser) Web client (web browser) Web server URL : Uniform Resource Locator URL : Uniform Resource Locator HTTP : HyperText Transfer Protocol HTML : HyperText Markup LanguageCSS : Cascading Style Sheet CSS : Cascading Style Sheet

    PemrogramanWebCGI, eksekusi program di sisi serverCGI, eksekusi program di sisi server server side scripting client side scripting client side scripting plug-in, eksekusi program di sisi client

  • Bagaimana web bekerja?Bagaimana web bekerja?

    Client Side Server SideClient Side Server Side

    Client

    Server Side Scripting

    Client Side Scripting

  • Web Client (Web Browser)Web Client (Web Browser)

    Web Browser Web Browser

    merupakan suatu software

    dijalankan pada komputer user dijalankan pada komputer user

    sebuah perangkat navigasi di dalam web

    menampilkan dokumen web

    Perangkat lunak web browser yang populer saat ini :

    MS Internet Explorer (Windows)

    Mozilla Firefox (Windows & Linux) Mozilla Firefox (Windows & Linux)

    Netscape Navigator/Communicator (Windows & Linux)

    Opera (Windows & Linux) Opera (Windows & Linux)

    Konqueror (Linux)

    lynx, berbasis teks (Linux)