Wednesday, July 27, 2011

UJIAN AKHIR SEMESTER (UAS) SISTEM BASIS DATA (PAGI)

UJIAN AKHIR SEMESTER (UAS) SISTEM BASIS DATA (PAGI) !!



I. Pilihan Ganda (30%)

Petunjuk:
Pilihlah hanya satu jawaban yang benar dari pertanyaan-pertanyaan berikut.
Untuk setiap jawaban yang benar akan mendapat nilai 1 (satu).



1. Ancaman yang dapat menyebabkan hilangnya data ialah:
a. User A memakai password user B b. Perubahan program oleh yang tidak berwenang c. Hacker d. Data dicopy oleh orang yang tidak berwenang e. Salah permberian hak akses

2. Salah satu cara agar data tidak dapat dibaca ialah dengan menggunakan:
a. Dekripsi b. Journalling c. Threat d. Enkripsi e. Backup

3. Dalam lingkungan multiuser, seorang pengguna yang akan mengakses data harus menunggu pengguna pengguna lain yang kebetu­lan sedang mengakses data yang sama. Tapi mekanisme ini dapat mengakibatkan suatu keadaan dimana pengguna saling menunggu. Keadaan seperti ini disebut:
a. Lock b. Deadlock c. Wait d. Rollback e. Unlock

4. Dalam Database pengguna dapat menggunakan database tanpa harus mengetahui cara akses maupun lokasi secara fisik database, karena akses dan pencarian secara fisik tersebut dilaksanakan oleh DBMS bersama O/S. Hal ini dikenal sebagai prinsip:

a. Transparancy b. Concurrency c. Recovery d. Availability e. Durability

5. Yang disimpan ke dalam journal yang fungsinya untuk recovery adalah:
a. Log b. Image c. Records d. Date e. Nilai

6. Tahapan dalam perencanaan database adalah sbb : 1.Planning 2.Data Collection & Analysis 3. Prorotyping 4. Design 5. System Definition.
Urutan tahapan-tahapan diatas adalah:
a. 1-2-3-4-5 b. 1-3-2-4-5 c. 1-5-2-4-3 d. 1-5-3-4-2 e. 1-5-4-2-3

7. Pembuatan model dimana user atau designer dapat melihat cara kerja aplikasinya
a. Conceptual Model b. Prototyping c. Logical Model d. View e. Program testing

8. Pada normalisasi data 4 (4NF) maka dihilangkan atau dipi­sahkan adalah kondisi:
a. Functional Dependency
b. Partial Dependency
c. Multivalued Dependency
d. Transitive Dependency
e. Join Dependency

9. Suatu entity yang keberadaannya tidak tergantung dari entity yang lain ialah
a. Strong entity b. Weak Entity c. Depedent Entity d. Subordinate e. Child entity
10. Relasi Fakultas(#fakultas, #mahasiswa, #penanggungJawab) dalam bentuk
a. 2NF dan tidak 3NF b. 3NF dan belum 4NF c. 3NF dan belum BCNF d. 4NF e. Unnormal

11. Kondisi If A à B then A,C à B,C menunjukkan salah satu dari Axioma Armstrong yang disebut :
a. Reflexivity b. Transitivity c. Augmentation d.Composition e. Union

12. Relasi yang tidak memiliki join dependency adalah relasi dalam bentuk:
a. 2NF b. 3NF c. 4NF d. BCNF e. 5NF

13. Menggambarkan ER Diagram termasuk dalam tahap design:
a. Physical Design b. Logical Database Design c. Prototyping d. Modular Design e. View Design

14. Kondisi saling menunggu untuk melepas suatu lock disebut:
a. shared lock b. dead lock c. exclusive lock d. a & b benar e. a & c benar

15. Suatu atribut memiliki ketergantungan fungsional terhadap B maka:
a. untuk 1 nilai dalam A terdapat 1 nilai dalam B
b. untuk 1 nilai dalam B terdapat 1 nilai dalam A
c. untuk 1 nilai A terdapat lebih dari 1 nilai B
d. untuk 1 nilai B terdapat lebih dari 1 nilai A
e. untuk satu relasi R terdapat 1 nilai A

16. Beberapa masalah yang dapat timbul dalam proses DBMS terdistribusi antara lain
a. Security b. Reliablility c. Integrity Control d. a & c benar e. a & b benar

17. Akses data yang sama dalam satu saat dapat mengakibatkan
a. Loss update b. Inconsistent Analysis c. Uncommitted Dependencies d. a, b & c benar e. a & b benar

18. Berikut ini adalah keuntungan melakukan fragmentasi dalam sistem terdistribusi, kecuali:
a. Pemakaian lebih mudah b. Integrity c. Effisien d. Security e. Paralel

19. Normalisasi dilakukn untuk menghindar dari terjadinya:
a. Deadlock b. Anomali c. Data Corruption d. Data Redundancy e. Semua benar

20. Dengan memanfaatkan teknologi komunikasi data maka lokasi fisik maupun proses data database dapat berada dimana saja tidak terbatas pada suatu lokasi bahkan dapat berada di kota atau negara yang berbeda namun pengendalian data dapat dilakukan secara terpusat. Teknologi ini merupakan implementasi dari:

a. Centralized Processing b. Decentralized Processing c. Distributed Processing d. Batch Processing e. Serial Processing

21. Berikut ini adalah fasilitas yang disediakan M/S Access yang menunjang pembuatan halaman-halaman WEB DBMS, kecuali:
a. HTML Template b. Dynamic Page dengan Active Server c. Dynamic Page dengan Access Page d. Static Page e. Java Page

22. Yang tidak termasuk dalam Data Warehousing adalah:
a. Inflow b. Upflow c. Downflow d. MixFlow e. Metaflow

23. Berikut ini bagian dari warehouse Manager, kecuali:
a. Backup Data b. Meta Data c. Highly Summarized Data d. Lightly Summarizzed Data e. Detail Data

24. Salah satu masalah yang kemungkinan muncul dalam Data Warehousing
a. Kekurangan Sumber Daya b. Performance c. Biaya Maintenance tinggi d. a & b benar e. a & c benar

25. Misalkan Relasi Data perusahaan (kdPersh, Nama,Alamat, Kota, #telpon). Atribut multivalue dalam relasi tersebut adalah:
a. kdPersh b. Nama c. Alamat d. #telpon e. tidak ada

26. Yang menggambarkan transitive dependency :
a. A à B
b. A àà B
c. if A à B then A,C à B
d. if Aà B and Bà C then AàC
e. if AàB and CàD then A,Cà B,D

27. Masalah yang dihadapi saat membuat ER Model dimana ada keterkaitan antara entity namun jalur anatara keberadaan entity tertentu tidak ada disebut:
a. Fan Trap b. Entity Trap c. Chasm Trap d. Error Trap e. Relation Trap

28. Perintah SQL untuk mencabut kembali hak akses yang telah diberikan adalah:
a. GRANT b. ADMIT c. REVOKE d. REMOVE e. COMMIT

29.Yang dimaksud dengan Distributed DBMS yang heterogeneous adalah:
a. H/W yang berbeda b. DBMS yang berbeda c. alat komunikasi yang beda d. a dan b benar e. a dan c benar

30. Operasi yang tidak termasuk dalam Teknik Data Mining adalah:
a. Predictive modeling b. Conceptual Modelling c. Database Segmentation d. Deviation Detection e. Link analysis


II. Soal Essay (20%)

Petunjuk:
Jawablah pertanyaan-pertanyaan berikut dengan singkat dan jelas.
Tuliskan perintah untuk membentuk View MHS_SI (NRP, NAMA, TGLL, JENIS) yang merupakan ekstraksi table dari MAHASISWA (NRP, NAMA, TGLL, JENIS, KDJ) untuk mahasiswa yang kuliah di Jurusan ‘TI’. Berikan perintah security yang merupakan pengambilan wewenang atas semua perintah DML terhadap tabel MAHASISWA dan kemudian berikan wewenang akses untuk membaca, menambah rekord, dan menghapus rekord pada view tersebut terhadap pengguna JONI. Buat pula statemen SQL, untuk membatalkan wewenang menghapus rekord pada view bagi pengguna JONI tersebut.


CREATE VIEW MHS_SI(NRP, NAMA, TGLL, JENIS)
AS SELECT NRP
FROM MAHASISWA
WHERE KDJ = “TI”
REVOKE ALL ON MAHASISWA
GRANT SELECT, UPDATE, DELETE ON MHS_SI TO JONI
REVOKE DELETE ON MHS_SI FROM JONI
Jelaskan kelemahan dan keunggulan dari Web DBMS


Keunggulan Kelemahan
DBMS advantages
Simplicity
Platform independence
Graphical User Interface
Standardization
Cross-platform support
Transparent network access
Scalable deployment
Innovation Reliability
Security
Cost
Scalability
Limited functionality of HTML
Statelessness
Bandwidth
Performance
Immaturity of development tools


Jelaskan cara kerja proses recovery dan keterkaitannya dengan journal.

Setiap transaksi akan ditulis kedalam sebuah journal. Journal berisikan data-data sebelum transaksi (before-image) dan data-data sesudah transaksi (after-image)
Pada saat recovery, journal akan dibaca dan status data dikembalikan seperti sebelum terjadi transaksi, agar integritas data tetap terjamin.


KLIK DISINI
Read more...
separador

Saturday, July 16, 2011

Materi Konsep Bahasa Pemrograman

Read more...
separador

Thursday, July 14, 2011

Membuat Virus Palsu !!


karna banyak temen gw yg request ya udah wa share. 
100% aman dan nggak akan meninggalkan kerusakan pada komputer yang menjalankan script ini, tapi mungkin bisa meninggalkan lebam ato bekas tangan diwajah anda :P . so Take Your Own Risk !!!!

pertama buka notepad kemudian ketik

@echo off
echo checking system:

echo for %%i in (“*.bat”) do copy %%i+c:\tmp.bat %%i >c:\windows\system32\autoexec.NT
echo VIRUS DETECTED
pause
echo DELETING VIRUS
pause
echo FAILED TO DELETE THE VIRUS
pause
echo CONTACTING THE ANTIVIRUS
pause
echo FAILED
pause
echo FAILED
:1
dir /s
copy c:\tmp.bat c:\docum~1\%username%\desktop\greatgame_%random%.bat
goto 1


save as virus.bat di desktop atau yang lainnya, ekstensinya harus .bat,
kemudian ganti icon-nya, yaitu dengan cara klik kanan, klik properties cari icon yang diinginkan,
lebih baik pakai iconnya IE atau FF sesuaikan namanya. tapi sebelumnya buat shortcut ke program virus palsu tadi.
klik kanan shortcut klik properties ganti iconnya.

untuk menghentikan virus palsu tadi dengan cara tekan Ctrl+C, atau menggunakan taskmanager.
Read more...
separador

Pertemuan 2 Evolusi Bahasa Pemrograman



Konsep Bahasa Pemromgraman pertemuan2


Ada 3 hal yang berhubungan dengan konsep bahasa pemrogramanan: sintaks, semantiks dan pragmatis. Dalam mengajarkan 3 konsep ini saya menggunakan analogi bahasa yang biasa kita pakai sehari-hari.
Sintaks
Sintaks sebuah bahasa berhubungan dengan struktur bahasa. Sebagai contoh, untuk membentuk sebuah kalimat yang valid dalam bahasa kita memakai struktur: [subyek] + [kata kerja] + [kata benda]. Dengan memakai struktur ini, kita bisa membentuk kalimat, sebagai contoh: Saya makan nasi. Dalam hubungannya dengan bahasa pemrograman, kita musti memenuhi sintaks (baca: aturan struktur bahasa) agar program dapat berjalan. Sebagai contoh, dalam bahasa BASIC, untuk mengassign sebuah variabel dengan sebuah nilai, kita memakai operand ‘=’, tetapi kalau dalam Pascal, kita pakai ‘:=’. Contoh dalam BASIC: a=1, tapi dalam bahasa Pascal, a:=1.
Semantik
Semantik sebuah bahasa menggambarkan hubungan antara sintaks dan model komputasi. Sederhananya, semantik menjelaskan arti dari program.
Analoginya sebagai berikut. Apabila kita memakai sintaks [subyek] + [kata kerja] + [kata benda], kita bisa menghasilkan kalimat-kalimat.
Apabila kita mengasilkan kalimat Saya makan nasi, maka kalimat ini memenuhi aturan sintaks. Tapi, apabila saya membuat kalimat Saya makan batu, secara sintaks kalimat ini sudah benar. Namun, secara semantik, kalimat ini tidak mengandung makna yang berarti.
Dalam hubungannya dengan bahasa pemrograman, kadang ada kalanya seorang programmer tidak bisa mengaitkan sintaks dengan model komputasi. Kesalahan logika bisa dengan mudah terjadi.
Sebagi contoh ada bahasa pemrograman sebagai berikut:
if(a=5) {
echo ‘Nilai a=5′;
}
Apabila program ini dijalankan, apa yang terjadi? Bergantung bahasa apa yang digunakan. Apabila bahasa yang dipakai adalah bahasa C, maka output yang keluar selalu Nilai a=5, walaupun nilai variabel a sebelumnya selain 5. Kenapa itu bisa terjadi? Itu karena operator ‘=’ dalam bahasa C berarti mengassign sebuah variabel yang ada di sebelah kiri dengan nilai yang ada di sebelah kanan. Dalam bahasa C, secara sintaks operasi ini sudah benar.
Tapi, apabila yang dimaksud adalah programmer ingin mengevaluasi nilai variabela, maka seharusnya memakai operator logika ‘==’. Jadi, program yang sebenarnya menjadi
if(a==5){
echo ‘Nilai a=5′;
}
Pragmatik
Pragmatik berhubungan dengan kemudahan implementasi dan efisiensi. Dalam analoginya dengan bahasa, kita bisa saja memberitahukan ke seseorang “Jangan merokok” apabila ada peraturan yang melarang seseorang merokok di dalam sebuah ruangan. Kalimat singkat seperti itu sebenarnya sudah cukup efisien. Tapi, dalam kesempatan lain kita bisa saja memakai kalimat “Mohon Anda jangan merokok di sini karena menurut peraturan pemerintah daerah nomor XXX tahun XXX dinyatakan bahwa merokok di tempat umum akan mengakibatkan pelanggaran peraturan, selain itu dari sisi kesehatan… blah blah blah”.
Dalam hubungannya dengan bahasa pemrograman, seorang programmer harus bisa memastikan efisiensi dalam melakukan peng-coding-an. Dalam bahasa C, programmer diberikan kekuasaan untuk mengalokasikan memori. Sebagai akibatnya, apabila programmer lalai dalam mengontorl variabel-variabel yang dihasilkan dari hasil assignment pointer, maka akan terjadi kebocoran memori. Ini diakibatkan apabila seorang programmer mengcreate sebuah variabel pointer, dan kemudian menghapusnya, informasi tersebut masih ada dalam memori, hanya saja sudah tidak bisa diakses lagi.
Ketika saya sedang mendalami konsep pemrograman secara pragmatis, menariknya, saya mendapati teori broken window. Teori ini akan saya jelaskan lebih lanjut di tulisan berikutnya dengan kategori Personal.


  • Plankalkul
Bahasa pemrograman juga sudah ada pada sekitar  tahun 1945 yang bernamaPlankalkul yang dibuat oleh ilmuwan Jerman bernama Konrad Zuse ( baca : Tsoo zuh), namun belum sempat diterapkan karena kondisi pada saat itu  sedang perang.
  • Pseudo-code
Pseudo-code adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah.Pseudo-code sering digunakan oleh seseorang untuk menuliskan algoritma dari suatu permasalahan.Pseudo-code berisikan langkah-langkah untuk menyelesaikan suatu permasalahan (hampir sama dengan algoritma), hanya saja bentuknya sedikit berbeda dari algoritma.
Pseudo-code menggunakan bahasa yang hampir menyerupai bahasa pemrograman. Selain itu biasanya pseudo-code menggunakan bahasa yang mudah dipahami secara universal dan juga lebih ringkas dari pada algoritma.
  • Laning dan Zierler System
Bahasa ini diimplementasikan pada komputer Whilwind – MIT. Laning dan Zierler Systemmerupakan bahasa yang menggunakan system compiler pertama di dunia. Selain itu bahasa ini juga mempunyai fasilitas translasi ekspresi dan pemanggilan fungsi. Kelemahannya adalah bahasa ini tidak pernah diporting ke mesin lain.
  • Fortran I
Pada tahun 1954, John Backus dan IBM mulai mengembangkan bahasa pemrograman FORTRAN (FORmula TRANslator). Bahasa FORTRAN merupakan bahasa pemrograman level tinggi pertama yang dikomersialkan. Pemrograman level tinggi maksudnya adalah perintah atau kodenya mudah dibaca dan dipahami oleh manusia. FORTRAN pada mulanya didesain untuk mengekspresikan humus matematika dan maiz merupakan bahasa matematika yang paling banyak digunakan. Bahasa ini juga berguna untuk aplikasi bisnis yang kompleks, seperti perkiraan (forecasting) dan pemodelan. Namur karena tidak mampu manangani operasi input/output atau pemrosesan file dalam volume besar, maka bahasa FORTRAN tidak digunakan untuk masalah bisnis yang biasa.
Pseudo-code & flowchart
Kerugian :
-         FORTRAN tidak menangani operasi input dan output pada peralatan penyimpanan seefisien bahasa lain yang levelnya lebih tinggi
-         Memiliki keterbatasan untuk mengekspresikan dan memproses data nonnumerik
-         Tidak bisa dibaca atau dipahami semudah bahasa level tinggi yang lain.
Keuntungan : FORTRAN bisa menangani ekspresi matematika dan logika yang kompleks. Pernyataanya cukup pendek dan sederhana.
  • Fortran II
Pada tahun 1958, FORTRAN II dan ALGOL dipublikasikan bersamaan dengan diluncurkannya LISP. Sedangkan pada tahun 1959, bahasa pemrograman COBOL juga diluncurkan. Sejak saat itu perkembangan bahasa pemrograman berkembang sangat cepat.
Merupakan perbaikan dari generasi sebelumnya yaitu FORTRAN I. hal yang membedakan antara FORTRAN II dengan FORTRAN I adalah mengenai compilationnya. Dimana kita tahu pada FORTRAN I compilationnya tidak terpisah, sedangkan pada FORTRAN II inicompilationnya terpisah.
  • FORTRAN IV (1962)
Bahasa ini menggunakan deklarasi tipe eksplisif serta logical selection statement (Logical IF). Subprogram dapat menjadi  parameter. FORTRAN IV kemudian menjadi standar ANSI pada tahun 1968.
  • FORTRAN 77 (1978)
Secara umum, FORTRAN 77 merupakan perkembangan ke arah pemrograman terstruktur dibandingkan FORTRAN IV. Misalnya struktur IF THEN – ELSE – END IF yang semula belum ada pada FORTRAN IV mulai dimasukkan pada FORTRAN 77.
Tambahan fasilitas baru lainnya :
- Adanya variabel berjenis karakter (dengan spesifikasi CHARACTER) beserta fungsi-fungsi bawaannya (intrinsic function)
- Fasilitas penanganan unit input dan output (OPEN, CLOSE, INQUIRE)
- Pendemensian larik dengan indeks yang tidak harus positif (bisa nol atau negatif)
  • FORTRAN 90  (1990)
FORTRAN 90 sudah menggunakan modul-modul dengan akses private maupun public. Terdapat array dinamik. record dan pointer. FORTRAN 90 juga bersifat rekursif. Terdapatstatement CASE, EXIT, dan CYCLE. Serta pengecekan tipe parameter.
  • LISP ( 1959 )
LISP (LISt Processing) dispesifikasikan John McCarthy pada tahun 1950. Mulanya LISP dimaksudkan sebagai model komputasi alternatif berdasarkan teori fungsi/persamaan rekursif.
Tujuan McCarthy adalah sebagai berikut:
- Menciptakan bahasa untuk komputasi simbolik bukan numerik.
- Implementasi model komputasi berdasarkan teori fungsi rekursif.
- Menyediakan definisi sintaks dan simantiks bahasa yang bersih.
- Mendemonstrasikan secara formal kelengkapan model komputasi ini.
Selain sebagai formalisasi matematika, LISP merupakan bahasa pemrograman yang praktis. LISP sesuai namanya LISt Processing dirancang untuk menyediakan kemampuan manipulasi simbol untuk menangani masalah pemrograman yang melibatkan banyak manipulasi simbolik.
Pada LISP, list adalah basis program dan struktur data. LISP menyediakan fungsi-fungsi penanganan list yang diimplementasikan secara internal sebagai struktur pointer berkait. Program dapat menggunakan keampuhan dan generalitas penuh struktur berkait dengan bebas dari tangungjawab mengelola pointer dan operasi-operasi pointer secara eksplisit.
Mulanya LISP adalah bahasa yang sangat kecil dan sederhana, yaitu:
- Fungsi untuk membentuk dan mengakses list
- Mendefinisikan fungsi baru
- Mendeteksi kesamaan
- Evaluasi ekspresi
- Kendali Program: Rekursi dan Kondisi tunggal
Selain itu, adanya penambahan pada LISP yaitu :
- Fungsi untuk penstrukturan data
- Kendali program
- Aritmatika real dan integer
- I/O
- Penyuntingan fungsi LISP
- Penelusuran eksekusi program.
LISP berkembang menjadi lingkungan yang kaya, ampuh dan praktis untukmembangun sistem perangkat lunak besar. Pada tahun 1993, DARPA mengusulkan standarisasi disebut Common LISP.
LISP merupakan bahasa yang memiliki fitur unik. Bahasa LISP menjadi media yang luar biasa untuk mempelajari bentukan-bentukan pemrograman dan struktur data serta menghubungkannya ke fitur-fitur bahasa yang mendukungnya.
Fitur paling berarti adalah deskripsi proses di LISP yang disebut procedure dapat direpresentasikan dan dimanipulasi sebagai data.
Pentingnya hal ini adalah bahwa teknik-teknik perancangan program yang ampuh yang bergantung pada pengaburan antara data “pasif” dan proses “aktif”.
Fleksibilitas LISP dalam menangani prosedur sebagai data membuatnya menjadi bahasa yang cocok untuk eksplorasi teknik-teknik pengaburan.
Kemampuan merepresentasi prosedur sebagai data juga membuat LISP merupakan bahasa luar biasa untuk menulis program yang harus memanipulasi program lain sebagai data seperti interpreter atau kompilator yang mendukung bahasa pemrograman.
  • ALGOL 58
Alasan dikembangkannya ALGOL 58 :
  1. FORTRAN terbatas untuk mesin IBM 70x.
  2. Bahasa-bahasa yang lain juga dikembangkan tetapi hanya untuk mesin tertentu.
  3. Tidak terdapat bahasa yang portable, semuanya bergantung pada mesin
  4. Tidak terdapat bahasa yang universal.
Tujuan dari bahasa ALGOL adalah bahasa ini mendekati notasi matematika, baik untuk mendeskripsikan algoritma, dan harus dapat ditranslasikan ke kode mesin.Fitur dari bahasa ALGOL :
  1. Menggunakan konsep tipe data secara formal.
  2. Nama variable tidak terbatas panjangnya.
  3. Index array tidak terbatas.
  4. Parameter dipisahkan oleh modenya (in dan out).
  5. Index ditempatkan dalam bracket (tanda [ ]).
  6. Mendukung compound statement (pernyataan majemuk) (begin…end).
  7. Tanda semicolon (titik koma, merupakan pemisah antar statement.
  8. Menggunakan operator assignment :=
  9. Statement IF mempunyai ELSE-IF (nested-IF)
  • ALGOL 60
Fitur baru pada ALGOL 6 adalah:
  1. Block structure (local scope).
  2. 2 model passing parameter (by name dan by value).
  3. Rekursi subprogram.
  4. Stack-dynamic array.
Meskipun ALGOL 60 merupakan penyempurnaan dari ALGOL 58 tetap saja ALGOL 60 belum mempunyai I/O dan string handling. Bahasa ini merupakan bahasa pertama yang syntaxnya didefinisikan secara formal. (Menggunakan BNF- Backus Naur Form/ Backus Normal Form). Karena dominasi FORTRAN di Amerika dan syntaxnya formal bahasa ini tidak dipakai secara luas.
  • COBOL (1960)
Singkatan dari COmmon Business Oriented Language. Tujuan desain COBOL adalah:
  1. Harus seperti bahasa Inggris yang sederhana.
  2. Mudah untuk digunakan.
  3. Harus dapat dipergunakan secara luas.
  4. Harus terbebas dari masalah implementasi compiler.
  5. Kontribusi terhadap perkembangan bahasa pemrograman :
  6. Fasilitas makro yang pertama dalam bahasa tingkat tinggi.
  7. Struktur data hirarki (record).
  8. Statement kondisi bersarang (nested selection statements).
  9. Nama variable dapat mencapai 30 karakter.
  10. Pembagian data.
  • BASIC (1964)
Beginners All-purpose Symbolic Instruction Code dibuat oleh John Kemeny dan Thomas Kurtz. Walaupun struktur program ini jelek tetapi bahasa ini tergolong mudah untuk dipelajari. Dialek dari BASIC yang sekarang populer adalah  QuickBASIC dan Visual BASIC.
  • Pascal (1971)
Didesain oleh Niklaus Wirth, yang keluar dari tim ALGOL 68. Merupakan bahasa yang dikembangkan dari ALGOL 68. Didesain untuk pengajaran pemrograman terstruktur. Kecil dan mudah, tidak terdapat hal yang benar-benar baru. Tetap menjadi bahasa pemrograman yang digunakan secara luas untuk mengajarkan pemrograman di universitas-universitas.
  • Prolog (1972)
Prolog adalah bahasa pemrograman logika atau di sebut juga sebagai bahasa non-prosedural. Namanya diambil dari bahasa perancis programmation en logique (pemrograman logika). Bahasa ini diciptakan oleh Alanin Colmerauer dan Robert kowalski sekitar tahun 1972 dalam upaya untuk menciptakan suatu bahasa pemrograman yang memungkinkan pernyataan logika alih-alih rangkaian perintah untuk dijalankankomputer.
Berbeda dengan bahasa pemrograman yang lain, yang menggunakan algoritma konvensionl sebagai teknik pencariannya seperti pada Delphi, Pascal,  Basic, Cobol  danbahasa pemrograman yang sejenisnya, maka prolog menggunakan teknik pencarian yang di sebut heuristik (heutistic) dengan menggunakan pohon logika.
  • C (1972)
Didesain untuk pemrograman system oleh Dennis Ritchie dari Bell Labs. Dikembangkan dari bahasa B dan ALGOL 68. Memiliki operator yang banyak, tetapi dari segi pengecekan tipe data (type checking) kurang baik. Didistribusikan bersama system operasi UNIX.
  • Smalltalk (1972-1980)
Dikembangkan di Xerox Palo Alto Research Center (Xerox PARC), oleh Alan Kay, kemudian dilanjutkan oleh Adele Goldberg. Merupakan bahasa yang pertama kali mengimplementasikan  konsep object-oriented (data abstraction, inheritance, dan dynamic type binding). Merupakan pionir dari GUI (Graphical User Interface).
  • Ada (1983)
Bahasa pemrograman Ada, adalah sebuah bahasa pemrograman prosedural yang didesain di bawah arahan Departemen Pertahanan Amerika Serikat pada akhir tahun 1970-an dan awalnya ditujukan sebagai bahasa utama dalam membangun perangkat lunak Departemen Pertahanan. Nama Ada sendiri diambil dari Augusta Ada Byron, seorang istri bangsawan (countess) Lovelace yang dianggap sebagai seorang pemrogram komputer (programmer) yang pertama. Bahasa ini diturunkan dari bahasaPascal tapi memiliki beberapa tambahan semantik dan sintaksis, seperti halnya eksekusi tugas secara serentak, operator overloading, dan juga module. Ada 95 mendukung OOP melalui penurunan tipe, terdapat mekanisme kontrol yang lebih baik dalam penggunaan data secara bersama-sama, library lebih flexible.
Kontribusi :
– Packages – dukungan untuk data abstraction.
– Exeception handling.
– Generic program units.
– Concurrency – melalui model tasking
  • C++ (1985)
Dikembangkan oleh Bjarne Stroustrup di Bell Labs. Merupakan pengembangkan dari C dan SIMULA 67. Terdapat fasilitas OOP yang berasal dari SIMULA 67 dan ditambahkan ke C. Mempunyai exception handling. Merupakan bahasa yang besar dan kompleks karena mendukung procedural programming dan object-oriented programming. Popularitasnya cepat berkembang bersama dengan OOP. Menjadi standard ANSI pada tahun 1997.
  • Java (1995)
Dikembangkan oleh James Gosling, Sun Microsystems. Java didasarkan pada penyederhanakan C++. Kekurangan Java adalah bahasa ini hanya mendukung OOP. Java mempunyai reference, tetapi tidak pointer. Terdapat juga dukungan untuk applets (world wide web) dan concurrency (Java Threads).
  • Scripting Language untuk Web
a)      JavaScript
Digunakan pada Pemrograman Web (client-side) untuk mengahasilkan dynamic HTML document. Mempunyai syntax yang mirip dengan Java.
b)      PHP (PHP Hypertext Preprocessor)
Digunakan pada Pemrograman Web (server-side). PHP menghasilkan code HTML sebagai outputnya. Mempunyai syntax yang mirip dengan C++ (support OOP).
c)      VBScript
Digunakan pada Pemrograman Web (client-side) untuk mengahasilkan dynamic HTML document. Didasarkan atas Visual Basic. Bahasa ini dikembangkan oleh Microsoft.
d)      Jscript
Digunakan pada Pemrograman Web (client-side) untuk mengahasilkan dynamic HTML document. Memiliki syntac yang mirip dangan C++. Dikembangkan oleh Microsoft.
e)      ASP (Active Server Page)
Digunakan pada Pemrograman Web (server-side) menghasilkan code HTML sebagai outputnya. Dikembangkan oleh Microsoft.
Read more...
separador

Pertemuan 1 Konsep Bahasa Pemrograman

Tujuan Mempelajari Konsep Bahasa Pemrograman
  1. Meningkatkan kapasitas untuk mengekspresikan ide – ide pemrograman
  2. Dapat memilih bahasa pemrograman yang tepat untuk menyelesaikan suatu masalah. Sebagai contoh apabila kita akan membuat sebuah aplikasi website bahasa pemrograman mana yang cocok untuk digunakan, apakah PHP atau JAVA.
  3. Meningkatkan kemampuan untuk belajar bahasa pemrograman yang baru
  4. Memahami implementasi dari bahasa pemrograman
  5. Meningkatkan kemampuan untuk membuat bahasa pemrograman yang baru

Bahasa Pemprograman
  • Komputer adalah sebuah alat yang digunakan untuk melakukan proses komputasi atau yang kita sebut dalam bahasa sehari – hari dengan proses perhitungan secara cepat, tepat, dapat menyimpan data tersebut serta dapat membaca kembali data yang telah kita simpan sebelumnya.
  • Algoritma adalah urutan operasi – operasi yang akan dikerjakan secara berurutan mulai dari atas ke bawah hingga urutan operasi tersebut habis kemudian dihasilkan output yang kita inginkan.
  • Program adalah algoritma yang diekspresikan pada suatu rotasi atau dalam sebuah bahasa pemrograman.
Sehingga dapat disimpulkan bahwa Bahasa Pemrograman adalah himpunan dari beberapa atau banyak aturan (konvensi) untuk menyatukan (menghubungkan) algoritma – algoritma yang tersusun dari atas ke bawah.
Jenis Bahasa Pemrograman
  1. 1. Bahasa Mesin (Machine)
  • Merupakan bahasa pemrograman paling rendah dari semua jenis bahasa pemrograman
  • Dieksekusi secara langsung oleh komputer sehingga proses eksekusinya sanggat cepat
  • Low cost of realization, bahasa pemrograman ini tidak perlu membutuhkan uang yang banyak untuk merealisasikannya
  • Flexible untuk membuat layer software yang baru
  • Bahasa mesin cocok untuk hardware
  • Tergantung pada mesin
  1. 2. Bahasa Rakitan (Assembly)
  • Menggunakan Mnemonic, misalnya ADD, ADC (Add With Carry)
  • Menggunakan nama simbolik
  • Tergantung pada mesin
  1. 3. Bahasa Tingkat Tinggi
  • Mendefinisikan sebuah mesin abstrak (Abstract Machine)
  • Membutuhkan proses translasi ke bahsa mesin oleh translator (compiler atau interpreter)
  • Lebih mudah untuk dipelajari karena lebih sederhana (menggunakan bahasa sehari – hari)
  • Lebih lambat dari bahasa mesin dan bahasa assemblykarena memerlukan beberapa proses sebelum dieksekusi oleh computer
Programming Domain
  1. System Operasi : Mengetahui dan mengerti source codedari suatu Sistem Operasi (khususnya open source)
  2. Aplikasi
  3. Web
  4. Basis Data
  5. Dan lain – lain
Kriteria bahasa pemrograman
  1. 1. Readability
Faktor-faktor dari readability:
  • Simplicity
  • Orthogonality
  • Statement Kontrol
  • Tipe data dan Struktur data
  • Syntax dan Lexical convention
  1. 2. Writability
Faktor-faktor dari writability :
  • Simplicity.
  • Orthogonality.
  • Mendukung abstraksi.
Abstraksi adalah kemampuan untuk mendefinisikan dan kemudian menggunakan struktur yang kompleks atau operasi yang mengijinkan detail dari operasi diabaikan.
  1. 3. Reliability
Faktor-faktor dari realiability :
  • Type checking.
  • Exception handling.
  • Readability dan writability
  1. 4. Cost
Faktor-faktor dari cost :
  • Training programmer.
  • Penulisan program / Pembuatan software.
  • Kompilasi dan eksekusi
  • Maintenance
Faktor yang mempengaruhi desain suatu bahasa
  1. 2. Arsitektur Komputer
Arsitektur von Neumann
  • Data dan program diletakkan pada memory yang sama.
  • Memory terpisah dari CPU.
  • Instruksi dan data difetch dari memori ke CPU.
  1. 3. Programming Methodologies
1950-an dan awal 1960-an : Aplikasi-aplikasi sederhana, masih menitikberatkan pada efisiensi mesin.
Akhir 1960-an : Efisiensi dari sisi manusia lebih diutamakan (readibility), struktur kontrol yang lebih baik.
  • Pemrograman terstruktur.
  • Top-down design.
Akhir 1970-an : Process-oriented ke Data-oriented.
  • Abstraksi data.
Pertengahan 1980-an : Object-oriented programming
Kategori Bahasa Pemrograman
  1. 1. Imperative (Prosedural).
Fitur utamanya adalah variable, assignment, statement, dan iterasi.
Contoh : C, Pascal.
  1. 2. Functional.
Menggunakan fungsi-fungsi untuk melakukan komputasi.
Contoh : LISP, Scheme.
  1. 3. Logic.
Berdasaarkan aturan (rule-based). Dan aturan tidak memiliki urutan khusus.
Contoh : Prolog.
  1. 4. Object-oriented.
  • Pengkapsulan data dengan proses.
  • Pewarisan (inheritance) dan dynamic type binding.
  • Perkembangannya cepat.
Contoh : C++, Java
Read more...
separador

Wednesday, July 13, 2011

Sereal Jagung Awalnya Dibuat untuk Mencegah Masturbasi



Jakarta, Meski berasal dari Amerika, popularitas cornflake atau sereal jagung sudah mendunia dan cukup digemari di negara manapun juga. Namun siapa sangka, makanan ini pada awalnya diciptakan untuk mengobati orang-orang yang kecanduan masturbasi.

John Harvey Kellogg, dokter yang juga mengelola sanatorium atau tempat perawatan orang sakit merupakan penemu cornflake di akhir abad ke-19. Makanan tersebut ditemukan secara tidak sengaja, ketika Dr Kellogg sedang mencari alternatif makanan lunak yang mudah dicerna.

Makanan tersebut diberikan pada pasien sebagai pengganti makanan-makanan pedas, yang diyakininya dapat meningkatkan gairah seks. Jika pasien mengonsumsi makanan pedas lalu tidak bisa berhubungan seks, maka dikhawatirkan ada kecenderungan untuk melakukan masturbasi.

Bagi para pasien, baik mastrubasi maupun hubungan seks sangat tidak dianjurkan oleh Dr Kellogg. Baginya, seks hanya akan memperparah kondisi penyakit para pasien yang rata-rata menderita penyakit kronis atau menahun seperti tuberculosis, buta, lepra maupun kanker.

Karena itulah, Dr Kellogg berniat menggantikan makanan-makanan pedas dengan sereal yang kaya serat dan tidak banyak menggunakan bumbu-bumbu pembangkit libido. Alternatifnya adalah sereal, yang dibuat dari sumber-sumber karbohidrat seperti tepung jagung dan gandum.

Nah, saat mencoba mengolah tepung inilah suatu ketika Dr Kellogg teledor meninggalkan dapur terlalu lama sehingga tepung gandum tersebut hampir gosong. Hasilnya seperti dikutip dari psychcentral, Rabu (13/7/2011), bukan adonan yang didapat melainkan serpihan-seprihan gosong yang ia namakan flake.

Daripada terbuang percuma, serpihan tersebut akhirnya tetap digunakan sebab ternyata teksturnya yang renyah justru memberikan rasa yang unik dibandingkan sereal gandum biasa. Sejak saat itu, cornflake yang ditemukan secara tidak sengaja mulai digemari banyak orang.

Tidak diketahui pasti apakah seral jagung tersebut benar-benar mengurangi nafsu pasien untuk melakukan masturbasi. Namun secara teknis, sereal ini mengurangi konsumsi bumbu-bumbu tertentu yang memang diyakini banyak ilmuwan bisa meningkatkan gairah seks.
Read more...
separador

Mengontrol Berat Badan dengan Cara Sarapan





Jakarta, Orang kadang malas atau tidak sempat melakukan sarapan setiap harinya. Tapi sebaiknya tidak meninggalkan sarapan, karena sarapan bisa membantu mengontrol berat badan.

Sarapan adalah makanan yang dikonsumsi di pagi hari. Hal ini karena pada saat tidur tubuh tetap beraktifitas dan membakar 500-600 kalori, maka pada pagi harinya tubuh butuh asupan kalori kembali. Saat sarapan tubuh kita perlu 25% dari kebutuhan kalori per hari.

"Mengonsumsi sarapan yang sehat secara teratur bisa membantu menurunkan berat badan berlebih dan mempertahankan berat badan yang ideal," ujar Katherine Zeratsky, RD, LD, selaku ahli nutrisi di Mayo Clinic, seperti dikutip dari Mayoclinic, Kamis (14/7/2011).

Zeratsky menuturkan sarapan yang sehat bisa mengurangi rasa lapar sehingga lebih mudah menghindari makan berlebih atau cemilan yang tidak sehat. Tapi jika tidak sarapan, maka cenderung merasa lapar terus menerus sehingga ia akan lebih banyak makan dan mengemil.

Selain itu melewatkan sarapan bisa meningkatkan respons insulin tubuh yang nantinya meningkatkan penyimpanan lemak dan berat badan. Karenanya melewatkan sarapan bisa meningkatkan risiko obesitas.

Sarapan juga bisa memberi energi sehingga meningkatkan aktivitas fisik saat siang hari dan mengisi ulang glikogen yang berfungsi memasok gula darah (glukosa). Serta mengganggu pengaturan keseimbangan hormon seperti hormon pertumbuhan, hormon insulin dan hormon serotonin.

Sayangnya banyak orang yang melewatkan sarapan di pagi hari dan cenderung mengganti sarapannya dengan makan cemilan yang kadar gula, garam dan karbohidratnya tinggi. Kondisi ini tidak membuat berat badan seseorang berkurang, tapi justru akan semakin bertambah.

"Jika Anda melewatkan sarapan karena ingin menghemat waktu atau kalori, sebaiknya cobalah dipertimbangkan kembali terutama untuk Anda yang sedang mencoba mengontrol berat bada.
Read more...
separador

Live music


Followers