Bambang Nurcahyo Prastowo
Disamping oleh meluasnya penggunaan electronic mail (surat elektronik, imil), popularitas Internet antara lain ditunjang oleh kesuksesan penggunaan sistem World Wide Web (WWW). Publikasi tentang kemudahan penggunaan sistem WWW dan luasnya informasi yang dapat digali dari Internet dengan sistem ini menyebabkan banyak pihak tertarik untuk menggabungkan sistem komputernya dengan Internet. Disamping eksplorasi Informasi dari tempat lain, Internet sekaligus digunakan untuk publikasi produk sendiri. Dengan kemajuan teknologi pengamanan data, Internet mulai digunakan untuk melalukan transaksi bisnis jarak jauh yang mengikat secara hukum.
Makalah ini membahas masalah pemanfaatan sistem WWW untuk menyusun sistem komunikasi data interaktif khususnya dengan memanfaatkan sistem pemrograman Java. Semua informasi tentang sistem World Wide Web diambil dari homepage konsorsium WWW (http://www.w3c.org). Semua informasi tentang pemrograman Java diambil dari homepage Sun Micro System (http://www.sun.com) terutama dari homepage Java sendiri ( http://www.javasoft.com). Contoh-contoh program diturunkan dari contoh-contoh program yang ada di [Dan96,CH96,JM96].
Pada awalnya, pemanfaatan sistem WWW hanya terbatas untuk membaca informasi statis, yakni dalam arti pihak client hanya melakukan pembacaan data-data yang dipajang para pemilik server. Dengan sistem ini, berkas-berkas dari beberapa simpul internet dapat digabungkan untuk dibaca dalam satu penampilan seperti nampak pada Gambar 1.
Selain rujukan sumber yang langsung memasukkan berkas yang dirujuk ke dalam tampilan dokumen yang merujuk ada juga rujukan kait. Dengan rujukan kait, bagian dari tampilan dokumen suatu dapat dihubungkan dengan sumber dokumen lain sedemikian hingga bila bagian tampilan itu di''klik'' dengan mouse, browser akan menampilkan dokumen yang dirujuk tersebut. Bagi yang ingin memulai penelurusan informasi ilmiah melalui sistem WWW, silakan simak bukunya Brian J. Thomas yang berjudul The Internet for Scientists and Engineers [Tho96].Program penelusur data WWW atau yang lebih dikenal dengan istilah Web Browser pada mulanya dirajai oleh Internet Mosaic (TM) yang mulai memasukkan unsur-unsus multimedia ke browser. Browser Netscape (TM) yang mempelopori sistem penampilan dokumen web incremental cepat mendapat sambutan dari masyarakat pemakai sistem WWW. Dengan Netscape, dokumen yang sedang dalam proses transfer langsung tampil sepotong demi sepotong. Lain halnya dengan Mosaic versi awal yang baru menampilkan dokumen setelah selesai transfer.
Fasilitas mengirimkan pesan umpan balik membuka luas perkembangan bentuk-bentuk interaksi baru antara client dan server WWW. Salah satu diantaranya adalah fasilitas chat. Dengan fasilitas ini, client dapat mengirimkan pesan yang dapat dimunculkan di layar client-client lain yang sedang membaca ``dokumen'' yang sama. Dengan demikian, fasilitas ini dapat dimanfaatkan sebagai forum diskusi teks. Umpan balik yang pada mulanya hanya berupa sebaris teks dikembangkan sehingga para perancang homepage dapat memasukkan obyek-obyek antarmuka yang lazim digunakan di program-program aplikasi berbasis window seperti radio button, selection list, dan text area.
Untuk mengatasi kelambatan ``screen update'' dibutuhkan sistem yang memungkinkan terjadinya proses komputasi di komputer client. Pada dasarnya, kebutuhan ini sudah dapat dipenuhi dengan teknologi yang ada pada awal berkembangnya WWW. Program WWW client telah diperlengkapi dengan ``parser'' yang dapat menguraikan dokumen html sebagai spesifikasi cara menampilkan data dalam html tersebut. Kemampuan interpretasi kode penampilan dengan mudah dapat ditingkatkan dengan kemampuan interpretasi kode sebagai program untuk dijalankan sebagai proses di komputer yang menjalankan client.
Yang menjadi masalah adalah keamanan. Jika pembacaan isi data yang terpajang di server WWW dapat mengakibatkan jalannya proses komputasi di komputer client maka dikhawatirkan proses tersebut dapat merusak sistem client baik dengan maupun tanpa unsur kesengajaan dari pihak server. Penelitian masalah ini dilakukan untuk menetapkan batas jangkauan proses di komputer client yang boleh dipicu oleh kode-kode yang dicantumkan dalam dokumen WWW.
Teknologi Internetworking telah membuktikan bahwa satu sistem tunggal (World Wide Web) dapat diakses dari berbagai macam komputer dengan berbagai macam sistem operasi. Hal ini dilakukan dengan membuat kesepakatan protokol yang didudukung oleh program-program aplikasi yang dibuat untuk berbagai sistem. Mulai jenis IBM PC (terutama tiruan-tiruannya), Apple MacIntosh, Sun, HP, sampai IBM mainframe sedikit banyak menyediakan fasilitas untuk berkomunikasi dengan protokol Internet (TCP/IP). Sun MicroSystem bergerak lebih lanjut dengan merancang sistem Java yang memungkinkan suatu program aplikasi dapat dijalankan di segala macam sistem komputer tanpa harus melakukan modifikasi.
Java dirancang sebaga bahasa pemrograman berorientasi obyek tanpa merujuk ke jenis komputer tertentu. Untuk mengetasi perbedaan arsitektur prosesor, Java menyediakan sistem piranti lunak bagi setiap sistem komputer yang berpotensi menjalankan program java. Sistem piranti lunak ini berfungsi sebagai ``sistem operasi'' yang mengatur jalannya proses-proses Java. Java
Sebagai bahasa pemrograman umum, Java tidak tidak memiliki keistimewaan baru dibanding bahasa-bahasa pemrograman lain. Meskipun menggunakan sintaks tersendiri, konsep obyek di Java kurang lebih seperti obyek di C++. Yang menjadi daya tarik adalah, Java dipublikasikan sebagai bahasa untuk membuat program aplikasi Internet. Java muncul pada saat Internet itu sendiri sedang menanjak kepopulerannya.
FileInputStream fin = new FileInputStream("masuk.dat"); FileOutputStream fout = new FileOutputStream("hasil.dat");FileInputStream dan FileOutputStream mengeluarkan dan menerima data byte per byte.
Jika hendak menuliskan bermacam data seperti string, integer, dan float, maka dapat didefinisikan konverter pada saluran data tersebut. Perhatikan potongan program berikut ini.
FileOutputStream fout = new FileOutputStream("hasil.dat"); PrintStream prtout = new PrintStream(fout); String nama = \"Fulan\"; double gaji = 500000; prtout.print(nama); prtout.print(' '); prtout.println(gaji);Ini akan mengirimkan string ASCII
Fulan 5000\\nKe saluran ptrout, yakni ke berkas hasil.dat.
Socket t = new Socket ("server.intranet.ugm", 2233); DataInputStream dinput = new DataInputStream(t.getInputStream)Untuk selanjutnya, dinput diperlakukan sebagai obyek input stream tempat kita mengambil data yang dikirim oleh proses server di komputer server.intranet.ugm melalui socket port 2233. Untuk mengirimkan data, perlu dibuat obyek output stream pada socket t dengan metoda getOutputStream.
Pembukaan socket di atas dapat terjadi kalau komputer yang dihubungi (server.intranet.ugm) menjalankan proses server yang akan membuat obyek input dan output stream jika ada komputer lain yang menghubunginya. Tiap server akan berjaga dengan nomor port yang berbeda satu sama lain. Potongan program berikut ada contoh perintah untuk menjaga nomor port untuk menunggu permintaan hubungan socket.
ServerSocket ss = new ServerSocket(2233);Perintah
Socket hubung = ss.accept();menyuruh Java untuk menunggu permintaan hubungan. Jika ada permintaan hubungan maka obyek DataInputStream dan DataOutputStream dapat dibuat seperti client di atas. Input si satu ujung socket berhubungan dengan output di ujung yang lain; demikian pula sebaliknya. Dari satu sisi, input dan output stream ke jaringan dapat dipandang sama dengan input dan output ke sistem berkas (lihat Gambar 2).
Sebagaimana bahasa pemrograman modern umumnya, Java memiliki fasilitas pemrograman antar muka grafis. Fasilitas pembuatan tampilan seperti button dan option list dan fasilitas event handler sperti mouse click dan sebagainya kurang lebih sama dengan yang disediakan Delphi atau Visual Basic.
Sebagai pengembangan dari Java interpreter, Sun Microsystem memproduksi Sistem Operasi Java. Sistem Operasi Java bekerja seperti Java interpreter dalam menjalankan program-program aplikasi Java. Karena berdiri sendiri (tidak bekerja di bawah komando sistem operasi lain), Sistem Operasi Java diharapkan dapat menjalankan program-program aplikasi Java secara lebih efisien.
Sistem Java dirancang untuk memungkinkan distribusi software langsung melalui akses dokumen WWW. Program-program aplikasi kecil (misalnya validasi isian formulir) dapat dijalankan di sisi browser sehingga dapat mengurangi jumlah data yang harus dipingpong antara browser dan server untuk mendapatkan isian formulir yang sesuai dengan yang dikehendaki pengelola server.
Netscape(TM) mengkaitkan pemrograman JavaScript langsung untuk mendayagunakan komponen-komponen tampilan browser seperti window utama, kolom status, dan komponen-komponen tampilan dokumen seperti frame, button, tabel, formulir isian dan sebagainya. Kekuatan Java Script dibuktikan dengan program-program demo yang antara lain memanfaatkan obyek tabel untuk membuat kalkulator dan spreadsheet.
Seandainya applet boleh membaca data komputer lokal, setiap pemilik server web dapat memasang applet yang membaca data komputer lokal dan mengirimkannya ke server. Hal ini tidak dikehendaki sistem pengamanan komputer karena melanggar ketentuan pembatasan hak baca oleh pihak di luar sistem lokal sebagaimana ditunjukkan di Gambar 4.
Demikian pula jika proses applet dari web diijinkan untuk menuliskan data, maka kemampuan ini berpotensi untuk merusak sistem berkas di komputer yang menjalankannya.Bagaimana dengan hubungan penyaluran data dengan komputer lain? Sepintas kita dapat menyatakan bahwa jika suatu server merelakan datanya dibaca melalui sistem WWW maka semestinya ia merelakan pula data tersebut disalurkan ke tempat lain melalui pihak ketiga. Yang menjadi masalah adalah kenyataan bahwa banyak perkantoran yang memanfaatkan web browser seperti Netscape untuk kepentingan komunikasi data internal. Akses web ke luar jaringan lokal dilakukan melalui komputer khusus yang menjalankan program proxy.
Ide dasar penggunaan proxy adalah untuk memberi kesempatan pada komputer di dalam jaringan internal untuk membuka hubungan komunikasi data dengan dunia luar. Sementara itu, dari luar jaringan lokal, hubungan hanya dapat dilakukan dengan komputer yang khusus untuk hubungan ke luar tersebut. Jika applet diijinkan untuk membaca data dari komputer selain dari sumber applet tersebut, maka dimungkinkan applet yang diselipkan di suatu dokumen www untuk mengambil informasi yang hanya diperuntukkan pemakai jaringan lokal untuk ditransfer ke server yang berada di luar jaringan lokal.
Keterbatasan akses data dari Applet ditanggulangi dengan memasang server di komputer yang mendistribusikan applet tersebut untuk melakukan hubungan dengan pihak-pihak pemegang data yang dibutuhkan oleh applet yang bersangkutan. Server pembantu tersebut bekerja dengan mekanisme CGI (common gateway interface). Dengan demikian dapat dijalankan skenario bekerjanya suatu proses di browser yang secara aktif melalukan penyajian data dinamis (dapat berubah menurut waktu) ke pengguna browser.
This document was generated using the LaTeX2HTML translator Version 99.2beta8 (1.42)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -no_subdir -split 0 -show_section_numbers java.tex
The translation was initiated by on 2001-01-08