Senin, 05 April 2010

ERD

TUGAS PENDAHULUAN
PRAKTIKUM BASIS DATA
MODUL 1
ENTITY RELATIONSHIP DIAGRAM (ERD)




Disusun Oleh :
Ferawati Dinda (0834010233)
Grup BD TF-2

Asisten :
( )



LABORATORIUM SISTEM INFORMASI
PROGDI TEKNIK INFORMATIKA
UNIVERSITAS PEMBANGUNAN NASIONAL VETERAN JAWA TIMUR


I. PERMASALAHAN
- MEMBUAT TUTORIAL ERD SISTEM INFORMASI RENTAL VCD
II. PENYELESAIAN PERMASALAHAN
ASUMSI
Pada sistem informasi rental vcd ini asumsi yang dipakai sebagai berikut :
1. Pada entitas penyewa relasi dengan koleksi dimana relasi melakukan menyewa dengan kardinalitasnya M to M.
Karena banyak penyewa yang bisa menyewa banyak koleksi

2. Sedangkan, pada admin berelasi dengan koleksi dimana relasi mempunyai dengan kardinalitasnya M to M.
Artinya banyak admin yang mempunyai banyak koleksi

3. Entitas penyewa berelasi dengan admin, dengan relasi bertransaksi dengan kardinalitasnya M to M.
Artinya banyak penyewa bisa melakukan transaksi dengan admin

4. Dan entitas admin berelasi dengan waktu dengan relasi mencatat dengan kardinalitasnya M to M.
Karena banyak admin yang mencatat waktu peminjaman dan pengembalian.











CARA YANG DIGUNAKAN DAN HASIL YANG DIPEROLEH
- Untuk mengetahui sistem manajemen penyewaan rental vcd dengan asumsi yang ada dan dengan melalui prosedur – prosedur yang telah di asumsikan.saya menyimpulkan ada 4 entitas antara lain :

1. Penyewa
Nama
No_anggota
Alamat
No_telp

2. Admin
Nama
No_pegawai
No_telp
Alamat

3. Koleksi
Jumlah
Judul
Kode_Film
Tarif

4. Waktu
Tgl peminjaman
Tgl pengembalian


































LEMBAR PENGESAHAN

Telah diperiksa dan disetujui tugas pendahuluan :

Praktikum : Basis Data
Modul : 1
Judul : ERD
Group : BD TF-2



Surabaya, april 2010

Mengetahui,
Asisten Praktikum



(………………….)

Rabu, 10 Maret 2010

makalah

Struktur Sistem Operasi


KATA PENGANTAR
Tugas makalah ini merupakan hasil dari pencarian dari berbagai macam pengetahuan yang di cari dari sebuah nara sumber yang memang memberikan pengetahuan tentang sistem operasi.sebagai mahasiswa saya berharap makalah ini bisa menjadi sesuatu yang berguna untuk kalangan mahasiswa yang membutuhkan makalah tersebut.

DAFTAR ISI
1. BAB Pendahuluan
2. BAB Pembahasan Tentang Stuktur Sistem Operasi
3. PENUTUP
3.1. Kesimpulan
4. Daftar Pustaka
















Bab 1. Pendahuluan
Bab ini berisi pembahasan Struktur Sistem Operasi . membahas Komponen-komponen Sistem operasi,Managemen Proses,Managemen memori utama,Managemen secondary-stroage, Managemen sistem I/O,Managemen Berkas,Sistem proteksi,Jaringan,layanan sistem operasi, sytem calls,Mesin Virtual,Perancangan sistem dan implementasi,dan System Generation(SYSGEN),

________________________________________
BAB 2. Pembahasan

Struktur Sistem Operasi

Komponen-komponen Sistem
Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama. Namun menurut Avi Silberschatz, Peter Galvin, dan Greg Gagne, umumnya sebuah sistem operasi modern mempunyai komponen sebagai berikut:
• Managemen Proses.
• Managemen Memori Utama.
• Managemen Secondary-Storage.
• Managemen Sistem I/O.
• Managemen Berkas.
• Sistem Proteksi.
• Jaringan.
• Command-Interpreter system.








Managemen Proses
Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen proses seperti:
• Pembuatan dan penghapusan proses pengguna dan sistem proses.
• Menunda atau melanjutkan proses.
• Menyediakan mekanisme untuk proses sinkronisasi.
• Menyediakan mekanisme untuk proses komunikasi.
• Menyediakan mekanisme untuk penanganan deadlock.
Managemen Memori Utama
Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte mempunyai alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sistem dimatikan.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen memori seperti:
• Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.
• Memilih program yang akan di-load ke memori.
• Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.
Managemen Secondary-Storage
Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpan keseluruhan data dan program komputer dibutuhkan secondary-storage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondary-storage adalah harddisk, disket, dll.
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan disk-management seperti: free-space management, alokasi penyimpanan, penjadualan disk.





Managemen Sistem I/O
Sering disebut device manager. Menyediakan "device driver" yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy disk.
Komponen Sistem Operasi untuk sistem I/O:
• Buffer: menampung sementara data dari/ ke perangkat I/O.
• Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
• Menyediakan driver untuk dapat melakukan operasi "rinci" untuk perangkat keras I/O tertentu.
________________________________________

Managemen Berkas
Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.). Sistem operasi bertanggung-jawab:
• Pembuatan dan penghapusan berkas.
• Pembuatan dan penghapusan direktori.
• Mendukung manipulasi berkas dan direktori.
• Memetakan berkas ke secondary storage.
• Mem-backup berkas ke media penyimpanan yang permanen (non-volatile).
Sistem Proteksi
Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya. Mekanisme proteksi harus:
• membedakan antara penggunaan yang sudah diberi izin dan yang belum.
• specify the controls to be imposed.
• provide a means of enforcement.



Jaringan
Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori atau clock. Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem. Akses tersebut menyebabkan:
• Computation speed-up.
• Increased data availability.
• Enhanced reliability.
Layanan Sistem Operasi
Eksekusi program adalah kemampuan sistem untuk "load" program ke memori dan menjalankan program. Operasi I/O: pengguna tidak dapat secara langsung mengakses sumber daya perangkat keras, sistem operasi harus menyediakan mekanisme untuk melakukan operasi I/O atas nama pengguna. Sistem manipulasi berkas dalah kemampuan program untuk operasi pada berkas (membaca, menulis, membuat, and menghapus berkas). Komunikasi adalah pertukaran data/ informasi antar dua atau lebih proses yang berada pada satu komputer (atau lebih). Deteksi error adalah menjaga kestabilan sistem dengan mendeteksi "error", perangkat keras mau pun operasi.
Efesisensi penggunaan sistem:
• Resource allocator adalah mengalokasikan sumber-daya ke beberapa pengguna atau job yang jalan pada saat yang bersamaan.
• Proteksi menjamin akses ke sistem sumber daya dikendalikan (pengguna dikontrol aksesnya ke sistem).
• Accounting adalah merekam kegiatan pengguna, jatah pemakaian sumber daya (keadilan atau kebijaksanaan).
System Calls
System call menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS. System call menjadi jembatan antara proses dan sistem operasi. System call ditulis dalam bahasa assembly atau bahasa tingkat tinggi yang dapat mengendalikan mesin (C). Contoh: UNIX menyediakan system call: read, write => operasi I/O untuk berkas.
Sering pengguna program harus memberikan data (parameter) ke OS yang akan dipanggil. Contoh pada UNIX: read(buffer, max_size, file_id);



Tiga cara memberikan parameter dari program ke sistem operasi:
• Melalui registers (sumber daya di CPU).
• Menyimpan parameter pada data struktur (table) di memori, dan alamat table tsb ditunjuk oleh pointer yang disimpan di register.
• Push (store) melalui "stack" pada memori dan OS mengambilnya melalui pop pada stack tsb.
________________________________________
Mesin Virtual
Sebuah mesin virtual (Virtual Machine) menggunakan misalkan terdapat sistem program => control program yang mengatur pemakaian sumber daya perangkat keras. Control program = trap System call + akses ke perangkat keras. Control program memberikan fasilitas ke proses pengguna. Mendapatkan jatah CPU dan memori. Menyediakan interface "identik" dengan apa yang disediakan oleh perangkat keras => sharing devices untuk berbagai proses.
Mesin Virtual (MV) (MV) => control program yang minimal MV memberikan ilusi multitasking: seolah-olah terdapat prosesor dan memori ekslusif digunakan MV. MV memilah fungsi multitasking dan implementasi extended machine (tergantung proses pengguna) => flexible dan lebih mudah untuk pengaturan. Jika setiap pengguna diberikan satu MV => bebas untuk menjalankan OS (kernel) yang diinginkan pada MV tersebut. Potensi lebih dari satu OS dalam satu komputer. Contoh: IBM VM370: menyediakan MV untuk berbagai OS: CMS (interaktif), MVS, CICS, dll. Masalah: Sharing disk => OS mempunyai sistem berkas yang mungkin berbeda. IBM: virtual disk (minidisk) yang dialokasikan untuk pengguna melalui MV.
Konsep MV menyediakan proteksi yang lengkap untuk sumberdaya sistem, dikarenakan tiap MV terpisah dari MV yang lain. Namun, hal tersebut menyebabkan tidak adanya sharing sumberdaya secara langsung. MV merupakan alat yang tepat untuk penelitian dan pengembangan sistem operasi. Konsep MV susah untuk diimplementasi sehubungan dengan usaha yang diperlukan untuk menyediakan duplikasi dari mesin utama.









Perancangan Sistem dan Implementasi
Target untuk pengguna: sistem operasi harus nyaman digunakan, mudah dipelajari, dapat diandalkan, aman dan cepat. Target untuk sistem: sistem operasi harus gampang dirancang, diimplementasi, dan dipelihara, sebagaimana fleksibel, error, dan efisien.
Mekanisme dan Kebijaksanaan:
• Mekanisme menjelaskan bagaimana melakukan sesuatu kebijaksanaan memutuskan apa yang akan dilakukan. Pemisahan kebijaksanaan dari mekanisme merupakan hal yang sangat penting; ini mengizinkan fleksibilitas yang tinggi bila kebijaksanaan akan diubah nanti.
• Kebijaksanaan memutuskan apa yang akan dilakukan.
Pemisahan kebijaksanaan dari mekanisme merupakan hal yang sangat penting; ini mengizinkan fleksibilitas yang tinggi bila kebijaksanaan akan diubah nanti.
Implementasi Sistem biasanya menggunakan bahas assembly, sistem operasi sekarang dapat ditulis dengan menggunakan bahasa tingkat tinggi. Kode yang ditulis dalam bahasa tingkat tinggi: dapat dibuat dengan cepat, lebih ringkas, lebih mudah dimengerti dan didebug. Sistem operasi lebih mudah dipindahkan ke perangkat keras yang lain bila ditulis dengan bahasa tingkat tinggi.
System Generation (SYSGEN)
Sistem operasi dirancang untuk dapat dijalankan di berbagai jenis mesin; sistemnya harus di konfigurasi untuk tiap komputer. Program SYSGEN mendapatkan informasi mengenai konfigurasi khusus dari sistem perangkat keras.
• Booting: memulai komputer dengan me-load kernel.
• Bootstrap program: kode yang disimpan di code ROM yang dapat menempatkan kernel, memasukkannya kedalam memori, dan memulai eksekusinya.








BAB 3.PENUTUP
3.1 Kesimpulan

Sistem operasi telah berkembang selama lebih dari 40 tahun dengan dua tujuan utama. Pertama, sistem operasi mencoba mengatur aktivitas-aktivitas komputasi untuk memastikan pendayagunaan yang baik dari sistem komputasi tersebut. Kedua, menyediakan lingkungan yang nyaman untuk pengembangan dan jalankan dari program.
Multiprogramming dan sistem time-sharing meningkatkan kemampuan komputer dengan melampaui batas operasi (overlap) CPU dan I/O dalam satu mesin. Hal seperti itu memerlukan perpindahan data antara CPU dan alat I/O, ditangani baik dengan polling atau interrupt-driven akses ke I/O port, atau dengan perpindahan DMA. Agar komputer dapat menjalankan suatu program, maka program tersebut harus berada di memori utama (memori utama). Memori utama adalah satu-satunya tempat penyimpanan yang besar yang dapat diakses secara langsung oleh prosessor, merupakan suatu array dari word atau byte, yang mempunyai ukuran ratusan sampai jutaan ribu. Setiap word memiliki alamatnya sendiri. Memori utama adalah tempat penyimpanan yang volatile, dimana isinya hilang bila sumber energinya (energi listrik) dimatikan. Kebanyakan sistem komputer menyediakan secondary storage sebagai perluasan dari memori utama. Syarat utama dari secondary storage adalah dapat menyimpan data dalam jumlah besar secara permanen. Secondary storage yang paling umum adalah disk magnetik, yang meyediakan penyimpanan untuk program mau pun data. Disk magnetik adalah alat penyimpanan data yang nonvolatile yang juga menyediakan akses secara random. Tape magnetik digunakan terutama untuk backup, penyimpanan informasi yang jarang digunakan, dan sebagai media pemindahan informasi dari satu sistem ke sistem yang lain.
Beragam sistem penyimpanan dalam sistem komputer dapat disusun dalam hirarki berdasarkan kecepatan dan biayanya. Tingkat yang paling atas adalah yang paling mahal, tapi cepat. Semakin kebawah, biaya perbit menurun, sedangkan waktu aksesnya semakin bertambah (semakin lambat). Sistem operasi harus memastikan operasi yang benar dari sistem komputer. Untuk mencegah pengguna program mengganggu operasi yang berjalan dalam sistem, perangkat keras mempunyai dua mode: mode pengguna dan mode monitor. Beberapa perintah (seperti perintah I/O dan perintah halt) adalah perintah khusus, dan hanya dapat dijalankan dalam mode monitor. Memori juga harus dilindungi dari modifikasi oleh pengguna. Timer mencegah terjadinya pengulangan secara terus menerus (infinite loop). Hal-hal tersebut (dual mode, perintah khusus, pengaman memori, timer interrupt) adalah blok bangunan dasar yang digunakan oleh sistem operasi untuk mencapai operasi yang sesuai.
Sistem operasi menyediakan banyak pelayanan. Di tingkat terrendah, sistem calls mengizinkan program yang sedang berjalan untuk membuat permintaan secara langsung dari sistem operasi. Di tingkat tertinggi, command interpreter atau shell menyediakan mekanisme agar pengguna dapat membuat permintaan tanpa menulis program. Command dapat muncul dari bekas sewaktu jalankan batch-mode, atau secara langsung dari terminal ketika dalam mode interaktive atau time-shared. Program sistem disediakan untuk memenuhi kebanyakan dari permintaan pengguna. Tipe dari permintaan beragam sesuai dengan levelnya. Level sistem call harus menyediakan fungsi dasar, seperti kontrol proses serta manipulasi alat dan bekas. Permintaan dengan level yang lebih tinggi (command interpreter atau program sistem) diterjemahkan kedalam urutan sistem call.
Pelayanan sistem dapat dikelompokkan kedalam beberapa kategori: kontrol program, status permintaan dan permintaan I/O. Program error dapat dipertimbangkan sebagai permintaan yang implisit untuk pelayanan. Bila sistem pelayanan sudah terdefinisi, maka struktur dari sistem operasi dapat dikembangkan. Berbagai macam tabel diperlukan untuk menyimpan informasi yang mendefinisikan status dari sistem komputer dan status dari sistem tugas. Perancangan dari suatu sistem operasi yang baru merupakan tugas yang utama. Sangat penting bahwa tujuan dari sistem sudah terdefinisi dengan baik sebelum memulai perancangan. Tipe dari sistem yang diinginkan adalah landasan dalam memilih beragam algoritma dan strategi yang akan digunakan. Karena besarnya sistem operasi, maka modularitas adalah hal yang penting. Merancang sistem sebagai suatu urutan dari layer atau dengan menggunakan mikrokernel merupakan salah satu teknik yang baik. Konsep virtual machine mengambil pendekatan layer dan memperlakukan baik itu kernel dari sistem operasi dan perangkat kerasnya sebagai suatu perangkat keras. Bahkan sistem operasi yang lain dapat dimasukkan diatas virtual machine tersebut. Setiap sistem operasi yang mengimplemen JVM dapat menjalankan semua program java, karena JVM mendasari dari sistem ke program java, menyediakan arsitektur tampilan yang netral.
Didalam daur perancangan sistem operasi, kita harus berhati-hati untuk memisahkan pembagian kebijakan (policy decision) dengan detail dari implementasi (mechanism). Pemisahan ini membuat fleksibilitas yang maksimal apabila policy decision akan diubah kemudian. Sistem operasi sekarang ini hampir selalu ditulis dengan menggunakan bahasa tingkat tinggi. Hal ini meningkatkan implementasi, perawatan portabilitas. Untuk membuat sistem operasi untuk suatu konfigurasi mesin tertentu, kita harus melakukan system generation.
BAB 4. Daftar Pustaka
-www.google.com
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/2003/0-CONTOH/produk/SistemOperasi.html#AEN395

Rabu, 23 September 2009

OVERLOADING DAN CONSTRUCTOR

  1. overloading
    overloading adalah penggunaan nama yang sama untuk beberapa fungsi maupun method, namun dalam tiap2 fungsi tersebut memiliki perbedaan, walupun namanya sana. perbedaan itu mencakup parameter maupun return value dari suatu fungsi
  • Overlading bisa juga diartikan dengan istilah sebagai berikut, metode dengan nama yang sama, parameter yang berbeda, me-return value dengan return type yang berbeda
  • Dapat digunakan ketika operator yang sama memiliki implementasi yang berbeda
Tujuan : memudahkan penggunaan/pemanggilan method dengan fungsionalitas yang mirip.

Aturan Pendeklarasian Method Overloading

  • Nama method harus sama
  • Daftar parameter harus berbeda
  • Return type boleh sama, juga boleh berbeda

Daftar Parameter Pada Overloading

Perbedaan daftar parameter bukan hanya terjadi pada perbedaan banyaknya parameter, tetapi juga urutan dari parameter tersebut.
Misalnya saja dua buah parameter berikut ini :
function_member(int x, String n)
function_member(String n, int x)
Dua parameter tersebut juga dianggap berbeda daftar parameternya.

Daftar Parameter Pada Overloading

Daftar parameter tidak terkait dengan penamaan variabel yang ada dalam parameter.
Misalnya saja 2 daftar parameter berikut :
function_member(int x)
function_member(int y)
Dua daftar parameter diatas dianggap sama karena yang berbeda hanya penamaan variabel parameternya saja.


Contoh
Titik {X,Y}
Titik {X,Y,Z}

Ciri-ciri Overloading
Nama method harus sama
Daftar Parameter harus berbeda
Return type boleh sama boleh berbeda

Contoh Overloading dengan constructor

#include

class CRectangle {
int width, height;
public:
CRectangle ();
CRectangle (int,int);
int area (void) {return (width*height);}
};
CRectangle::CRectangle () {
width = 7;
height = 9;
}
CRectangle::CRectangle (int a, int b) {
width = a;
height = b;
}
int main () {
CRectangle rect (2,4);
CRectangle rectb;
cout << "rect area: " << rect.area() << endl;
cout << "rectb area: " << rectb.area() << endl;


}



OUTPUT>>














adapun contoh lainnya:

01.using System;
02.
03.class overloadingMethod
04.{
05.public void biodata()
06.{
07.Console.WriteLine("Biodataku");
08.this.biodata("Aji");
09.}
10.
11.public void biodata(string nama)
12.{
13.Console.WriteLine("Namaku : {0}", nama);
14.this.biodata(23, "Pria");
15.}
16.
17.public void biodata(int umur, string kel)
18.{
19.Console.WriteLine("Umurku : {0}", umur);
20.Console.WriteLine("Jenis Kelamin : {0}", kel);
21.
22.}
23.}
24.
25.class latihan
26.{
27.static void Main()
28.{
29.overloadingMethod latOverloading = new overloadingMethod();
30.latOverloading.biodata();
31.Console.ReadLine();
32.}
33.}

Hasil outputnya adalah sebagai berikut :

Biodataku
Namaku : Aji
Umurku : 23
Jenis Kelamin : Pri
a


2.CONSTRUCTOR

Dasar teori

Jika area() dipanggil sebelum set_values() à hasil indeterminate à constructor utk menggantikan set_values().

Materi

Constructor merupakan suatu fungsi yg pertama kali dijalankan ketika program dijalankan

Namanya sama dengan nama Classnya

Biasanya untuk inisialisasi suatu variable

Bentuk Penulisan Konstruktor :

‘constructor

Public sub new (parameter)

Variable = inisialisasi

End sub

Constructor sangat penting dalam meng-instatiate sebuah object.

Constructor merupakan sebuah method yang digunakan untuk menempatkan semua penginisialisasian.

Constructor memiliki properti-properti, sbb:

Sebuah constructor seperti method yang lain, bagaimanapun hanya informasi berikut yang dapat ditempatkan dalam kepala constructor, lingkup atau kemampuan identifier mengakses (seperti public...), nama constructor dan parameter.

Constructor tidak memiliki return value.

Constructor tidak dapat dipanggil langsung. Constructor hanya dapat dipanggil dengan menggunakan operator new pada saat class instantiation.

Default constructor

merupakan constructor tanpa parameter.

default constructor secara implisit ada, jika class tidak mendeklarasikan constructor apapun.

Contoh :

public StudentRecord()

{

//source code disini

}

Fungsi & sifat constructor

Fungsi : Untuk memberi nilai awal atribut suatu class.

Sifat :otomatis dijlnkan pada saat objek class diciptakan. tidak bertipe walaupun void

sekalipun , dan tdk punya return value. nama constructor = nama class.

Macam-macam constructor:

Default constructor

nilai awal dg konstanta, tanpa parameter

Empty Constructor.

Copy constructor

nilai awal dg parameter, terdapat parameter

Object copy constructor

nilai awal berdsr nilai angg. objek lain, parameter berupa objek dari class yang sama.

Contoh Source code

// classes example

#include

class CRectangle {

int width, height;

public:

CRectangle (int,int);

int area (void) {return (width*height);}

};

CRectangle::CRectangle (int a, int b) {

width = a;

height = b;

}

int main () {

CRectangle rect (3,4);

CRectangle rectb (5,6);

cout << "rect area: " <<>

area: " <<>

}

Output



Minggu, 06 September 2009

BAHASA PEMPROGRAMAN OOP

OOP adalah singkatan dari Object Oriented Programming, dalam bahasa jawanya pemrograman berorientasi objek, yaitu mengganggap bahwa segala sesuatu dalam bahasa pemrograman adalah object, benda seperti dalam dunia nyata. Bahkan variable pun bisa dianggap sebagai object (pada pemrograman yang OOP banget, macam java, javascript). Sekarang PHP mulai versi 5.x sudah mendukung secara penuh konsep OOP. Pada versi 4.x memang kita sudah bisa menggunakan OOP, tetapi core engine PHPnya sendiri belum begitu mensupportnya. Jadi jika anda ingin menggunakan konsep OOP dalam konstruksi logic web anda, lebih baik gunakan PHP versi 5.x. Saat ini sudah banyak hosting yang sudah mengupgrade versi PHPnya.

OOP dalam PHP hampir mirip dengan OOP pada java. Jika anda sudah pernah belajar java atau javascript, OOP dalam PHP tidak begitu bermasalah. OOP PHP berbeda dengan PHP struktural. Pada OOP kita bisa membuat sebuah class yang berisi semua fungsi-fungsi yang biasa digunakan untuk proses web, misalkan proses query database, proses login, proses regular expression dll.Ingat bahwa fungsi dalam OOP adalah method. Dari class tersebut bisa dibuat sebuah object yang memiliki semua method yang saya sebutkan tadi, proses query, proses login, proses reqular expression dll. Tambahan lagi, dengan menggunakan OOP, pembuatan program menjadi lebih mudah dan cepat begitu juga konsistensi program akan terjaga. Anda juga bisa membuat template web dengan menggunakan OOP dimana ada method yang bertugas untuk membuat tampilan, misalkan tampilan header, sidebar, footer dll.

OOP (Object Oriented Programming) merupakan konsep baru dalam teknik membangun program yang telah dimulai dengan lahirnya bahasa Simula 67 pada akhir tahun 1960-an. Sebelumnya, orang-orang atau programmer lebih banyak menggunakan konsep pemmrograman terstruktur yang begitu mendominasi. Sejak saat itu muncul bahasa-bahasa pemrograman lain yang menggunakan konsep OOP. Bahasa-bahasa lain tersebut adalah Smalltalk, LOOPS, Flavors, Object Pascal, Neon, C++, Eiffel, dan Actor

Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.

Object oriented programming (oop) adalah istilah yang sangat populer di dunia pemrograman dan biasanya programming languange yg modern dah mendukung oop utk ngebangun software.

OOP adalah pemrograman yang dibuat berdasarkan objek-objek dengan cara membungkus(mengenkapasulasi) komponennya menjadi suatu kelompok data dan fungsi yang dapat mewarisi atribut dan sifat dari komponen lainnya dan komponen-komponen tersebut dapat berinteraksi satu sama lainnya

Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

OOP memodelkan obyek yang ada di dunia nyata (real-word objects) ke dalam software obyek dalam pemrograman. Oleh karena itu, di dalam OOP juga dikenal istilah seperti yang ada pada obyek dunia nyata, yaitu pewarisan (inheritance), dimana suatu obyek dapat mewariskan sifat-sifat yang dimilikinya kepada obyek turunannya. Secara umum, beberapa keuntungan yang dapat diperoleh pada OOP antara lain adalah simplicity, modularity, modifiability, extensibility, flexibility, maintainability, dan reasonability. Bahasa pemrograman yang mendukung OOP antara lain adalah: Smalltalk (murni OOP), C++, CLOS (Common Lisp Object System), Java, dan sebagainya. Dalam postingan ini digunakan bahasa pemrograman C++ untuk memahami implementasi OOP

Konsep OOP pada Java

Bicara java tidak lepas dari Object Oriented Programming (OOP), Karena java merupakan bahasa pemrograman yang murni berorientasi pada object. Pemrograman berorientasi objek atau Object Oriented Programming (OOP) Merupakan pemrograman yang diciptakan untuk mempermudah dalam membuat program dengan cara mengikuti model yang nyata, di dalam OOP mengenal istilah :

  1. Class adalah merupakan bentuk dasar dari suatu objek
  2. Object adalah realisasi yang dihasilakn dari sutau class

Konsep OOP mempunyai tiga hal yang utama di dalamnya yaitu encapsulasi,inheritance, dan polymorphisem:

  1. Encapsulasi : Melindungi data dan methode nya dalam satu class yang sudah di paketkan
  2. Inheritance : merupakan pewaris sifat class yang lama kepada class-class yang baru di bawahnya
  3. Polymorphisem = adalah banyak bentuk yang merupakan pembuatan konsep yang dapat di gunakan untuk banyak hal seperti

Di bawah ini adalah contoh program java dari konsep inheritance :

1. Buatlah Class Yang Bernama Lampu

package oopconcepts;

public class Lampu {

public void status(){

System.out.println (” Lampu dalam keadaan hidup”);

}

}

2. Buat lah Class Lagi dengan nama LampuHidup

package oopconcepts;

public class LampuHidup extends Lampu {

public void status (){

System.out.println(”Lampu sudah dalam keadaan Hidup…..kok”);

}

}

3. Buat Lagi Class Dengan nama LampuMati

package oopconcepts;

public class LampuMati extends Lampu {

public void status (){

System.out.println(”Lampu Sekarang Sudah dalam Keadaan Mati”);

}

}

4. Dan yang terakhir kita buat Class LampuBeraksi

package oopconcepts;

public class LampuBeraksi {

public static void main (String srgs []){

//MembuatObject

LampuHidup hidup = new LampuHidup();

LampuMati mati = new LampuMati ();

//Cek Status lampu

hidup.status();

mati.status();

}

}

Maka hasil dari program di atas sebagai berikut :

run:

Lampu sudah dalam keadaan Hidup…..kok

Lampu Sekarang Sudah dalam Keadaan Mati


  1. Visual Foxpro
  2. Java
  3. C++
  4. Pascal (bahasa pemrograman)
  5. Visual Basic.NET
  6. SIMULA
  7. Smalltalk
  8. Ruby
  9. Python
  10. PHP
  11. C#
  12. Delphi
  13. Eiffel

Nama: Ferawati Dinda
NPM : 0834010233

Kamis, 26 Maret 2009

TRACING inserton sort





SIMPLE INSERTION SORTING


void insertion ( int x[ ], int n)

{ int i,k,y

for (k=1;k

{ y=x [k]

for (i=k-1;i>=0 && y

x[i+1] = x [i];

x[i+1] = y ;

}

}




TRACING

N=6

x

k

i

y

kondisi

18

9

8

28

3

2

1

0

9

T /\ T = T




-1


F

9

18

8

28

3

2

2

1

8

T /\ T = T




0


T /\ T = T



-1


F

8

9

18

28

3

2

3

2

28

T /\ F


8

9

18

28

3

2

4

3

3

T /\ T = T




2


T /\ T = T



1


T /\ T = T



0


T /\ T = T



-1


F

3

8

9

18

28

2

5

4

2

T /\ T = T




3


T /\ T = T



2


T /\ T = T



1


T /\ T = T



0


T /\ T = T



-1


F

2

3

8

9

18

28

6