Upload
duongnga
View
225
Download
0
Embed Size (px)
Citation preview
6
BAB 2
LANDASAN TEORI
2.1 Teori Umum
2.1.1 Internet
Internet adalah sebuah Global Sistem yang
menghubungkan jaringan antar komputer dengan menggunakan
Internet Protocol Suite (TCP / IP) yang mencakup dan melayanai
seluruh pengguna internet di seluruh dunia. Jaringan - jaringan
yang dimaksud di atas adalah jaringan yang terdiri dari jutaan
jaringan pribadi, umum, akademik, bisnis dan jaringan pemerintah
lokal lingkup global yang dihubungkan oleh electronic array dan
teknologi jaringan optik.
Kebanyakan alat komunikasi tradisional, seperti telepon
dan televisi, sudah mengubah diri mereka dengan menggunakan
internet, di mana lahir alat komunikasi baru sepert Voice over
Internet Protocol (VoIP). Alat-alat komunikasi massal lainnya pun
memanfaatkan internet untuk meningkatkan kinerja mereka, seperti
contohnya: penerbitan surat kabar diterbitkan juga dalam bentuk,
web, dan blog. Pemanfaatan lain di dunia internet adalah dengan
menjadikannya sebagai target pangsa pasar bagi beberapa
perusahaan besar yang telah mengerti betapa bermanfaatnya
7
internet dalam kelangsungan bisnis mereka. Seperti contohnya
adalah dalam hal advertising dan commerce (yang lebih dikenal
dengan nama e-commerce).
Dari pemanfaatan hal di atas tersebut, maka banyak sistem
komunikasi dan bentuk – bentuk baru interaksi antar manusia yang
tercipta melalui pemanfaatan internet. Bentuk - bentuk baru yang
sudah tercipta antara lain adalah: Instant Message, Internet Forum,
dan situs jaringan sosial.
Pada zaman modern ini, penggunaan internet sudah
hampir dipastikan telah mendarah-daging ke dalam kehidupan
masyarakat, pada umumnya adalah mereka yang menggunakan
internet sebagai media untuk bekerja, belajar atau sekedar untuk
bersenang - senang.
Pengaksesan internet pun menjadi lebih mudah, sebagai
contohnya adalah penggunaan internet melalui Mobile Internet
Device, seperti handphone, handheld game console (PSP, NDS).
Cara mengaksesnya pun ada berbagai cara, ada yang dapat
mengakses langsung melalui operator dan akses langsung ke wi-fi
(PSP, NDS, dan handphone yang bisa menangkap wi-fi).
Berbagai kegunaan internet dalam kehidupan adalah:
• Sumber Informasi
Banyak sekali informasi dan pengetahuan yang bisa
didapatkan melalui internet.
8
• Komunikasi
Internet sangat berguna sebagai sarana komunikasi, di
mana orang-orang bisa berkomunikasi dengan orang /
teman yang berada di luar negeri daripada
berkomunikasi dengan telepon yang secara garis besar
sangat boros apabila dipakai untuk menelepon ke luar
negeri.
• Transfer Data
Pengguna internet dapat men-download atau upload
data dalam jumlah besar ke internet. Hal ini sangat
menguntungkan semua pengguna internet, di mana
setiap pengguna pasti melakukan download / upload
apabila mereka sedang online.
Internet juga dengan tidak langsung memberikan dampak
sosial kepada kehidupan penggunanya, seperti terciptanya bentuk -
bentuk baru dari interaksi sosial, aktivitas dan organisasi. Web
jaringan sosial seperti Facebook dan MySpace telah menciptakan
bentuk baru dari sosialisasi dan interaksi. Pengguna situs tersebut
dapat menambahkan berbagai informasi ke dalam halaman pribadi
mereka.
Salah satu area utama aktivitas dalam internet dalah
Multiplayer Game. Bentuk - bentuk dari multiplayer game itu
9
sendiri terdiri dari berbagai macam, contohnya adalah: 1st person
shooter, stragegy, Role Playing Game, Adventure, Click Based
Game, Online Gambling, dan lain – lain.
2.1.2 Website
Bahasa Indonesia dari website adalah situs. Situs adalah
sekelompok halaman web / web page yang merupakan bagian dari
suatu domain atau subdomain di World Wide Web. WWW atau
World Wide Web tersebut dapat diakses oleh publik. Halaman-
halaman yang diakses melalui URL(Uniform Resource Locator)
yang menjadi root / akar disebut juga dengan home page, dan
biasanya disimpan / di-save di dalam server yang sama.
Tidak semua situs web dapat diakses secara gratis. Ada
beberapa situs yang mewajibkan para pengguna untuk membayar
agar dapat mengakses situs tersebut. Misalnya: situs-situs web
storage / penyimpanan file secara online.
Secara terminologi, website adalah kumpulan dari
halaman-halaman situs, yang biasanya terangkum dalam sebuah
domain atau subdomain, yang berada di dalam World Wide Web /
www di internet. Website biasanya ditulis dalam format HTML
(Hyper Text Markup Language), yang bisa diakses melalui HTTP,
10
yaitu protokol yang menyampaikan informasi dari server website
untuk ditampilkan kepada para pemakai melalui web browser.
Halaman-halaman dari website yang diakses melalui
sebuah URL disebut homepage. URL ini mengatur homepage
tersebut menjadi sebuah tingkatan / hierarki.
Beberapa website memerlukan subscript (data masukan)
untuk dapat mengakses keseluruhan isi dari website tersebut.
Contohnya adalah situs e-mail gratisan, di mana biasanya user
diminta untuk mengisi subscript untuk membuat e-mail gratis.
• History of website / sejarah
World Wide Web (www) diciptakan pada tahun 1989 oleh Tim
Berners-Lee. Pada tanggal 30 April 1993, CERN (tempat di
mana dia bekerja) mengumumkan bahwa World Wide Web
dapat digunakan dan diakses oleh semua orang.
Sebelum mengenal HTML dan HTTP, beberapa protokol
menggunakan file transfer protocol dan gopher protocol untuk
men-download data dari server. Protokol tersebut
menggunakan struktur direktori sederhana di mana pengguna
dapat menavigasi dan memilih file untuk di-download.
• Function of website
Dikelompokkan dalam fungsinya, website di bagi menjadi
beberapa jenis, yaitu:
1. Personal website.
11
2. Commercial website.
3. Government website (milik pemerintah).
4. Non-profit organization website.
• Types of website
Website dibagi dalam 2 tipe, yaitu :
1. Static website.
2. Dynamic website.
Static website adalah situs di mana halaman web-nya tidak
dapat berubah, untuk dapat berubah sesuai dengan halaman
baru yang tersimpan pada storage nya harus dilakukan
refresh/pengulangan.
Dynamic website adalah situs yang halaman web-nya dapat
berubah sesuai dengan keadaan dan biasanya secara otomatis
akan berubah tanpa harus menekan refresh.
• Jenis-Jenis Website
1. Afiliasi
2. Archieve site
3. Blog
4. Brand building site
5. City site
6. Community site
7. Content site
8. Corporate site
9. E-commerce sury
10. Forum
11. Gripe site
12. Humor site
13. Java applet site
14. Mirror site
15. Microblog
16. News site
12
17. Personal homepage
18. Phish site
19. Political site
20. Porn site
21. Rating site
22. Review site
23. School site
24. Search engine
25. Schock site
26. Social bookmarking
27. Video sharing
28. Warez
29. Web portal
30. Wiki site
2.1.3 Facebook
Facebook adalah sebuah situs web social network yang
sedang populer yang diluncurkan pada tanggal 4 Februari 2004
(http://id.wikipedia.org/wiki/Facebook, 14 Maret). Facebook
menyediakan fasilitas seperti Upload Photo, Messages,
Notification, Wall Post, dan Chatting. Facebook sebenarnya sama
seperti Friendster pada Web social Network lainnya, tetapi
perbedaannya adalah Facebook memiliki aplikasi yang bermacam-
macam, sehingga menjadi sebuah daya tarik tersendri dalam Web
Social network.
Untuk menunjang kemudahan dalam pengaksesan,
Facebook memberikan Interface yang mudah dimengerti bahkan
oleh orang awam sekalipun, yaitu :
• Layar Home yang berisi tentang kegiatan-kegiatan dari teman-
teman user.
13
• Layar Profile yang berisi tentang tulisan dari teman user di
layar pribadi user.
• Layar Account
Pada layar account ini, terdapat 6 pilihan yang bisa dipilih
yaitu :
1. Edit Friends.
2. Account Settings.
3. Privacy Settings.
4. Application Settings.
5. Help Center
6. Logout.
• Chat box.
2.1.4 Sejarah Facebook
Facebook adalah sebuah social networking yang baru saja
dirintis pada tahun 2006 oleh seorang mahasiswa Harvard yang
bernama Mark Zuckerberg. Mark Elliot Zuckerberg atau Mark
Zuckerberg lahir lahir pada 14 Mei 1984 di Dobbs Ferry,
Westchester County, New York, Amerika Serikat (AS).
Ide berawal ketika dia bersekolah di Exeter High School,
New Hampshire. Saat itulah dia berkenalan dengan Adam
D’Angelo. Zuckerberg lulus dan masuk Harvard University,
awalnya membuat program Coursematch yang memungkinkan
14
mahasiswa di kelas yang sama bisa melihat daftar teman-teman
sekelas. Proyek selanjutnya membuat facemash.com. Lewat situs
ini para pengunjung bisa memberi stempel “keren” atau “jelek”
foto seorang siswa, dan membuat Zuckerberg dipanggil oleh Badan
Administrasi Universitas Harvard karena dianggap membobol
sistem keamanan komputer kampus, melanggar peraturan privasi di
internet, dan melanggar hak cipta.
Oleh karena itu ia mebuat Facebook dan diluncurkannya pada
tahun 2004. Dalam waktu singkat duapertiga mahasiswa Harvard
jadi pengguna Facebook. Teman sekamarnya, Dustin Moskovitz
dan Chris Hugh, berhasil mengembangkan sayap ke Universitas
Stanford, Columbia, Yale, Ivy College, dan beberapa sekolah
lainnya di wilayah Boston. Dalam waktu singkat, mereka
meluncurkan Facebook ke 30 sekolah.
Zuckerberg bersama Moskovitz dan beberapa teman lain
pindah ke Palo Alto, California, liburan musim panas 2004
menyewa rumah kecil buat kantor. Oleh karena ingin mengerjakan
Facebook dengan serius mereka meninggalkan Harvard. Di
kantornya itulah Zuckerberg bertemu Peter Thiel, pendiri Paypal,
yang memberi dana sebesar US$ 500.000 ,merupakan investor
pertama mereka sehingga mereka bisa pindah ke kantor yang lebih
besar di di Universitas Avenue yang dinamai sebagai kantor
“Kampus Urban”.
15
Pada 23 Agustus 2005 Zuckerberg membeli domain
facebook.com dari Aboutface Corporation senilai US$ 200.000
atau sekitar Rp 1,86 miliar. Pada 2 September 2005, Zuckerberg
meluncurkan situs Facebook khusus untuk anak-anak sekolah
menengah atas. Hanya dalam waktu 15 hari sejak peluncurannya,
sebagian besar sekolah di AS sudah menjadi anggotanya. pada
akhir tahun 2005, Facebook telah mencakup sekitar 2.000 kampus
dan 25.000 sekolah menengah atas di AS, Kanada, Inggris,
Meksiko, Puerto Riko, Australia, Selandia Baru, dan Irlandia.
Pada 27 Februari 2006, dia mulai mengizinkan para
mahasiswa yang menjadi pengguna situs ini untuk menambahkan
siswa-siswa SMA sebagai temannya. BusinessWeek, melansir
kabar bahwa Zuckerberg tengah bernegosiasi dengan calon
pembeli potensial Facebook. Tapi, akhirnya, dia menolak tawaran
yang disebut-sebut bernilai US$ 750 juta atau sekitar Rp 6,97
triliun. Pasalnya, Zuckerberg menganggap harga itu terlalu murah.
Saat itu, dia memperkirakan nilai Facebook US$ 2 miliar.
Pada April 2006, investor pertama situs ini, yaitu Peter
Thiel, Greylock Partners, dan Meritech Capital Partners,
menambah investasi di Facebook dengan menyetorkan dana US$
25 juta. Facebook pun masuk ke India melalui Institut Teknologi
India dan Institut Manajemen India.
16
Facebook membeli perusahaan Parakey Inc., dari Blake
Ross dan Joe Hewitt, pada Juli 2007. Parakey adalah produsen
aplikasi komputer yang mempermudah transfer data berupa tulisan,
gambar, dan video ke sebuah situs di internet. Bill Gates, pada
Oktober 2007 membeli 1,6% saham Facebook seharga US$ 240
juta. Pasalnya, Zuckerberg tidak berniat menjual semua saham
Facebook sekaligus. Alasannya sederhana dan sungguh mulia, dia
ingin Facebook tetap independen.
Pada 7 November 2007, situs ini meluncurkan layanan
terbaru berupa pemasangan iklan dengan sistem yang disebut
Facebook Beacon. Triliuner Hongkong, Li Ka-shing, tertarik untuk
menanamkan uang senilai US$ 60 juta di Facebook pada 30
November 2007.
2.1.5 Web Application
Web Application adalah aplikasi yang dapat diakses
dengan menggunakan web browser melalui network seperti
internet dan intranet. Selain itu juga dapat berarti sebuah software
aplikasi komputer yang di-hosting dalam sebuah lingkungan yang
dikontrol oleh browser ( Java Applet ) atau yang dikode dengan
bahasa yang didukung oleh browser ( seperti Java Script yang
dikombinasikan dengan HTML ) dan memiliki ketergantungan
dengan web browser agar dapat digunakan.
17
Berbagai teknologi baru yang dikembangkan untuk
mengkoordinasi client-side scripting dengan server-side
technologies, PHP dan Ajax merupakan beberapa dari teknologi
tersebut, dengan teknologi tersebut, pengembangan web dengan
menggunakan kombinasi beberapa teknologi lain menghasilkan
sebuah web yang interaktif dan mudah dipakai untuk pengguna.
Sebuah halaman web hanya menawarkan fungsi – fungsi
sederhana jika tidak didukung dengan menggunakan aplikasi web
seperti Java, Java Script, DHTML, Flash, FBML, dan lain – lain.
Dengan teknologi – teknologi tersebut, sebuah halaman web dapat
digunakan untuk melakukan berbagai tugas, seperti menggambar,
memainkan audio, dan berbagai tambahan fungsi yang
memudahkan pengguna web seperti fungsi drag and drop pada
beberapa web perbelanjaan.
Dengan menggunakan aplikasi web, dibutuhkan sedikit
atau bahkan sama sekali tidak dibutuhkan disk space pada client,
aplikasi selalu sesuai dan tidak perlu dilakukan upgrade secara
manual. Selain itu aplikasi dapat dipakai dengan menggunakan
sistem operasi apa saja selama pengguna menggunakan web
browser yang mendukung teknologi yang dipakai oleh web
tersebut.
18
2.1.6 Web Hosting
Sebuah halaman web harus ditempatkan pada sebuah
server agar dapat diakses oleh orang lain menggunakan web
browser, istilah yang sering dipakai adalah web hosting.
Jenis – Jenis hosting yang ditawarkan oleh perusahaan
penyedia jasa web hosting adalah sebagai berikut :
a. Free web hosting service
Diberikan secara gratis oleh perusahaan dengan kemampuan
terbatas jika dibandingkan dengan layanan yang didapat dengan
membayar, dan sering kali disertai iklan sebagai penunjang.
b. Shared web hosting service
Situs-situs web ditempatkan bersama pada sebuah server
bersama beberapa ratus hingga ribu situs lain dan berbagi
resources seperti RAM dan CPU.
c. Reseller web hosting
Memberikan pengguna jasa hak untuk meng-host web dan
dapat dikombinasikan dengan berbagai jenis hosting lainnya .
d. Virtual Dedicated Server
Dikenal juga dengan sebutan Virtual Private Server ( VPS ),
resources yang dimiliki server dibagi-bagi menjadi virtual
servers, di mana resources akan dialokasikan dengan cara –
cara tertentu sehingga tidak secara langsung merefleksikan
hardware yang digunakan. VPS sering diberi alokasi resources
dengan menggunakan basis one-to-many.
19
e. Dedicated hosting service
Pengguna diberikan web server pribadi dan akses penuh
terhadap web server yang digunakan, namun tidak memiliki
hak kepemilikan atas server yang digunakan.
f. Managed hosting service
Pengguna diberikan web server pribadi namun tidak memiliki
akses penuh, melainkan hanya akses yang telah ditentukan dan
dapat dikontrol melalui remote management tools yang
diberikan oleh penyedia layanan dan tidak memiliki hak
kepemilikan atas server yang digunakan.
g. Colocation web hosting service
Pengguna diberikan hak kepemilikan atas server yang
digunakan, namun penyedia jasa yang menyediakan tempat
untuk menempatkan server tersebut dan merawatnya.
h. Cloud hosting
Jenis hosting baru yang memberikan pengguna jasa hosting
berdasarkan clustered load-balanced servers and utility billing.
Sehingga pengguna hanya perlu membayar secukupnya
tergantung penggunaan.
i. Clustered hosting
Beberapa server meng-host isi yang sama, sehingga
ketersediaan web luas dan nyaris tidak terpengaruh downtime.
20
2.1.7 Analisis
Yang dimaksud dengan analisis adalah penyelidikan
terhadap suatu peristiwa (karangan, perbuatan, dsb) untuk
mengetahui keadaan yang sebenarnya (sebab-musabab, duduk
perkaranya, dsb) dan penguraian suatu pokok atas berbagai
bagiannya dan penelaahan bagian itu sendiri serta hubungan antar
bagian untuk memperoleh pengertian yang tepat dan pemahaman
arti keseluruhan (Kamus Besar Bahasa Indonesia, Edisi III ).
2.1.8 E-Learning
E-Learning adalah pelajaran jarak jauh (distance
Learning) yang memanfaatkan teknologi komputer, jaringan
komputer atau Internet. E-Learning memungkinkan pelajar untuk
belajar melalui komputer di tempat mereka masing-masing tanpa
harus secara fisik pergi mengikuti pelajaran/perkuliahan di kelas.
E-Learning sering pula dipahami sebagai suatu bentuk pelajaran
berbasis web yang bisa diakses dari intranet di jaringan lokal atau
internet. Sebenarnya materi E-Learning tidak harus didistribusikan
secara on-line baik melalui jaringan lokal maupun internet,
distribusi secara off-line menggunakan media CD/DVD pun
termasuk pola E-Learning. Dalam hal ini aplikasi dan materi
belajar dikembangkan sesuai kebutuhan dan didistribusikan
melalui media CD/DVD, selanjutnya pelajar dapat memanfatkan
CD/DVD tersebut dan belajar di tempat di mana dia berada.
21
Ada beberapa pengertian berkaitan dengan E-Learning
sebagai berikut :
• Pelajaran jarak jauh.
E-Learning memungkinkan pelajar untuk menimba ilmu tanpa
harus secara fisik menghadiri kelas. Pelajar bisa berada di
Semarang, sementara “instruktur” dan pelajaran yang diikuti
berada di tempat lain, di kota lain bahkan di negara lain.
Interaksi bisa dijalankan secara on-line dan real-time ataupun
secara off-line atau archieved.
Pelajar dapat belajar dari komputer di kantor ataupun di rumah
dengan memanfaatkan koneksi jaringan lokal ataupun jaringan
Internet ataupun menggunakan media CD/DVD yang telah
disiapkan. Materi belajar dikelola oleh sebuah pusat penyedia
materi di kampus/universitas, atau perusahaan penyedia content
tertentu. Pelajar bisa mengatur sendiri waktu belajar, dan
tempat dari mana ia mengakses pelajaran.
• Pelajaran dengan perangkat komputer
E-Learning disampaikan dengan memanfaatkan perangkat
komputer. Pada umumnya perangkat dilengkapi perangkat
multimedia, dengan cd drive dan koneksi Internet ataupun
Intranet lokal. Dengan memiliki komputer yang terkoneksi
dengan intranet ataupun Internet, pelajar dapat berpartisipasi
dalam E-Learning. Jumlah pelajar yang bisa ikut berpartisipasi
22
tidak dibatasi dengan kapasitas kelas. Materi pelajaran dapat
diketengahkan dengan kualitas yang lebih standar
dibandingkan kelas konvensional yang tergantung pada kondisi
dari pengajar.
• Pelajaran formal vs. informal
E-Learning bisa mencakup pelajaran secara formal maupun
informal. E-Learning secara formal, misalnya adalah pelajaran
dengan kurikulum, mata pelajaran dan tes yang telah diatur dan
disusun berdasarkan jadwal yang telah disepakati pihak-pihak
terkait (pengelola E-Learning dan pelajar sendiri). Pelajaran
seperti ini biasanya tingkat interaksinya tinggi dan diwajibkan
oleh perusahaan pada karyawannya, atau pelajaran jarak jauh
yang dikelola oleh universitas dan perusahaan-perusahaan
(biasanya perusahan konsultan) yang memang bergerak di
bidang penyediaan jasa E-Learning untuk umum. E-Learning
bisa juga dilakukan secara informal dengan interaksi yang lebih
sederhana, misalnya melalui sarana mailing list, e-newsletter
atau website pribadi, organisasi dan perusahaan yang ingin
mensosialisasikan jasa, program, pengetahuan atau
keterampilan tertentu pada masyarakat luas (biasanya tanpa
memungut biaya).
• Pelajaran yang ditunjang oleh para ahli di bidang masing-
masing.
23
Walaupun sepertinya E-Learning diberikan hanya melalui
perangkat komputer, E-Learning ternyata disiapkan, ditunjang,
dikelola oleh tim yang terdiri dari para ahli di bidang masing-
masing, yaitu:
1. Subject Matter Expert (SME) atau nara sumber dari
pelatihan yang disampaikan
2. Instructional Designer (ID), bertugas untuk secara
sistematis mendesain materi dari SME menjadi materi E-
Learning dengan memasukkan unsur metode pengajaran
agar materi menjadi lebih interaktif, lebih mudah dan lebih
menarik untuk dipelajari
3. Graphic Designer (GD), mengubah materi text menjadi
bentuk grafis dengan gambar, warna, dan layout yang enak
dipandang, efektif dan menarik untuk dipelajari
4. Ahli bidang Learning Management System (LMS).
Mengelola sistem di website yang mengatur lalu lintas
interaksi antara instruktur dengan siswa, antarsiswa dengan
siswa lainnya.
Di sini, pelajar bisa melihat modul-modul yang
ditawarkan, bisa mengambil tugas-tugas dan test-test yang harus
dikerjakan, serta melihat jadwal diskusi secara maya dengan
instruktur, nara sumber lain, dan pelajar lain. Melalui LMS ini,
24
siswa juga bisa melihat nilai tugas dan test serta peringkatnya
berdasarkan nilai (tugas ataupun test) yang diperoleh.
E-Learning tidak diberikan semata-mata oleh mesin, tetapi
seperti juga pelajaran secara konvensional di kelas, E-Learning
ditunjang oleh para ahli di berbagai bidang terkait.
2.1.9 Basis Data
Basis Data adalah kumpulan informasi yang disimpan di
dalam komputer secara sistematik sehingga dapat diperiksa
menggunakan suatu program komputer untuk memperoleh
informasi dari basis data tersebut. Software yang digunakan untuk
mengelola dan memanggil query basis data disebut DBMS. Sistem
basis data dipelajari dalam ilmu informasi. Istilah basis data
mengacu pada kumpulan dari data-data yang saling berhubungan,
dan software-nya adalah DBMS.
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 yang dikenal sebagai model basis
25
data atau model data. Model yang umum digunakan sekarang
adalah model relasional, yang menurut istilah Layman mewakili
semua informasi dalam bentuk tabel-tabel yang saling
berhubungan dimana setiap tabel terdiri dari baris dan kolom.
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.
2.1.10 Database Application
Database adalah kumpulan data yang digunakan sekali
atau lebih. Salah satu cara untuk mengelompokan database adalah
dengan melihat tipe dari content, seperti numeric, image, dan full-
text. Metode pengelompokan dimulai dari memeriksa model
database atau arsitektur database. Pada tahun 2010 ini, relational
model digunakan hampir oleh semuanya. Model lain seperti model
hirarki dan model jaringan digunakan untuk representasi dari
relationship. Sistem yang mengatur dan mengurus database
disebut DBMS (Database Management System).
Beberapa software yang digunakan dalam pengaturan
database :
• Microsoft SQL
26
Microsoft SQL Server adalah sebuah sistem manajemen basis
data relasional (RDBMS) buatan Microsoft. Query Languange
utamanya adalah Transact-SQL yang merupakan implementasi
dari SQL standar ANSI/ISO yang digunakan oleh Microsoft
dan Sybase. Umumnya SQL Server digunakan di dunia bisnis
yang memiliki basis data berskala kecil sampai dengan
menengah, tetapi kemudian berkembang dengan digunakannya
SQL Server pada basis data besar.
• MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen
basis data atau DBMS yang multithread, multi-user, dengan
sekitar 6 juta instalasi di seluruh dunia.
MySQL memiliki beberapa keistimewaan, antara lain :
1. Portabilitas.
MySQL dapat berjalan stabil pada berbagai sistem operasi
seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris,
Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka.
MySQL didistribusikan sebagai perangkat lunak sumber
terbuka, dibawah lisensi GPL sehingga dapat digunakan secara
gratis.
27
3. Multi-user.
MySQL dapat digunakan oleh beberapa pengguna dalam waktu
yang bersamaan tanpa mengalami masalah atau konflik.
4. ‘Performance tuning'
MySQL memiliki kecepatan yang menakjubkan dalam
menangani query sederhana, dengan kata lain dapat memproses
lebih banyak SQL per satuan waktu.
5. Ragam tipe data
MySQL memiliki ragam tipe data yang sangat kaya, seperti
signed / unsigned integer, float, double, char, text, date,
timestamp, dan lain-lain.
6. Perintah dan Fungsi
MySQL memiliki operator dan fungsi secara penuh yang
mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan
MySQL memiliki beberapa lapisan keamanan seperti level
subnetmask, nama host, dan izin akses user dengan sistem
perizinan yang mendetail serta sandi terenkripsi.
28
8. Skalabilitas dan Pembatasan
MySQL mampu menangani basis data dalam skala besar,
dengan jumlah records lebih dari 50 juta dan 60 ribu tabel serta
5 milyar baris. Selain itu batas indeks yang dapat ditampung
mencapai 32 indeks pada tiap tabelnya.
9. Konektivitas
MySQL dapat melakukan koneksi dengan klien menggunakan
protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi
MySQL dapat mendeteksi pesan kesalahan pada klien dengan
menggunakan lebih dari dua puluh bahasa. Meski pun
demikian, bahasa Indonesia belum termasuk di dalamnya.
11. Antar Muka
MySQL memiliki antar muka (interface) terhadap berbagai
aplikasi dan bahasa pemrograman dengan menggunakan fungsi
API (Application Programming Interface).
12. Klien dan Peralatan
MySQL dilengkapi dengan berbagai peralatan (tool) yang dapat
digunakan untuk administrasi basis data, dan pada setiap
peralatan yang ada disertakan petunjuk online.
29
13. Struktur tabel
MySQL memiliki struktur tabel yang lebih fleksibel dalam
menangani ALTER TABLE, dibandingkan basis data lainnya
semacam PostgreSQL ataupun Oracle.
2.1.11 IMK
IMK atau dengan nama lain Interaksi Manusia-Komputer
adalah suatu bidang pengetahuan yang mempelajari interaksi
komputer dengan manusia. Di mana mempelajari hal yang meliputi
perancangan, evaluasi, dan implementasi tampilan pengguna
komputer agar dapat dengan mudah digunakan oleh manusia.
Interaksi antara manusia dengan komputer itu sendiri pun adalah
suatu proses, dialog dan kegiatan yang dilakukan oleh manusia
untuk berinteraksi dengan komputer yang keduanya saling
memberikan feedback dan masukan melalui sebuah media untuk
memperoleh hasil yang diinginkan.
Tujuan utama dari pelajaran interaksi ini adalah untuk
memperbaiki dan merawat hubungan antara manusia dan komputer
menjadi lebih mudah digunakan dan juga untuk memenuhi
kebutuhan pengguna / user. Secara teknis, yang dipelajari oleh
interaksi manusia dan komputer adalah sebagai berikut:
• Metodologi dan proses interface design.
30
• Metode pembuatan fitur tambahan (co: software toolkit,
libraries, dan algoritma).
• Teknik dalam mengevaluasi dan membandingkan interface.
• Pembuatan interface baru dan teknik interaksinya.
• Pembuatan deskripsi dan prediksi model, dan teori dari
interaksi itu sendiri.
Dalam hal ini, IMK mengesampingkan faktor manusia, di
mana IMK lebih fokus dengan pengguna / user yang
menggunakan komputer. Di dalam IMK sendiri, ada teori sendiri,
di mana bertujuan untuk membuat hubungan manusia dengan
computer menjadi lebih baik lagi dengan cara
mengimplementasikan software dan hardware yang menunjang.
Interaksi manusia dengan komputer sendiri dapar
dideskripsikan sebagai titik penting komunikasi antara manusia
dengan computer. Pergerakan dari informasi tersebut dapat disebut
juga sebagai “the loop of interaction”. Beberapa dari informasi
tersebut antara lain adalah:
• Task Environment.
• Machine Environment.
• Areas of Interface.
• Input Flow.
• Output.
• Feedback.
31
Dalam perancangan interface tersebut pun, harus
mematuhi 8 golden rules yang sudah menjadi dasar dalam
pembuatan suatu web untuk dapat memenuhi persyaratan bahwa
web tersebut merupakan web yang baik dan benar. 8 golden rules
tersebut antara lain adalah:
• Konsistensi
Konsistensi dilakukan pada urutan tindakan, perintah, dan
istilah yang digunakan pada prompt, menu, serta layar bantuan.
• Memungkinkan pengguna untuk menggunakan shortcut
Ada kebutuhan dari pengguna yang sudah ahli untuk
meningkatkan kecepatan interaksi, sehingga diperlukan
singkatan, tombol fungsi, perintah tersembunyi, dan fasilitas
makro.
• Memberikan feedback yang informatif
Untuk setiap tindakan operator, sebaiknya disertakan suatu
sistem feedback. Untuk tindakan yang sering dilakukan dan
tidak terlalu penting, dapat diberikan feedback yang sederhana.
Tetapi ketika tindakan merupakan hal yang penting, maka
feedback sebaiknya lebih substansial. Misalnya muncul suatu
suara ketika salah menekan tombol pada waktu input data atau
muncul pesan kesalahannya.
• Merancang dialog untuk menghasilkan suatu penutupan
32
Urutan tindakan sebaiknya diorganisir dalam suatu kelompok
dengan bagian awal, tengah, dan akhir. Feedback yang
informatif akan meberikan indikasi bahwa cara yang dilakukan
sudah benar dan dapat mempersiapkan kelompok tindakan
berikutnya.
• Memberikan penanganan kesalahan yang sederhana
Sedapat mungkin sistem dirancang sehingga pengguna tidak
dapat melakukan kesalahan fatal. Jika kesalahan terjadi, sistem
dapat mendeteksi kesalahan dengan cepat dan memberikan
mekanisme yang sedehana dan mudah dipahami untuk
penanganan kesalahan.
• Mudah kembali ke tindakan sebelumnya
Hal ini dapat mengurangi kekuatiran pengguna karena
pengguna mengetahui kesalahan yang dilakukan dapat
dibatalkan; sehingga pengguna tidak takut untuk mengekplorasi
pilihan-pilihan lain yang belum biasa digunakan.
• Mendukung tempat pengendali internal (internal locus of
control)
Pengguna ingin menjadi pengontrol sistem dan sistem akan
merespon tindakan yang dilakukan pengguna daripada
pengguna merasa bahwa sistem mengontrol pengguna.
Sebaiknya sistem dirancang sedemikan rupa sehingga
pengguna menjadi inisiator daripada responden.
33
• Mengurangi beban ingatan jangka pendek
Keterbatasan ingatan manusia membutuhkan tampilan yang
sederhana atau banyak tampilan halaman yang sebaiknya
disatukan, serta diberikan cukup waktu pelatihan untuk kode,
mnemonic, dan urutan tindakan.
2.1.12 UML
UML (Unified Modeling Language) adalah bahasa
spesifikasi standar untuk mendokumentasi, menspesifikasi, dan
membangun sistem software engineering. Standar spesifikasinya
telah dijadikan standar de facto oleh OMG (Object Management
Group) pada tahun 1997.
Spesifikasi ini menjadi populer dan standar karena
sebelum adanya UML, ada berbagai macam spesifikasi yang
berbeda. Hal ini menyulitkan komunikasi antar pengembang
software. Untuk itu beberapa pengembang spesifikasi yang sangat
berpengaruh berkumpul untuk membuat standar baru. UML
diciptakan oleh Grady Booch. James Rumbaugh pada tahun 1994
dan kemudian Ivar Jacobson.
UML mendeskripsikan OOP (Object Oriented Program)
dengan beberapa diagram, diantaranya adalah:
• Structure Diagrams:
1. Class Diagrams.
34
Diagram yang menggambarkan struktur sebuah sistem
dengan menunjukkan sistem kelas, atribut dan hubungan
antar-kelas.
Gambar 2.1 Contoh Class Diagram
• Behavior Diagrams:
1. Use-case Diagrams.
Diagram yang menunjukkan fungsionalitas yang disediakan
oleh sistem dari segi aktor.
35
Gambar 2.2 Contoh Use Case Diagram
2. Activity Diagrams.
Diagram yang mewakili bisnis dan operasional langkah
demi langkah sesuai dengan alur kerja komponen dalam
sebuah sistem.
36
Gambar 2.3 Contoh Activity Diagram
37
UML digunakan untuk menentukan, visualisasi,
modifikasi, membangun dan mendokumentasikan sesuatu yang
berorientasi objek sistem software yang intensif dalam
pengembangan. UML menawarkan sebuah cara standar untuk
memvisualisasikan sebuah arsitektur sistem blue print, yang
termasuk elemen - elemen di dalamnya antara lain adalah:
• Aktor.
• Proses bisnis.
• Komponen.
• Kegiatan / Activity.
• Programming Language Statement.
• Database schemas.
• Reusable software components.
UML bukanlah sebuah pembangun metode secara mandiri,
namun ia dirancang agar kompatibel dengan metode berorientasi
objek pengembangan software paling terkemuka pada saat metode
itu dibuat (misalnya: OMT, Booch Method, Objectory). Sejak UML
berevolusi, beberapa dari metode yang ada disusun kembali untuk
mengambil keuntungan dari pengembangan notasi yang terbaru
(misalnya saja OMT), dan beberapa metode baru telah diciptakan
berdasarkan UML.
Pemodelan juga sangat penting untuk membedakan antara
model UML dan himpunan diagram dari sebuah sistem. Diagram
38
adalah sebagian presentasi grafis dari suatu sistem model. Model
ini juga berisi backplane semantic. Dari sudut pandang sebuah
sistem model, UML dapat dibagi menjadi dua, yaitu:
• Statis / Static, Structural
Menekankan struktur statis dari sistem dengan menggunakan
objek, atribut, dan relationship. (mencakup Class Diagrams
dan Composite Structure Diagram).
• Dynamis / Dynamic
Menekankan perilaku dinamis dari sistem menunjukkan
kolaborasi antara benda dan perubahan keadaan internal dari
objek. (mencakup Sequence Diagrams, Activity Diagrams dan
State Machine Diagrams).
2.2 Teori Khusus
2.2.1 Game
Yang dimaksud dengan game adalah sebuah aktivitas
terstruktur, biasanya dilakukan untuk kesenangan dan seringkali
untuk alat pendidikan. Game adalah sebuah kegiatan yang berbeda,
dimana sebuah kegiatan biasanya dilakukan untuk mendapatkan
hasil, namun game lebih merujuk kepada pengembangan ide.
39
Bagian utama dari sebuah game adalah tujuan, tantangan,
dan interaksinya. Game biasanya melibatkan ransangan fisik atau
mental, dan bahkan keduanya. Banyak game membantu
mengembangkan beberapa kemampuan, seperti halnya melakukan
latihan.
Perkembangan teknologi jaman sekarang mengakibatkan
bertambahnya jenis-jenis dari game yang beredar di lingkungan
sekarang ini. Pada awalnya orang-orang hanya mengenal game
dengan permainan fisik saja, namun sekarang mereka sudah bisa
menikmati game dengan alat elektronik. Game elektronik juga
terdiri dari berbagai jenis, seperti pada komputer, PSP, PlayStation,
Komputer, dll.
Game pada komputer pada awalnya menggunakan
application yang bekerja dengan menggunakan komputer. Namun
sekarang sudah banyak game yang bisa dimainkan dengan web
browser. Hal ini dikarenakan perkembangan teknologi dunia
komputer yang semakin cepat dan mutakhir.
2.2.2 Game Design
Terdiri dari 2 tipe yaitu :
a) Game Design
40
Game Design adalah salah satu tahap pengembangan game dan
merupakan proses desain isi dan cara bermain dari sebuah
game pada tahap pre-produksi.
Pada tahap ini berbagai macam keahlian dilibatkan dan
digabung menjadi suaut sistem koordinasi yang saling
melengkapi, diantaranya adalah :
• Game mechanic dan game engine
• Game artist
• Game programmer
• Sound effects dan Musik
• Narasi dan Cerita
Proses mendesain game bermacam-macam tergantung kepada
kebijakan perusahaan masing-masing, namun cara yang paling
umum adalah terlebih dahulu membuat sebuah dokumen yang
memetakan seluruh desain dari game dan fitur-fiturnya dalam
berbagai tingkat kedetilan. Dokumen ini selalu diupdate pada
saat pengembangan sudah berjalan sesuai dengan
berkembangnya game yang dibuat dari konsep dasarnya.
b) Gameplay
Gameplay adalah sebuah istilah yang berarti apa saja yang
dapat dilakukan pemain pada saat memainkan game tersebut,
termasuk juga pengalaman pemain pada saat berinteraksi
dengan sistem.
41
Beberapa tipe gameplay yang sering ditemui adalah :
• Cooperative gameplay
Tipe game ini menempatkan seorang pemain bersama
dengan pemain lain dan bekerja sama untuk mencapai
sebuah tujuan yang diberikan oleh game tersebut.
Contoh : Contra, Left 4 Dead
• Deathmatch
Tipe game ini memberikan kesempatan bagi pemain-
pemainnya untuk mengadu kemampuan dalam memainkan
game, dapat berupa tim melawan tim lain ataupun FFA
(Free-For-All, semua pemain saling bermusuhan).
Contoh : Counter Strike, Command & Conquer
• Emergent gameplay
Tipe game ini sangat unik dan memerlukan usaha berpikir
dalam memainkannya. Inti dari tipe game ini adalah
interaksi pemain dengan sistem yang kemudian
menghasilkan berbagai kemungkinan untuk melakukan satu
hal yang sama. Yang kemudian dikenal dengan Cyber Life
karena kemiripannya dengan dunia nyata.
Contoh : The Sims, Grand Theft Auto, Xian
• Hack and slash
Tipe game Hack and Slash menyediakan permainan yang
tanpa perlu berpikir panjang pada saat permainan karena
42
pemain diberi waktu yang sangat pendek untuk merespon
reaksi musuh, dan umumnya game tipe ini menempatkan
pemain selalu dekat dengan musuh dengan berbagai cara.
Contoh : Diablo, Golden Axe, Dynasty Warriors
• Leveled gameplay
Tipe game ini memiliki tingkat kesulitan yang beradaptasi
dengan kemampuan pemain, sehingga selalu menyediakan
tantangan bagi pemain secara manual dengan dipilih sendiri
tingkat kesulitannya oleh pemain atau otomatis diatur oleh
sistem.
Contoh : Final Fantasy VIII, Dragon Age, Elder Scrolls IV :
Oblivion
• Micromanagement
Tipe game yang memberi pemain kontrol atas segala proses
manajemen untuk menghasilkan sesuatu yang kemudian
dimanfaatkan sesuai dengan fungsinya, umumnya tipe
game ini sering dijumpai pada game Strategi.
Contoh : Starcraft, Warcraft, Capitalism
• Nonlinear gameplay
Tipe game ini memberikan kebabasan untuk pemain
melakukan tugas-tugas yang diberikan dalam urutan yang
bebas dan kadang tidak harus dilakukan.
Contoh : Elder Scrolls, Fallout
43
• Twitch gameplay
Tipe game ini memfokuskan pada reaksi pemain dan
ketepatannya, sering kali berupa game FPS (First Person
Shooters) dan board game.
Contoh : Chess, Point Blank
c) Komponen Game:
Game terdiri dari beberapa komponen:
1. Grafik (Visual)
2. Suara (Audio)
3. AI (Artificial Intelligence)
4. Cerita (Background Story)
5. Networking (Multiplayer)
Komponen 1 hingga 4, Grafik, Suara, AI dan Cerita adalah
bagian tak terpisahkan dari suatu game. Sehingga keempat
komponen itu mutlak ada. Namun tidak berarti harus membuat
sendiri keempat komponen tersebut. Di dunia sekarang ini banyak
terdapat engine (komponen jadi) untuk masing-masing komponen
game, baik sendiri-sendiri maupun gabungan dari beberapa
komponen. Bahkan beberapa memiliki kelengkapan hingga
seluruh lima komponen game telah tersedia dalam satu engine.
Sehingga hanya satu hal yang perlu dilakukan oleh game developer
44
yaitu membuat suatu cerita yang menarik dan menyenangkan untuk
dimainkan.
Apabila game developer ingin membuat sendiri masing-
masing komponen dari game itu, maka kemampuan yang harus
dimiliki untuk masing-masing komponen adalah:
1. Grafik:
• menguasai bahasa pemrograman.
• menguasai ilmu matematika.
• menguasai teknik menggambar.
2. Suara:
• menguasai bahasa pemrograman.
• menguasai ilmu matematika.
• menguasai ilmu fisika, terutama mengenai frekuensi suara.
• menguasai teknik suara dan music.
3. AI:
• menguasai bahasa pemrograman.
• menguasai ilmu matematika.
• menguasai teknik AI atau minimal teknik automata.
4. Cerita:
• memiliki fokus yang jelas sehingga tujuan permainan jelas.
• mampu membuat alur cerita yang menyenangkan.
5. Networking:
• menguasai bahasa pemrograman.
45
• menguasai ilmu matematika.
• menguasai teknik TCP/IP atau network protocol lainnya.
2.2.3 Kimia
Kimia adalah ilmu yang mempelajari mengenai komposisi
dan sifat zat atau materi dari skala atom hingga molekul serta
perubahan atau transformasi serta gabungan-gabungan unsur yang
membentuk ikatan senyawa kimia. Kimia juga mempelajari
pemahaman sifat dan interaksi atom individu dengan tujuan untuk
menerapkan pengetahuan tersebut pada tingkat makroskopik.
Menurut kimia modern, sifat fisik materi umumnya ditentukan oleh
struktur pada tingkat atom yang pada gilirannya ditentukan oleh
gaya antar atom.
Kimia sering disebut sebagai "ilmu pusat" karena
menghubungkan berbagai ilmu lain, seperti fisika, ilmu bahan,
nanoteknologi, biologi, farmasi, kedokteran, bioinformatika, dan
geologi. Hubungan ini timbul melalui berbagai subdisiplin yang
memanfaatkan konsep-konsep dari berbagai disiplin ilmu. Sebagai
contoh, kimia fisik melibatkan penerapan prinsip-prinsip fisika
terhadap materi pada tingkat atom dan molekul.
Berikut ini adalah materi-materi kimia yang diajarkan pada
tingkat SMA :
1. Struktur Atom
46
Adalah materi kimia yang menjelaskan tentang susunan atom,
yang terdiri dari elektron dan proton, nomor atom, dan
pengaturan elektron.
2. Sistem Periodik Unsur
Adalah materi kimia yang menjelaskan tentang penggolongan
atom yang dibedakan berdasarkan jumlah proton dan muatan
intinya.
3. Ikatan Kimia
Adalah materi kimia yang menjelaskan tentang kecendrungan
unsur mencapai kestabilannya dengan cara berikatan dengan
unsur lain.
4. Termokimia
Adalah materi kimia yang menjelaskan tentang cara
perhitungan besar energi yang dilepaskan pada saat terjadi
reaksi kimia.
5. Laju Reaksi
Adalah materi kimia yang menjelaskan perubahan konsentrasi
zat dalam suatu reaksi dalam setiap satuan waktu (detik).
6. Kesetimbangan
Adalah materi kimia yang menjelaskan tentang perbedaan
antara reaksi kimia yang dapat kembali ke asal (reversibel), dan
reaksi kimia yang tidak bisa kembali ke asal (ireversibel).
7. Larutan
47
Adalah materi kimia yang menjelaskan tentang pencampuran
dua zat atau lebih dan tidak memperlihatkan perbedaan antara
zat pelarut dan zat terlarut.
8. Sistem Koloid
Adalah materi kimia yang menjelaskan tentang campuran yang
keadaannya terletak pada kondisi larutan dan suspensi. Contoh
suspensi : campuran air dan tanah.
9. Zat Radio Aktif
Adalah materi kimia yang menjelaskan tentang zat yang
memancarkan radiasi berupa partikel maupun gelombang
elektromagnetik.
10. Kimia Unsur
Adalah materi kimia yang menjelaskan tentang sifat dari
golongan-golongan yang ada pada sistem periodik unsur.
11. Redoks Dan Elektrokimia
Adalah materi kimia yang menjelaskan tentang perpindahan
elektron dan perubahan bilangan oksidasi.
12. Stoikiometri
Adalah materi kimia yang menjelaskan tentang hubungan
pengukuran zat-zat dalam suatu reaksi kimia.
13. Kimia Organik
Adalah materi kimia yang menjelaskan tentang senyawa-
senyawa yang mengandung unsur karbon.
48
2.2.4 Facebook Application
Facebook Application adalah aplikasi yang dijalankan
diatas facebook platform, framework yang memungkinkan
pengembang program mengembangkan aplikasi yang berintraksi
dengan facebook dan data user.
Terdapat beberapa jenis aplikasi yang ada pada Facebook
seperti horoscope, game, news, jokes, dan lain sebagainya.
Aplikasi dalam Facebook tidak semuanya dikembangkan oleh
pihak Facebook sendiri, melainkan juga ada pihak Developer
lainnya yang ikut dalam kegiatan ini. Perbedaan antara aplikasi
yang dikembangkan oleh Facebook dan yang dikembangkan oleh
pihak luar adalah aplikasi dari Facebook bersifat gratis untuk
mendapatkan semua servis dan fasilitasnya. Sedangkan untuk
aplikasi yang dikembangkan oleh pihak luar, developer harus
membayar sejumlah uang untuk mendapatkan fasilitas penuh untuk
aplikasi tersebut.
Sekarang ini, Aplikasi pada Facebook yang sedang
beredar sekarang ini antara lain :
• Game
Game merupakan salah satu aplikasi Facebok yang paling
banyak diminati oleh pengguna Facebook. Selain terdapat
bermacam-macam desain game menarik yang beredar, alur
49
ceritanya juga menjadi suatu daya tarik tersendiri dalam game
tersebut.
Jenis game yang beredar sekarang ini di Facebook adalah Text-
Based (Mafia Wars, Castle Age), RPG (Pet Society), dan
Vertical Shooting (Pixel Ranger).
Aplikasi game ini juga mempunyai fasilitas yang bisa user
rasakan apabila user membayar sejumlah uang kepada pihak
game tersebut. Fasilitas itu seperti mendapatkan barang yang
bisa ditukar dengan barang istimewa yang tidak bisa didapat
dengan mata uang d dalam game.
• Reminder
Aplikasi ini merupakan aplikasi yang memberitahukan user
tentang segala sesuatu yang penting, seperti tanggal ulang
tahun teman user, jadwal event yang user bentuk, dsb. Aplikasi
ini merupakan aplikasi gratis yang bebas untuk digunakan oleh
siapa saja dan fasilitasnya dapat diakses secara keseluruhan.
• Quiz
Aplikasi ini adalah aplikasi dimana user menjawab pertanyaan-
pertanyaan yang berada didalam aplikasi ini, dan kemudian
hasilnya akan di akumulasi berdasarkan jawaban user. Aplikasi
ini biasanya tentang kepribadian user, sifat dan juga kondisi
user.
50
2.2.5 PHP
PHP adalah skrip yang dijalankan di server (Abdul Kadir,
2009). Berbeda dengan konsep JavaScript yang dijalankan pada
sisi client. Keuntungan yang diperoleh dari penggunaan PHP
adalah kode yang menyusun program tidak perlu dibagikan kepada
user, sehingga kerahasiaan kode bisa terlindungi.
PHP dapat digunakan untuk mengakses berbagai macam
database seperti MicrosoftAccess, Oracle, MySql, dan lain-lain..
Hal-Hal yang berada didalam PHP adalah :
• Variabel berfungsi untuk menyimpan suatu nilai dan nilai yang
disimpan bisa berubah sewaktu-waktu.
Aturan yang ada dalam pembuatan variabel adalah harus
memenuhi aturan pengenal (identifier). Identifier banyak
digunakan dalam program untuk memberi nama variabel,
fungsi, atau kelas. Aturan yang berlaku adalah :
Karakter yang dapat digunakan adalah huruf, angka, atau
garis bawah (_).
Karakter pertama harus berupa huruf atau garis bawah.
Panjang pengenal (identifier) tidak dibatasi.
Huruf kecil dan kapital dibedakan.
• Tipe Data
Terdapat 3 tipe data dasar dalam PHP yaitu :
a. Integer
51
Merupakan tipe data bilangan bulat dengan jangkauan kira-
kira dari -2 Milyar sampai dengan +2 milyar.
b. Double
Merupakan tipe data bilangan real dan desimal, yaitu
bilangan yang memiliki nilai pecahan.
c. String
Merupakan tipe data teks yaitu sederetan karakter yang
tidak menyatakan bilangan.
• Konstanta
Merupakan sebuah nilai tetap dalam program.
• Konversi Tipe
Merupakan pengalihan suatu tipe data ke tipe data lain.
• Operator
Merupakan simbol yang digunakan dalam program untuk
melakukan suatu operasi, seperti penjumlahan ataupun
pengurangan. Nilai yang dioperasikan oleh operator akan
membentuk ekspresi.
Contoh : 2+3* diisebut ekspresi. Tanda + dan * disebut
operator, sedangkan 2, 3, 4 disebut operand atau argumen.
Terdapat beberapa kelompok operator antara lain operator
matematika dan operator logika.
52
• Create Function
Istilah function adalah sebuah blok kode yang diberi nama.
Programmer memasukkan fungsi yang sudah ada kemudian
dikombinasikan sehingga membentuk sebuah operator yang
baru.
• Menyertakan fungsi dari file lain
Kode PHP yang berada dalam suatu file dapat disertakan ke
dalam suatu file melalui require_once.
2.2.6 Ajax
Ajax (Asynchronous JavaScript and XML) adalah sebuah
teknik yang memungkinkan untuk membuat aplikasi web yang
interaktif (Abdul Kadir, 2009). Dengan penggunaan Ajax, aplikasi
web dapat berinteraksi dengan server di latar belakang sehingga
tidak mempengaruhi halaman web secara keseluruhan.
Bagian-bagian penting yang perlu diperhatikan dalam
lapisan Ajax adalah :
• Lapisan Ajax meminta layanan ke server atau tidak, tergantung
pada jenis layanan pada interface.
• Lapisan Ajax terkesan menambah waktu proses sehingga
terkesan memperlambat proses. Namun pada kenyataannya
adalah sebaliknya. Lapisan Ajax akan melakukan permintaan
53
yang menghasilkan informasi yang lebih sedikit daripada
meminta seluruh informasi dalam 1 halaman.
• Lapisan Ajax bekerja dengan pendekatan Asinkron yang
berarti bahwa client bisa meminta layanan dari server dan tidak
perlu menunggu sampai server melayaninya. Dengan demikian,
saat informasi dari server belum didapat, layanan terhadap user
tetap bisa dilakukan.
• Komunikasi antara klien dan server tidak perlu mengubah
keseluruhan interface dalam halaman web, tetapi cukup hanya
bagian tertentu yang terpengaruh. Hal seperti ini tidak bisa
dilakukan pada aplikasi web yang tidak menggunakan Ajax.
Menurut Jesse James Gareet, Ajax yang lengkap
mencakup :
1. XHML (Extensible HyperText Markup Languange), sebagai
perluasan dari HTML.
2. CSS (Cascading Style Sheets) sebagai format bagian dari
dokumen.
3. DOM (Document Object Model) untuk mengatur interaksi dan
penampilan isi HTML dan XML secara dinamis.
4. XML (Extensible Markup Languange) memungkinkan untuk
melakukan pertukaran data.
54
5. XSLT (Extensible Stylesheet Languange Transformation)
adalah bahasa berbasis XML yang ditujukan untuk melakukan
transformasi dokumen XML ke bentuk yang lain.
6. XMLHttpRequest untuk melakukan pertukaran data secara
asinkron.
7. JavaScript sebagai bahasa untuk membentuk lapisan Ajax.
Software yang diperlukan untuk membangun aplikasi web
dengan Ajax adalah :
1. Browser untuk sisi Klien. Contoh dari browser bisa berupa
Internet Explorer ataupun Moozila Firefox.
2. Web server untuk sisi server. Contoh dari web server adalah
apache.
2.2.7 FBML
FBML (Facebook Markup Languange) adalah sebuah
bahasa pemograman yang digunakan bersamaan dengan HTML
untuk membangun sebuah aplikasi pada media atau platform
Facebook (Agha A.Natasyah, 2009). Dengan FBML, developer
bisa membuat sebuah aplikasi yang dapat menangani beberapa
point-point penting yang terintegrasi dengan Facebook, seperti :
Profile, profile actions, News Feed, dan mini-feed.
Kelompok Tag Nama Tag Fungsi Tag
55
User/Group Fb:name Menampilkan nama user.
Fb:user Menampilkan info user.
Fb:pronoun Menampilkan pronoun user
(he, she, dan you)
Fb:profile-pic Menampilkan foto profile
user.
fb:eventlink Menampilkan event link
user.
Fb:grouplink Menampilkan group link
user.
Fb:if-is-user Membatasi pengguna
aplikasi pada user tertentu.
Fb:user-status Menampilkan status terakhir
user
Fb-if-is-group-
member
Cek keanggotaan user
pada suatu group.
User-specific Fb:add-section-
button
Membuat sebuat tombol
“Add”
Fb:if-section-not-
added
Mengecek apakah sebuah
bagian sudah di “Add”.
Fb:user-table Membuat tabel user
-fb:user-item Komponen untuk mengisi
tabel user.
Fb:subtitle Memberikan subtitle pada
page.
Fb:publisher-link Menampilkan link publisher.
Embedded
Media
fb:iframe Membuat <iframe> (HTML).
Fb:photo Menampilkan foto user
56
berdasarkan photo ID.
Fb:mp3 Memasang media audio
(MP3).
Fb:swf Memasang media flash
(swf).
Fb:silverlight Memasang kontrol
microsoft silverlight.
Fb:flv Memasang media
video/audio (flv).
Social Widgets Fb:comments Menampilkan comment box
pada Facebook Connect.
Fb:live-stream Menampilkan live-stream
pada page canvas.
Visibility on
Profile
Fb:visibility-to-
owner
Menampilkan content
(fasilitas admin).
Fb:visible-to-
friends
Mentampilkan content untuk
teman.
Fb:visible-to-app-
users
Menampilkan content untuk
pengguna applikasi.
Fb:restricted-to Membatasi umur pengguna.
Fb:21-plus Membatasi umur pengguna
pada 21 tahun ke atas.
Platform
internationalizat
ion
Fb:date Menampilkan tanggal.
Fb:fbml-attribute Menampilkan atribut pada
tag fbml.
Fb:intl Menterjemahkan teks ke
bahasa inggris.
57
Fb:intl-token Memberikan variabel pada
fb:intl.
Fb:tag Mengganti tag FBML
Fb:tag-attribute Mengganti atribut tag.
Fb:tag-body Mengganti tag body html.
Tools Fb:board Menampilkan papan
diskusi.
Fb:chat Memulai Facebook chat
dalam aplikasi.
Fb:comments Menampilkan comments
pada aplikasi.
Fb:feed Menampilkan newsfeed.
Fb:typeahead-
input
Membuat input box.
Fb:typeahead-
button
Membuat opsi pada input
box.
Fb:js-string Membuat variabel untuk
javascript.
Fb:redirect Mengalihkan halaman.
Fb:time Menampilkan waktu
Fb:title Menampilkan judul
Forms Fb:submit Membuat tombol submit
Fb:captcha Membuat gambar acak.
Message
Attachments
Fb:attachment-
preview
Melihat pesan lampiran.
Notifications
and Requests
Fb:req-choice Mengirim permintaan dan
request dengan inbox.
Fb:request-form Mebuat form untuk memilih
user.
58
Fb:multi-friend-
selector
Memilih teman dengan form
yang berbeda.
Fb:request-form-
submit
Membuat tombol untuk form
memilih teman.
Fb:application-
name
Menampilkan nama
aplikasi.
Status
Messages
Fb:error Menampilkan pesan error
standar Facebook.
Fb:explanation Menampilkan penjelasan.
Fb:success Menampilkan pesan
sukses.
Fb:message Menampilkan pesan.
Page
Navigation
Fb:dashboard Memberikan dashboard
header standar Facebook.
Fb:action Memberikan navigasi.
Fb:create-button Membuat tombol.
Fb:help Memberikan link untuk
bantuan.
Fb:header Memberikan title standar
untuk Facebook.
Fb:mediaheader Membuat standar header
untuk media.
Fb:header-title Memberikan judul header.
Fb:owner-action Memberikan link dari
fb:mediaheader jika yang
membuka content adalah
owner.
Fb:tabs Membuat menu tab.
Fb:tab-item Item menu tab.
Wall Fb:wall Tag untuk memulai menulis
59
pada wall facebook.
Fb:wallpost Membuat posting pada
wall Facebook.
Fb:wallpost-action Memasukkan link pada wall.
Tabel 2.1 Tabel Tag-Tag FBML yang umum digunakan
Berikut ini adalah contoh koding dari php yang
menggunakan FBML :
<?PHP
// Get these from http://developers.facebook .com
$api_key = 'xxx';
$secret = 'xxx';
// Names and links
$app_name = "Application name";
$app_url = "app-url"; // Assumes application is at
http://apps.facebook .com/app-url/
$invite_href = "invite.php"; // Rename this as needed
require_once 'facebook .php';
$facebook = new Facebook($api_key, $secret);
$facebook->require_frame();
$user = $facebook->require_login();
if(isset($_POST["ids"])) {
echo "<center>Thank you for inviting
".sizeof($_POST["ids"])." of your friends on <b><a
60
href=\"http://apps.facebook .com/".$app_url."/\">".$app_name."</a>
</b>.<br><br>\n";
echo "<h2><a
href=\"http://apps.facebook .com/".$app_url."/\">Click here to return
to ".$app_name."</a>.</h2></center>";
} else {
// Retrieve array of friends who've already authorized the
app.
$fql = 'SELECT uid FROM user WHERE uid IN (SELECT
uid2 FROM friend WHERE uid1='.$user.') AND is_app_user = 1';
$_friends = $facebook->api_client->fql_query($fql);
// Extract the user ID's returned in the FQL request into a
new array.
$friends = array();
if (is_array($_friends) && count($_friends)) {
foreach ($_friends as $friend) {
$friends[] = $friend['uid'];
}
}
// Convert the array of friends into a comma-delimeted string.
$friends = implode(',', $friends);
// Prepare the invitation text that all invited users will receive.
$content =
"<fb:name uid=\"".$user."\" firstnameonly=\"true\"
shownetwork=\"false\"/> has started using <a
href=\"http://apps.facebook .com/".$app_url."/\">".$app_name."</a>
and thought it's so cool even you should try it out!\n".
"<fb:req-choice url=\"".$facebook->get_add_url()."\"
61
label=\"Put ".$app_name." on your profile\"/>";
?>
<fb:request-form
action="<? echo $invite_href; ?>" method="post"
type="<? echo $app_name; ?>"
content="<? echo
htmlentities($content,ENT_COMPAT,'UTF-8'); ?>">
<fb:multi-friend-selector
actiontext="Here are your friends who don't have <?
echo $app_name; ?> yet. Invite whoever you want -it's free!"
exclude_ids="<? echo $friends; ?>" /> </fb:request-
form>
<?PHP
}
?>
Dan Hasilnya adalah seperti ini :
62
Gambar 2.4 Hasil dari PHP dengan FBML
2.2.8 Facebook API
Facebook API (Application Programming Interface)
adalah metode yang bisa digunakan pada aplikasi untuk
memanipulasi profile, friend, page, groups, photo, bahkan data
yang ada dalam database Facebook.
2.2.9 FQL
FQL (Facebook Query Languange) adalah bahasa query
yang disediakan untuk mempermudah developer mengakses data
dari Facebook.
63
FQL adalah suatu cara untuk mengakses data dari
Facebook menggunakan fungsi API lain, tapi dengan interface
SQL. Pada kenyataannya, banyak dari perintah pemanggil API
adalah sekumpulan perintah untuk Query-query FQL. Namun
semua pengecekan privasi tetap dilakukan.
Keuntungan dari penggunaan FQL dari metode tradisional
API adalah :
• XML yang disingkat akan mengurangi penggunaan bandwidth.
Dibandingkan dengan mengambil semua informasi yang
tersedia dalam jumlah yang besar, developer bisa mendapatkan
informasi yang dibutuhkan dengan membandingkan dengan
kondisi yang spesifik. Developer bisa meminta informasi yang
spesifik dengan menambahkan batasan ketentuan dan hanya
membuat daftar dari sebagian informasi dari ketentuan yang
dipilih.
• Request yang lebih complex bisa mengurangi jumlah dari
request yang dibutuhkan. Kebanyakan dari data yang sedang
dihasilkan bergantung pada hasil dari metode-metode
pemanggilan sebelumnya. Sebagai contoh, dengan API lama,
untuk mendapatkan nama dari seorang teman, harus mengakses
friends.get dan mengoper hasilnya ke users.getInfo. Sekarang
ini hanya perlu mengeksekusi 1 FQL yang menggunakan
subquery untuk mendapatkan daftar dari teman. Ini juga
64
mengurangi waktu akses dan kecepatan dalam menerima
respon.
Dan jika menggunakan fql.multquery, query yang ditampilkan
lebih berguna dimana bisa menggunakan hasil dari suatu query
dalam pemakaian untuk query lainnya dalam sekali
penggunaan.
• Menyediakan sebuah interface yang konsisten untuk semua
data-data. Dibandingkan harus mempelajari berbagai metode
lainnya yang semuanya memiliki berbagai keanehannya,
request bisa dibuat dengan 1 function yang mempunyai fungsi
return yang konsisten.