Biografi Penulis Virgiawan Listanto, Lahir di Metro, 30 Maret 1993. Menamati pendidikan formalnya di SMK Negeri 3 Metro jurusan Teknik Komputer Dan Jaringan pada tahun 2011. Saat ini bekerja sebagai Web Administrator diperusahaan CV. Merah Putih Networks Lampung. Berpengalaman dibidang web design sejak tahun 2009 dan sudah membuat berbagai macam karya website seperti Toko online, web personal, sekolah, lembaga, web company profil, radio online, dan program aplikasi berbasis website seperti Helpdesk Request System. Pendiri Miniw0rm University, Miniw0rm CMS, dan Miniw0rm Inc. Selain itu Virgiawan Listanto merupakan penulis muda yang telah menelurkan buku IT berjuul “Cepat Mahir Pemrograman Web Dengan PHP dan MySQL” terbitan Prestasi Pustaka Raya. Kini buku keduanya yang berjudul “Teknik Komputer Dan Jaringan Untuk SMK/SMA/MA Dan Umum” tinggal menunggu giliran terbit pada September nanti. Salah satu karya terbaiknya yang telah diminati banyak programmer muda tanah air adalah Miniw0rm CMS. Sebuah Content Management System yang ditulis dengan bahasa pemrograman PHP dan MySQL, Miniw0rm CMS berlisensi open source, artinya siapa saja boleh memodifikasinya serta menggunakannya sesuai dengan keinginan masing-masing. Miniw0rm CMS dibuat dengan model “programming for future”, artinya semua code yang ditulis dengan teknik pemrograman prosedural. Hal ini dilakukan supaya para programmer web yang baru terjun ke dunia web design dapat mengexplorasikan dirinya dengan memodifikasi CMS ini sesuai dengan gaya pemrograman yang mereka gunakan. Menguasai bahasa pemrograman, bahasa scripting dan bahasa markup berbasis web seperti: PHP, CSS, XHTML, Javascript, JQuery, Ajax, XML dan MySQL. Contact Person Email: [email protected] Facebook: http://facebook.com/popay.kodok Twitter: http://twitter.com/kod0k_ YM: virgi.cute (maaf ID lama jadi agak narsis hehe) Website: http://miniw0rm.us Miniw0rm University | Create Your Title Web Master Here 2 Lesson: 3 Web Introduction Teknologi, Standarisasi Dan Software Oleh: Virgiawan Listanto Lisensi Dokumen: Semua isi yang ada didalam buku ini bebas digunakan, dimodifikasi, dan disebarkan secara bebas untuk tujuan bukan komersial. Dengan syarat tidak menghapus atau mengubah attribute penulis dan copyright Miniw0rm University tanpa sepengetahuan dari penulis. Miniw0rm University | Create Your Title Web Master Here 3 Daftar Isi Biografi Penulis Lisensi Dokumen Pendahuluan BAB I – Teknologi Dan Standarisasi HTML XHTML HTML 5 CSS CSS 3 JavaScript Ajax JQuery JSON XML PHP ASP JSP CGI Database MySQL Apache CMS BAB II – Software Pembuat Website Software Desain Website Software Pemrograman Website Aplikasi Package Server Untuk Website Miniw0rm University | Create Your Title Web Master Here 4 Pendahuluan Dalam hal membuat website, kita memerlukan adanya suatu teknologi, standarisasi, dan software pembangun untuk menghasilkan website yang baik. Pada buku ketiga ini, penulis akan mencoba menyajikan beberapa materi tentang Teknologi, Standarisasi, Dan Software pembangun website. Penulis harap setelah kalian membaca buku ini wawasan dan pengetahuan kalian akan bertambah. Are You Ready? Tere-re-re-re-ret :D :D :D BAB I – Teknologi Dan Standarisasi Tidak bisa dipungkiri lagi, keberadaan internet kini telah menjadi sebuah trend dan gaya hidup tersendiri bagi sebagian orang. Teknologi internet yang sudah semakin maju, mampu menghasilkan beberapa teknologi anak yang diprediksi akan terus berkembang. Ribuan bahkan jutaan situs yang ada di internet, merupakan sebuah karya nyata yang dibuat menggunakan beberapa teknologi pembangun website. HTML HTML (HyperText Markup Language) adalah bahasa markup yang digunakan untuk membuat halaman-halaman website. Lebih jelasnya, Bahasa markup adalah sekumpulan aturan-aturan yang mendefinisikan suatu sintaks, sintaks digunakan untuk menjelaskan dan mendeskripsikan teks atau data dalam sebuah dokumen melalui penggunaan tag. HTML merupakan bahasa markup yang menggambarkan kepada browser tentang bagaimana caranya menampilkan format teks, data, dan grafik ke layar komputer ketika sedang berkunjung ke sebuah website. Ingat! HTML bukanlah bahasa pemrograman. HTML adalah bahasa Markup yang digunakan untuk membuat halaman-halaman website, dan menampilkan halaman-halaman tersebut ke browser. HTML sebenarnya adalah dokumen ASCII atau teks biasa yang dirancang untuk tidak tergantung pada sistem operasi tertentu. HTML dibuat oleh Tim Berners-Lee ketika masih bekerja untuk CERN (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa), HTML pertama kali dipopulerkan oleh web browser Mosaic. Versi terakhir dari HTML adalah HTML 4.01, dan saat ini telah berkembang menjadi XHTML. Miniw0rm University | Create Your Title Web Master Here 5 HTML merupakan kode-kode tag yang menginstruksikan web browser untuk menghasilkan tampilan halaman web sesuai yang diinginkan. Sebuah file yang merupakan file HTML dan berextensi .html atau .htm dapat dibuka menggunakan web browser seperti Mozilla Firefox atau Internet Explorer. HTML juga dapat dikenali oleh aplikasi pembuka email ataupun PDA dan program lain yang memiliki kemampuan menjelajah website. Lebih lanjut tentang HTML, nanti akan kita bahas pada buku selanjutnya. XHTML Menurut Wikipedia.org, XHTML (Extensible HyperText Markup Language) adalah bentuk reformulasi dari HTML yang menggunakan paradigm XML. XHTML merupakan gabungan antara HTML dan XML (Extensible Markup Language). Tujuan XHTML adalah menggantikan peran HTML. XHTML adalah bahasa markup sebagaimana HTML, tetapi dengan gaya bahasa yang lebih baik. XHTML merupakan versi HTML yang memenuhi persyaratan XML dan menjadi standar internasional dengan spesifikasi yang ditetapkan oleh W3C (World Wide Web Consortium). Beberapa alasan mengapa menggunakan XHTML: 1. XHTML menyempurnakan kekurangan-kekurangan HTML. 2. XHTML dapat dijalankan diberbagai platform, sehingga memungkinkan situs kita dibuka dengan baik melalui PDA dan ponsel. Penulisan tag pada XHTML tidak terlalu berbeda dengan HTML 4.01 standar. XHTML mengharuskan semua penulisan tag ditulis dengan huruf kecil (lowercase) dan selalu ditutup menggunakan penutup tag /> Deklarasi Pada XHTML Deklarasi Doctype pada XHTML hampir sama dengan Doctype pada HTML. W3C mengharuskan agar selalu menggunakan Doctype pada XHTML. Terdapat 3 Jenis Doctype pada XHTML, yaitu: Miniw0rm University | Create Your Title Web Master Here 6 XHTML - Strict. Digunakan untuk membuat halaman yang seluruh layout dan formatnya dikontrol penuh oleh CSS. <!DOCTYPE html PUBLIC "-//W3c//DTD XHTML 1.0 Strict//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> XHTML - Transitional. Digunakan untuk membuat halaman yang sebagian besar menggunakan tag-tag HTML. <!DOCTYPE html PUBLIC "-//W3c//DTD XHTML 1.0 Transitional//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1traditional.dtd"> XHTML - Frame. Digunakan jika kita memakai frame pada halaman web. <!DOCTYPE html PUBLIC "-//W3c//DTD XHTML 1.0 Frameset//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1frameset.dtd"> Beberapa aturan pada XHTML Seperti yang telah disinggung sebelumnya, XHTML merupakan penyempurnaan dari HTML. Untuk itu, ada beberapa aturan agar program dapat berjalan lebih stabil dan konsisten. Aturan tersebut antara lain: 1. Setiap tag harus ditulis dengan huruf kecil. 2. Selalu Memberi penutup untuk setiap tag. 3. Membuka dan menutup tag pada tempat yang benar. 4. Atribut tag ditulis dengan huruf kecil dan memakai tanda petik. HTML 5 Menurut Wikipedia.org, HTML5 adalah revisi kelima dari HTML yang hingga pada bulan Juni 2011 masih dalam pengembangan. Tujuan utama pengembangan HTML5 adalah untuk memperbaiki teknologi HTML agar mendukung teknologi multimedia terbaru, mudah dibaca oleh manusia dan juga mudah dimengerti oleh mesin. Miniw0rm University | Create Your Title Web Master Here 7 HTML5 merupakan salah satu karya World Wide Web Consortium (W3C) untuk mendefinisikan sebuah bahasa markup tunggal dapat ditulis dengan cara HTML maupun XHTML. HTML5 merupakan jawaban atas pengembangan HTML 4.01 dan XHTML 1.1 yang selama ini berjalan terpisah dan diimplementasikan secara berbeda-beda oleh banyak software pembuat web. Sejarah HTML 5 Kelompok Kerja Teknologi Aplikasi Website Hyperteks (Web Hypertext Application Technology Working Group, WHATWG) mulai membuat standar baru ini pada tahun 2004 ketika Konsortium W3C sedang fokus pada pengembangan XHTML 2.0 dimasa depan, sementara HTML 4.01 belum pernah diperbarui sejak tahun 2000. Sejak tahun 2009, W3C dan WHATWG bekerja sama dalam pengembangan HTML5 setelah W3C mengakhiri Kelompok Kerja Pengembangan XHTML 2.0. Meskipun HTML5 telah dikenal luas oleh para pengembang web sejak lama, HTML5 baru mencuat pada April 2010 setelah CEO Apple Inc., Steve Jobs, mengatakan bahwa dengan pengembangan HTML5, "Adobe Flash sudah tidak dibutuhkan lagi untuk menyaksikan video atau menyaksikan konten apapun di web”. Proses Standarisasi W3C Kelompok kerja untuk teknologi aplikasi website hypertext (WHATWG) mulai menspesifikasikan HTML5 pada bulan juni 2004 dengan nama Web Applications 1.0, hingga pada bulan maret 2010 spesifikasi ini masuk ke bagian draft standar di WHATWG, dan ke dalam bagian pengurusan draft di W3C. Ian Hickson mewakili Google ,Inc menjadi editor HTML5. Pada tahun 2007 Spesifikasi HTML5 diadopsi sebagai pekerjaan permulaan untuk grup baru yang mengurus HTML di World Wide Web Consorsium (W3C). Grup ini pertama kali mempublikasikan hasil draft pekerjaan pertama mereka pada tanggal 22 januari 2008. Spesifikasi ini berstatus dalam tahap pengerjaan, dan diperkirakan akan tetap demikian selama bertahun-tahun, meskipun sebagian dari HTML5 sudah dalam tahap penyelesaian dan diimplementasikan pada beberapa web browser sebelum keseluruhan spesifikasinya mencapai status rekomendasi final. Miniw0rm University | Create Your Title Web Master Here 8 Berdasarkan jadwal kerja W3C, HTML5 diperkirakan menjadi kandidat rekomendasi pada akhir tahun 2010. Namun, publikasi pertama draft HTML 5 meleset selama 8 bulan. Permintaan dokumen terakhir dan tahap kandidat rekomendasi diharapkan dapat dicapai pada tahun 2008, tetapi hingga pada bulan Juli 2010 HTML 5 masih dalam tahapan draft pengerjaan di W3C. WHATWG telah meminta penyelesaian terakhir untuk HTML5 sejak bulan oktober tahun 2009. Editor HTML5, Ian Hickson, berharap spesifikasi HTML5 dapat mencapai tahap kandidat rekomendasi pada tahun 2012. Kriteria di W3C agar sebuah spesifikasi dapat berstatus: Direkomendasikan adalah "yang kedua: 100% selesai dan penerapannya dapat dilakukan pada dua atau lebih dengan sistem yang berbeda". Pada wawancaranya dengan TechRepublic, Hickson memperkirakan hal ini baru akan terjadi pada tahun 2022 atau setelahnya. Meski demikian, banyak bagian dari spesifikasinya sudah stabil dan sudah dapat diterapkan pada produk: Beberapa bab secara relatif telah stabil, maka dari itu implementasinya juga sudah hampir mendekati penyelesaian, dan fitur tersebut sudah dapat digunakan hari ini (misalnya: tag <canvas>). —WHAT Working Group, When will HTML5 be finished? Markup Pada HTML 5 diperkenalkan beberapa elemen baru dan atribut yang merefleksikan tipikal penggunaan website modern. Beberapa diantaranya adalah pergantian yang bersifat semantik pada blok yang umum digunakan: yaitu elemen (<div>) dan inline (<span>), sebagai contoh (<span>) (biasanya sebagai blok navigasi website) dan <footer> (biasanya dikaitkan pada bagian bawah suatu website atau baris terakhir dari kode html). Banyak elemen lain yang memberikan kegunaan baru melalui interfaces yang telah distandarkan, seperti elemen multimedia <audio> dan <video>. Beberapa elemen yang telah ditinggalkan juga ditiadakan, termasuk elemen presentasi seperti <font> dan <center>, yang sebenarnya dapat dikerjakan menggunakan Cascading Style Sheet (CSS). Miniw0rm University | Create Your Title Web Master Here 9 CSS (Cascading Style Sheet) Menurut Wikipedia.org, CSS adalah bahasa Style Sheet yang digunakan untuk mengatur tampilan sebuah website, sehingga web akan terlihat lebih terstruktur dan seragam. CSS Sama halnya dengan styles pada aplikasi Microsoft Word, Style pada MS Word dapat mengatur heading, subbab, bodytext, footer, images, dan style lainnya untuk dapat digunakan bersama-sama dalam beberapa berkas (file). Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML. CSS juga dapat mengendalikan ukuran gambar, warna teks, warna tabel, ukuran border, warna border, warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri, kanan, atas, bawah, dan parameter lainnya. Sejarah CSS Nama CSS didapat dari fakta, bahwa setiap deklarasi style yang berbeda dapat diletakkan secara berurutan, yang kemudian membentuk hubungan parent-child pada setiap style. CSS sendiri merupakan sebuah teknologi internet yang direkomendasikan oleh World Wide Web Consortium (W3C) pada tahun 1996. Setelah CSS distandarisasikan, Internet Explorer dan Netscape melepas browser terbaru mereka yang telah disesuaikan atau paling tidak hampir mendekati dengan standar CSS. Versi CSS Untuk saat ini terdapat tiga versi CSS, yaitu CSS1, CSS2, dan CSS3. CSS1 dikembangkan berpusat pada pemformatan dokumen HTML, CSS2 dikembangkan untuk memenuhi kebutuhan terhadap format dokumen agar bisa ditampilkan di printer, sedangkan CSS3 adalah versi terbaru dari CSS yang mampu melakukan banyak hal dalam desain website. CSS2 mendukung penentuan posisi konten, downloadable, huruf (font), tampilan pada tabel (table layout) dan media tipe untuk printer. Kehadiran versi CSS yang kedua diharapkan lebih baik dari versi pertama. Miniw0rm University | Create Your Title Web Master Here 10 CSS3 juga dapat melakukan animasi pada halaman website, diantaranya animasi warna hingga animasi 3D. Dengan CSS3 desainer lebih dimudahkan dalam hal kompatibilitas websitenya. Selain itu, banyak fitur baru pada CSS3 seperti: multiple background, border-radius, drop-shadow, border-image, CSS Math, dan CSS Object Model. Sifat CSS CSS memiliki dua sifat yaitu internal dan eksternal. Jika internal yang dipilih, maka skrip CSS yang ditulis harus dimasukkan secara langsung ke halaman web yang akan didesain. Dan Jika kita membuat lebih dari satu halaman website, maka skrip CSS harus disertakan juga pada halaman web yang lainnya. Haduuuhh Ribet yach !! :D Sifat yang kedua adalah eksternal, dimana skrip CSS dapat dipisahkan dan diletakkan pada folder atau tempat yang lain. Jadi, kita cukup menggunakan semacam tautan/link menuju ke file CSS yang berada pada tempat lain tersebut. Wiiih, Lebih enak pakai yang ini dong :D Fakta Menggunakan CSS Telah didukung oleh banya browser versi terbaru, tetapi tidak didukung oleh browser-browser versi lama. Lebih fleksibel dalam penempatan posisi layout. Dalam layouting CSS, kita mengenal Z-Index untuk menempatkan objek dalam posisi yang sama. Menjaga HTML dalam penggunaan tag yang minimal, hal ini berpengaruh terhadap ukuran file dan kecepatan pengunduhan. Dapat menampilkan konten utama terlebih dahulu, sementara gambar dapat ditampilkan sesudahnya. Penerjemahan CSS setiap browser berbeda, tata letak akan berubah jika dilihat di berbagai browser. CSS adalah layouting "Masa Depan" dengan penggabungan bersama XHTML. Lebih lanjut tentang CSS, nanti akan kita bahas pada buku-buku selanjutnya. Miniw0rm University | Create Your Title Web Master Here 11 CSS3 CSS 3 adalah versi CSS terbaru yang masih dikembangkan oleh W3C. Namun beberapa web browser sudah mendukung penggunaan CSS 3. CSS 2 didukung seutuhnya oleh CSS 3 dan tidak ada perubahan, hanya ada beberapa penambahan, sehingga ketika bermigrasi dari CSS 2 ke CSS 3, tidak perlu mengubah apapun. CSS 3 memiliki beberapa fitur baru, seperti: Animasi, sehingga pembuatan animasi tidak memerlukan program sejenis Adobe Flash dan Microsoft Silverlight Beberapa efek teks, seperti teks berbayang, kolom koran, dan "word-wrap". dapat menggunakan huruf-huruf yang tidak termasuk huruf default web. Beberapa efek pada kotak, seperti kotak yang ukurannya dapat diubah-ubah, transformasi 2 dimensi dan 3 dimensi, sudut-sudut yang tumpul dan bayangan. Yang Baru Di CSS 3 Borders border-color border-image border-radius box-shadow Backgrounds background-origin and background-clip background-size multiple backgrounds Color HSL colors HSLA colors opacity RGBA colors Miniw0rm University | Create Your Title Web Master Here 12 Text effects text-shadow text-overflow word-wrap User-interface box-sizing resize outline nav-top, nav-right, nav-bottom, nav-left Selectors attribute selectors Basic box model overflow-x, overflow-y Generated Content content Other modules media queries multi-column layout Web fonts speech JavaScript Menurut Wikipedia.org, JavaScript adalah bahasa skrip yang sangat populer diinternet dan dapat bekerja disebagian besar web browser seperti Internet Explorer (IE), Mozilla Firefox, Netscape dan Opera. Kode JavaScript dapat disisipkan didalam dokumen HTML menggunakan tag <script> </script>. Miniw0rm University | Create Your Title Web Master Here 13 Sejarah JavaScript JavaScript pertama kali dikembangkan oleh Brendan Eich dari Netscape dibawah nama Mocha, kemudian berganti nama menjadi LiveScript, dan akhirnya menjadi JavaScript. Navigator sebelumnya telah mendukung Java untuk lebih dapat dimanfaatkan para programmer yang nonJava. Maka dari itu dikembangkan bahasa pemrograman bernama LiveScript untuk mengakomodasi hal tersebut. Kemudian bahasa pemrograman inilah yang akhirnya berkembang dan diberi nama JavaScript, walaupun tidak ada hubungannya antara bahasa Java dengan JavaScript. JavaScript bisa digunakan untuk banyak tujuan, misalnya untuk membuat efek rollover baik di gambar maupun teks, dan yang penting juga adalah untuk membuat AJAX.[\ JavaScript adalah bahasa yang digunakan untuk AJAX. AJAX AJaX (Asynchronous JavaScript and XMLHTTP) merupakan teknologi baru untuk menciptakan aplikasi web yang interaktif. Tujuannya adalah untuk memindahkan sebagian besar interaksi pada web server, melakukan pertukaran data dengan server dibelakang layar, sehingga halaman web tidak harus melakukan load ulang secara keseluruhan setiap kali pengguna melakukan refresh atau perpindahan halaman web. “AJAX bukanlah bahasa pemrograman” yang baru. AJAX sendiri berasal dari bahasa scripting client yaitu JavaScript dengan bantuan XML (eXtensible Markup Language). Dengan adanya AJAX, akses data ke web server yang dikirimkan oleh client dapat berjalan lebih cepat. Tanpa harus melakukan refresh halaman, tanpa kedipan layar di browser, dan tanpa menunggu waktu yang lama. AJAX dapat diintegrasikan dengan server side programming seperti PHP, ASP, JSP dll. Cara kerja AJAX merupakan sebuah proses yang berawal dari client. Client merequest sebuah halaman PHP ke server melalui Javascript. Selanjutnya server akan merespon dan menjalankan script PHP. Script PHP akan menghasilkan respon dalam bentuk XML dan data XML tersebut akan dikirimkan kembali ke client untuk diolah oleh Javascript. Miniw0rm University | Create Your Title Web Master Here 14 Hasil olahan javascript tersebut akhirnya ditampilkan di client sebagai bentuk output tanpa harus merefresh halaman web, sedangkan pada mekanisme biasa respon yang dihasilkan oleh server berupa HTML mengakibatkan halaman web akan merefresh tampilan. Perbedaan pada proses inilah yang menjadikan AJAX banyak digunakan oleh pemgembang proyek web sebagai solusi. AJAX sendiri diperkenalkan oleh seorang pakar pembuat program khususnya pemrograman berbasis web Rasmus Lerdorf. Rasmus Lerdorft mengemukakan konsep AJAX dalam sebuah mailing list (milist). Berawal dari milist tersebut konsep AJAX dikenal dan dikembangkan oleh banyak orang. AJAX bisa menjadi solusi yang hebat bagi banyak pengembang-pengembang proyek web. Sebab AJAX dapat menambah kekuatan aplikasi situs web dan bisa mendapatkan perubahan-perubahan yang besar dari yang sebelumnya dikembangkan tanpa teknologi AJAX. Serta dengan penambahan metode ini juga membuat harga dari sebuah aplikasi situs web menjadi bertambah. Bisa dibilang AJAX tidak memerlukan modal yang besar tetapi bisa menghasilkan produk yang cukup besar. Sumber: http://id.shvoong.com/internet-and-technologies/2098389-sekilas-tentang-bahasaajax/#ixzz1UNF8DqDO JQuery JQuery adalah sebuah framework/library JavaScript yang dapat membantu kita untuk membuat website berjalan lebih interaktif dengan mudah. jQuery sudah mengautomatiskan pekerjaanpekerjaan yang umum dan mempersimple code yang kompleks. Library ini sangat kecil dan mempunyai banyak pluggin yang dapat mempermudah kita untuk membuat aplikasi website yang interaktif dan menarik. Fitur-fitur yang ditawarkan oleh jQuery, antara lain: jQuery menawarkan sebuah selector yang efesien untuk mengambil bagian tertentu pada dokumen yang selanjutnya dapat dimanipulasi. Miniw0rm University | Create Your Title Web Master Here 15 Mempermudah perubahan tampilan dokumen. jQuery dapat mengubah tampilan CSS dengan mudah. Merespon interaksi user dengan web. jQuery mempunyai cara yang sangat-sangat elegan untuk memasukkan sebuah event ke dalam salah satu bagian dari web. Menambah animasi. Kita dapat memberi animasi pada web dengan jQuery Mempermudah AJAX. Sumber: http://www.koder.web.id/tutorial-php/belajar-jquery-mudah/ JSON Menurut Wikipedia.org, JSON (dilafalkan "Jason"), merupakan singkatan dari JavaScript Object Notation. JSON adalah suatu format ringkas pertukaran data komputer. Formatnya berbasis teks dan terbaca oleh manusia, serta digunakan untuk merepresentasikan struktur data sederhana. Format JSON sering digunakan untuk mentransmisikan data terstruktur melalui suatu koneksi jaringan pada suatu proses yang disebut serialisasi. Aplikasi utamanya adalah aplikasi web berbasis AJAX, JSON berperan sebagai alternatif terhadap penggunaan tradisional format XML. Walaupun JSON didasarkan pada sub-set bahasa pemrograman JavaScript dan umumnya menggunakan bahasa JavaScript tersebut, JSON dianggap sebagai format data yang tidak tergantung pada suatu bahasa. Kode pengolahan dan pembuatan data JSON telah tersedia untuk banyak jenis bahasa pemrograman. Situs resmi JSON beralamatkan di www.json.org Format JSON dispesifikasikan pada RFC 4627 oleh Douglas Crockford. Tipe media Internet resmi JSON adalah application/json sedangkan ekstensi filenya adalah .json. Pada Desember 2005, Yahoo! mulai menawarkan opsi format JSON untuk layanan webnya. Google mulai menyediakan umpan JSON untuk protokol web GData-nya pada Desember 2006. Miniw0rm University | Create Your Title Web Master Here 16 XML XML (Extensible Markup Language) adalah bahasa markup yang digunakan untuk menyimpan data (tidak ada program) dan tidak tergantung dengan tools tertentu (seperti editor, dbms, compiler, dsb). Jika demikian, Lalu digunakan untuk apa dokumen XML ini? Perbedaan antara XML dan HTML Perlu di ingat bahwa: XML bukan merupakan pengganti HTML. XML dan HTML yang dirancang dengan tujuan yang berbeda: XML dirancang untuk transportasi dan menyimpan data. HTML dirancang untuk menampilkan data, dengan fokus pada bagaimana data terlihat. Keuntungan XML Ekstensibilitas : dapat ditukar/digabung dengan dokumen XML lain. Memisahkan data dan presentasi. Yang akan direpresentasikan dalam XML dan XSLT. Pencarian data cepat karena XML merupakan data dalam format yang terstruktur. Plain Text dan platform independent. Untuk pertukaran data. Dokumen XML dapat digunakan untuk berbagai macam tujuan, seperti: Sebagai penyimpan data (database) yang mudah dibaca oleh user karena disimpan dalam bentuk teks. Sebagai Standard transfer data, XML dapat digunakan untuk pengiriman data transaksi antar perusahaan, atau mentransfer data dari DBMS yang berbeda (misalnya: dari Oracle ke SQL Server). Sebagai acuan untuk membuat bahasa baru, seperti WML (Wireless Markup Language) yang digunakan pada mobile device dengan protokol WAP, atau VoiceXML yang digunakan sebagai bahasa markup untuk pengenalan suara, dialog, aplikasi interaksi respon suara maupun DTMF (seperti aplikasi pengisian pulsa atau call center), dan sebagainya. Miniw0rm University | Create Your Title Web Master Here 17 Sebagai file konfigurasi, di Java dokumen-dokumen XML sering kita jumpai berbentuk seperti file server.xml dan web.xml yang digunakan Tomcat, atau perintah-perintah dengan query yang disimpan kedalam file XML yang dipakai pada framework iBatis atau Hibernate. Sejauh mana perkembangannya? XML menjadi dasar dari beberapa bahasa markup yang sedang berkembang saat ini, seperti: XHTML (perbaikan dari HTML), VoiceXML (bahasa untuk aplikasi suara, telepon), XForms (form pada web yang dapat digunakan pada berbagai macam jenis browser, seperti: desktop, PDA , handphone, kertas), XPath, XPointer, XSL dan XSLT (transformasi dan presentasi XML). Sumber: http://agenilmu.blogspot.com/2009/04/pengertian-singkat-xml.html PHP PHP (Hypertext Preprocessor) adalah bahasa pemgrograman web yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk membuat aplikasi web dinamis. PHP juga dapat digunakan untuk membangun sebuah CMS (Content Management System). Sejarah PHP Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari web. Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi sumber terbuka, maka banyak pemrogram yang tertarik untuk ikut mengembangkan PHP. Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini, interpreter PHP sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan. Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Miniw0rm University | Create Your Title Web Master Here 18 Kemudian pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP diubah menjadi akronim berulang PHP: Hypertext Preprocessing. Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek. Kelebihan PHP Dari Bahasa Pemrograman Lain Beberapa kelebihan PHP dari bahasa pemrograman web lain, antara lain: 1. PHP adalah sebuah bahasa pemrograman yang tidak melakukan sebuah kompilasi. 2. Web Server yang mendukung PHP dapat ditemukan dimana-mana dari mulai apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah. 3. Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developer yang siap membantu dalam proses pengembangannya. 4. Dalam sisi pemahamanan, PHP adalah bahasa pemrograman yang paling mudah karena memiliki referensi yang banyak. 5. PHP adalah bahasa open source yang dapat digunakan diberbagai sistem operasi sepert: Linux, Unix, Macintosh, Windows, dan dapat dijalankan secara runtime melalui console, serta dapat menjalankan perintah-perintah system. Lebih lanjut tentang PHP, nanti akan kita bahas pada buku-buku selanjutnya. Miniw0rm University | Create Your Title Web Master Here 19 ASP Active Server Pages (ASP) adalah salah satu bahasa pemrograman web yang digunakan untuk menciptakan halaman web yang dinamis. ASP merupakan salah satu produk teknologi dari Microsoft. ASP diproses melalui web server dan hasil proses ini menghasilkan HTML yang akan dikirimkan melalui web browser. ASP bekerja pada web server dan merupakan server side scripting. ASP diciptakan oleh Microsoft untuk menjawab tantangan pemrograman web dinamis, di mana isi dari sebuah website dapat diprogram untuk mendapatkan hasil yang berbeda. Tidak seperti HTML yang hanya menampilkan isi yang statis, ASP mampu menampilkan isi halaman berbeda yang sesuai dengan tujuan pemrogramannya. ASP telah mencapai versi 3.0 yang berjalan pada platform Windows 2000 Professional Server. Versi sebelumnya, yaitu versi 2.0, dapat berjalan pada platform lain seperti Linux, Solaris, OS/2, dan Novell. Bahasa ASP murni Object Oriented Programming (OOP) dan memiliki struktur bahasa yang sama dengan bahasa Visual Basic yang mudah dimengerti, karena sintaksnya menggunakan Bahasa Inggris. Kelebihan ASP Ada beberapa keuntungan yang diberikan oleh ASP yaitu: Mudah dalam mempelajarinya. Mudah dikembangkan dari sistem yang telah dimiliki. Tidak perlu kompilasi. Mudah menggabungkan dengan teknologi lain seperti CGI, DCOM, ActiveX dan lain-lain. Dengan ActiveX Data Object dan SQL pembuatan Web Data Base menjadi lebih mudah. Memberikan fasilitas keamanan seperti session Object, cookie, dan fasilitas transaksi online yang aman dengan protokol SSL, semua dapat dilakukan dengan sedikit kode tambahan. Kode ASP tidak dapat di lihat pada sisi client, hal ini di sebabkan oleh karena jika server menerima request file asp, maka file tersebut diproses dahulu pada server dan yang di kirimkan adalah kode-kode HTML. Miniw0rm University | Create Your Title Web Master Here 20 JSP JSP (Java Server Page) adalah teknologi untuk mengontrol isi atau tampilan halaman Web melalui penggunaan servlet, program kecil yang dijalankan di server Web. Sun Microsystem, pembuat Java, mengacu kepada teknologi JSP sebagai Servlet API (Application Program Interface). Halaman HTML yang berisi link ke servlet Java memiliki akhiran .jsp. CGI Common Gateway Interface atau disingkat CGI adalah suatu standar untuk menghubungkan berbagai program aplikasi ke halaman web. CGI mirip sebuah program komputer yang menjadi perantara antara standar HTML yang menjadikan tampilan web dengan program lain, seperti basis data (database). Hasil yang diperoleh dari proses pencarian akan dikirimkan kembali ke halaman web untuk ditampilkan dalam format HTML. Pada awalnya CGI adalah salah satu yang mendekati aplikasi server-side programming. Program CGI yang sering digunakan adalah C++ dan Perl. CGI merupakan bagian dari web server yang dapat berkomunikasi dengan program lain yang ada di server. Dengan CGI web server dapat memanggil program yang dibuat dari berbagai bahasa pemrograman (Common). Interaksi antara pengguna dengan berbagai aplikasi, misalnya database, dapat dijembatani oleh CGI. Sejarah CGI CGI (Common Gateway Interface) merupakan skrip tertua dalam bidang pemrograman web. Skrip bisa didefinisikan sebagai rangkaian dari beberapa instruksi program. Untuk membuat skrip yang dapat dijalankan pada web diperlukan pengetahuan pemrograman. CGI sendiri telah muncul sejak teknologi web diperkenalkan di dunia pada awal tahun 1990, bersama dengan kemunculan CERN, dan web server pertama di dunia. CGI disediakan sebagai tool, atau perlengkapan untuk membuat program web. CGI digunakan untuk membuat program-program tampilan web yang lebih interaktif, koneksi ke basis data, bahkan membuat permainan (game). Miniw0rm University | Create Your Title Web Master Here 21 Keamanan Program CGI CGI seringkali digunakan sebagai mekanisme untuk mendapatkan informasi dari user melalui fill out form, mengakses basis data (database), atau menghasilkan halaman yang dinamis. meskipun secara prinsip mekanisme CGI tidak memiliki lubang keamanan, program atau skrip yang dibuat sebagai CGI dapat memiliki lubang keamanan ataupun tidak sengaja). Potensi celah keamanan yang digunakan dapat terjadi pada CGI antara lain: Seorang pemakai yang nakal dapat memasang skrip CGI sehingga dapat mengirimkan file kata kunci (password) kepada pengunjung yang mengeksekusi CGI tersebut. Program CGI dipanggil berkali-kali sehingga server menjadi terbebani karena harus menjalankan beberapa program CGI yang menghabiskan memori dari web server. Database Database atau Basis Data adalah kumpulan informasi yang disimpan didalam komputer secara sistematik, sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Istilah "basis data" berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar dan kumpulan data yang berhubungan dengan bisnis. Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Miniw0rm University | Create Your Title Web Master Here 22 Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili dengan menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel. Istilah basis data mengacu pada koleksi dari data-data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut. Perangkat lunak basis data Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data high level antara lain: Microsoft SQL Server Oracle Sybase Interbase XBase Firebird MySQL PostgreSQL Microsoft Access dBase III Paradox FoxPro Visual FoxPro Arago Force Miniw0rm University | Create Your Title Web Master Here 23 Recital dbFast dbXL Quicksilver Clipper FlagShip Harbour Visual dBase Lotus Smart Suite Approach Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data low level, diantaranya: Btrieve Tsunami Record Manager MySQL MySQL adalah sebuah software sistem manajemen basis data SQL atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL. Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius. Miniw0rm University | Create Your Title Web Master Here 24 Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun programprogram aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional. Apache Apache adalah sebuah web server yang dapat dijalankan diberbagai sistem operasi seperti (Unix, BSD, Linux, Microsoft Windows dan Novell Netware serta platform lainnya) yang berguna untuk melayani dan memfungsikan situs web. Protokol yang digunakan untuk melayani fasilitas web ini menggunakan protokol HTTP. Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang dapat dikonfigurasi, autentikasi basis data dan lain-lain. Apache juga didukung oleh sejumlah interfaces pengguna berbasis grafik (GUI) yang memungkinkan penanganan server menjadi mudah. Apache merupakan perangkat lunak sumber terbuka dan dikembangkan oleh komunitas terbuka yang terdiri dari pengembangpengembang dibawah naungan Apache Software Foundation. Sejarah apache Pada awal mulanya, Apache merupakan perangkat lunak sumber terbuka yang menjadi alternatif dari server web Netscape (sekarang dikenal sebagai Sun Java System Web Server). Sejak April 1996 Apache menjadi server web terpopuler di Internet. Miniw0rm University | Create Your Title Web Master Here 25 Pada Mei 1999, Apache digunakan di 57% dari semua web server di dunia. Pada November 2005 persentase ini naik menjadi 71%. (sumber: Netcraft Web Server Survey, November 2005). Asal mula nama Apache berasal ketika sebuah server web populer yang dikembangkan pada awal 1995 yang bernama NCSA HTTPd 1.3 memiliki sejumlah perubahan besar terhadap kode sumbernya (patch). Saking banyaknya patch pada perangkat lunak tersebut sehingga disebut sebuah server yang memiliki banyak patch ("a patchy" server). Tetapi pada halaman FAQ situs web resminya, disebutkan bahwa "Apache" dipilih untuk menghormati suku asli Indian Amerika Apache (Indé), yang dikenal karena keahlian dan strategi perangnya. Versi 2 dari Apache ditulis dari awal tanpa mengandung kode sumber dari NCSA. silahkan sunting halaman ini agar lebih komplit. CMS CMS (Content Management System) adalah sebuah perangkat lunak yang memungkinkan seseorang untuk menambah atau mengubah isi dari suatu website. Umumnya, sebuah CMS (Content Management System) terdiri dari dua elemen: Aplikasi manajemen isi (Content Management Application, [CMA]) Aplikasi pengiriman isi (content delivery application [CDA]). Elemen CMA memperbolehkan si manajer isi yang mungkin tidak memiliki pengetahuan mengenai HTML (HyperText Markup Language), untuk memenej pembuatan, modifikasi, dan penghapusan isi dari suatu situs Web tanpa perlu memiliki keahlian sebagai seorang Webmaster. Elemen CDA menggunakan dan menghimpun informasi-informasi yang sebelumnya telah ditambah, dikurangi atau diubah oleh si empunya situs web untuk meng-update atau memperbaharui situs Web tersebut. Kemampuan atau fitur dari sebuah sistem CMS berbedabeda, walaupun begitu, kebanyakan dari software ini memiliki fitur publikasi berbasis Web, manajemen format, kontrol revisi, pembuatan index, pencarian, dan pengarsipan. Miniw0rm University | Create Your Title Web Master Here 26 Contoh CMS: Drupal Joomla Wordpress Plone VBulletin Moodle Cmsid Miniw0rm CMS BAB II – Software Pembuat Website Alhamdulilah sudah sampai pada bab yang ke dua, pada bab ini kita akan membahas tentang software pembuat website. Apa saja software tersebut? ikuti terus kelanjutannya :D Software Desain Website Software yang “biasanya” digunakan untuk mendesain website antara lain: Adobe Photoshop Adobe Photoshop, atau biasa disebut Photoshop, adalah software pengolah citra buatan Adobe Systems yang dikhususkan untuk pengeditan foto/gambar dan pembuatan efek. Perangkat lunak ini banyak digunakan oleh fotografer digital dan perusahaan iklan sehingga dianggap sebagai pemimpin pasar (market leader) untuk perangkat lunak pengolah gambar/foto, dan, bersama Adobe Acrobat, dianggap sebagai produk terbaik yang pernah diproduksi oleh Adobe Systems. Versi kedelapan aplikasi ini disebut dengan nama Photoshop CS (Creative Suite), versi sembilan disebut Adobe Photoshop CS2, versi sepuluh disebut Adobe Photoshop CS3, versi kesebelas adalah Adobe Photoshop CS4 dan versi yang terakhir (keduabelas) adalah Adobe Photoshop CS5. Photoshop tersedia untuk Microsoft Windows, Mac OS X, dan Mac OS; versi 9 ke atas juga dapat digunakan oleh sistem operasi lain seperti Linux dengan bantuan perangkat lunak tertentu seperti CrossOver. Adobe Photoshop juga bisa digunakan untuk membuat desain halaman website. Miniw0rm University | Create Your Title Web Master Here 27 Corel Draw CorelDraw adalah software pengolah citra berbasis vektor yang dibuat oleh Corel, sebuah perusahaan perangkat lunak yang bermarkas di Ottawa, Kanada. Versi terakhirnya versi 15 yang dinamai X5 dirilis pada tanggal 23 Februari 2008. Corel Draw pada awalnya dikembangkan untuk dijalankan pada sistem operasi Windows 2000 dan yang lebih baru. Versi Corel Draw untuk Linux dan Mac OS pernah dikembangkan, tetapi dihentikan karena tingkat penjualannya rendah. Versi CorelDRAW X5 memiliki tampilan baru serta beberapa aplikasi baru yang tidak ada pada CorelDRAW versi sebelumnya. Beberapa aplikasi terbaru yang ada, di antaranya Quick Start, Table, Smart Drawing Tool, Save as Template, dan lain sebagainya. Corel Draw juga bisa digunakan untuk membuat desain atau rancangan halaman website. Software Pemrograman Website Software yang “biasanya” digunakan untuk melakukan coding/scripting/pemrograman website antara lain: Adobe Dreamweaver Adobe Dreamweaver merupakan program editing halaman website keluaran Adobe Systems yang dulunya dikenal sebagai Macromedia Dreamweaver keluaran Macromedia. Program ini banyak digunakan oleh pengembang web karena fitur-fiturnya yang menarik dan kemudahan penggunaannya. Versi terakhir Macromedia Dreamweaver sebelum Macromedia dibeli oleh Adobe Systems yaitu versi 8. Versi terakhir Dreamweaver keluaran Adobe Systems adalah versi 10 yang ada dalam Adobe Creative Suite 4 (sering disingkat Adobe CS4). Aplikasi Server Package Untuk Website Untuk menjalankan sebuah website yang program aplikasinya berjalan disisi server, maka dibutuhkan sebuah perangkat lunak agar website kita dapat berjalan di komputer lokal (localhost). Dan untuk website berbasis Content Management System yang tentunya memiliki Database/basis data, dibutuhkan juga sebuah software database server agar website tersebut berjalan dengan baik dikomputer lokal. Miniw0rm University | Create Your Title Web Master Here 28 Untuk mengatasi hal ini, biasanya penulis menggunakan Aplikasi Package Server untuk website agar website karya penulis dapat berjalan dikomputer lokal. Aplikasi tersebut merupakan sebuah software yang membundel antara software yang digunakan untuk web server, software yang digunakan untuk program aplikasi berbasis web, serta software yang digunakan untuk menyimpan basis data (database). Jadi dengan adanya software ini kita tidak perlu repot-repot lagi untuk menginstallnya satu persatu. Software-software yang penulis maksud antara lain: Appserv Appserv merupakan aplikasi yang berfungsi untuk menginstall beberapa macam program aplikasi website yaitu Apache, PHP, dan MySQL dalam beberapa menit. Beberapa Fitur dari Appserv adalah: Apache PHP MySQL phpMyAdmin Appserv bisa didownload disitus resminya yang beralamatkan di: http:// appservnetwork.com XAMP XAMPP adalah perangkat lunak bebas yang mendukung banyak sistem operasi, dan merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis. Untuk mendapatkanya dapat mendownload langsung dari situs resminya di: www.apachefriends.org/en/xampp.html Miniw0rm University | Create Your Title Web Master Here 29