Pages

Thursday, February 2, 2012

Sekilas Tentang Visual Basic 6.0

Bahasa Basic pada dasarnya adalah bahasa yang mudah dimengerti sehingga pemrograman di dalam bahasa Basic dapat dengan mudah dilakukan meskipun oleh orang yang baru belajar membuat program. Hal ini lebih mudah lagi setelah hadirnya Microsoft Visual Basic, yang dibangun dari ide untuk membuat bahasa yang sederhana dan mudah dalam pembuatan scriptnya (simple scripting language) untuk graphic user interface yang dikembangkan dalam sistem operasi Microsoft Windows.
Visual Basic merupakan bahasa pemrograman yang sangat mudah dipelajari, dengan teknik pemrograman visual yang memungkinkan penggunanya untuk berkreasi lebih baik dalam menghasilkan suatu program aplikasi. Ini terlihat dari dasar pembuatan dalam visual basic adalah FORM, dimana pengguna dapat mengatur tampilan form kemudian dijalankan dalam script yang sangat mudah. Ledakan pemakaian Visual Basic ditandai dengan kemampuan Visual Basic untuk dapat berinteraksi dengan aplikasi lain di dalam sistem operasi Windows dengan komponen ActiveX Control. Dengan komponen ini memungkinkan penguna untuk memanggil dan menggunakan semua model data yang ada di dalam system operasi windows. Hal ini juga ditunjang dengan teknik pemrograman di dalam Visual Basic yang mengadopsi dua macam jenis pemrograman yaitu Pemrograman Visual dan Object Oriented Programming (OOP).
Visual Basic 6.0 sebetulnya perkembangan dari versi sebelumnya dengan beberapa penambahan komponen yang sedang tren saat ini, seperti kemampuan pemrograman internet dengan DHTML (Dynamic HyperText Mark Language), dan beberapa penambahan fitur database dan multimedia yang semakin baik. Sampai saat buku ini ditulis bisa dikatakan bahwa Visual Basic 6.0 masih merupakan pilih pertama di dalam membuat program aplikasi yang ada di pasar perangkat lunak nasional. Hal ini disebabkan oleh kemudahan dalam melakukan proses development dari aplikasi yang dibuat.

Konsep Dasar Pemrograman Dalam Visual Basic 6.0
Konsep dasar pemrograman Visual Basic 6.0, adalah pembuatan form dengan mengikuti aturan pemrograman Property, Metode dan Event. Hal ini berarti:

(1) Property: Setiap komponen di dalam pemrograman Visual Basic dapat diatur
propertinya sesuai dengan kebutuhan aplikasi. Property yang tidak boleh dilupakan pada setiap komponen adalah “Name”, yang berarti nama variable (komponen) yang akan digunakan dalam scripting. Properti “Name” ini hanya bisa diatur melalui jendela Property, sedangkan nilai peroperti yang lain bisa diatur melalui script seperti:
Command1.Caption=”Play”
Text1.Text=”Visual Basic”
Label1.Visible=False
Timer1.Enable=True

(2) Metode: Bahwa jalannya program dapat diatur sesuai aplikasi dengan menggunakan metode pemrograman yang diatur sebagai aksi dari setiap komponen. Metode inilah tempat untuk mengekpresikan logika pemrograman dari pembuatan suatu prgram aplikasi.

(3) Event: Setiap komponen dapat beraksi melalui event, seperti event click pada command button yang tertulis dalam layar script Command1_Click, atau event Mouse Down pada picture yang tertulis dengan Picture1_MouseDown. Pengaturan event dalam setiap komponen yang akan menjalankan semua metode yang dibuat.

Masing-masing komponen mempunyai property yang berbeda dan jumlahnya banyak, tetapi ada beberapa property yang sering digunakan pada setiap komponen, antara lain [Caption]. Property yang sering digunakan untuk Form antara lain:
• Name: menyatakan nama obyek form yang sangat berguna untuk memanggil dan menyimpan form.
• Caption: digunakan untuk memberikan title pada form.
• StartUpPosition: digunakan untuk meletakkan form ketika form tersebut dipanggil atau aktif. Ada empat pilihan yaitu: Manual, CenterOwner, CenterScreen, Windows Default.
read more

Wednesday, February 1, 2012

Mengenal Lebih Dalam Pemrograman Visual

Hal paling mendasar dalam lingkungan pemrograman visual adalah object. Object adalah bundel data yang terdiri dari elemen-elemen data seperti field, property, prosedur dan fungsi. Untuk menulis komponen diperlukan pemahaman yang cukup baik terhadap objek tersebut dan juga istilah-istilah yang digunakan dalam lingkungan OOP, termasuk teknik dasar pemrogramannya. Istilah-istilah yang digunakan dalam pemrograman visual seperti visual basic banyak berhubungan dengan istilah-istilah pada OOP.

Konsep dari object oriented programming (OOP) adalah lebih dari sekedar sebuah konsep pemrograman, object oriented programming adalah cara berpikir tentang aplikasi yang mempelajari untuk berpikir bahwa aplikasi bukan sekedar prosedur melainkan sebagai object dan real entity.

Object yang dimaksud disini memiliki pengertian suatu modul yang mengkombinasikan antara data dan kode program yang bekerja sama dalam program dengan melewatkan proses satu sama lain. Jadi object oriented programming merupakan cara yang paling efisien untuk menulis program komputer yang sangat mudah untuk di kombinasikan dan untuk dipergunakan kembali.

Object oriented programming lebih memfokuskan kepada manipulasi object. Kenapa seorang programmer harus mempelajari object oriented programming bahkan seorang programmer yang tidak pernah bekerja dengan object oriented programing pun harus mempelajarinya juga. Hal ini dikarenakan pada suatu hari nanti semua bahasa pemrograman akan menambahkan kemampuan object oriented programming pada bahasanya.

Object oriented programming yang paling populer adalah java dan C++, tetapi visual basic pun sudah ikut menambahakan kemampuan ini sejak meluncurkan VB 4.0. Pada kesempatan kali ini kita hanya akan membahas tentang visual basic dan C++ saja. Sesuai dengan namanya object oriented programming maka konsep object merupakan jantung dari object oriented programming. Maka dari itu sebelum kita membahas lebih jauh lagi, mari kita lihat beberapa konsep utama dari object oriented programming ini.

Data dan prosedur dari sebuah object yang akan dipergunakan dibuat di dalam class, jadi sebelum sebuah object dibuat maka perlulah terlebih dahulu dibuat class. Untuk membuat sebuah class dalam visual basic maka perlu diperhatikan langkah-langkah berikut ini :

1.    Menambah module class pada project.
2.    Deklarasi lokal variabel yang akan digunakan pada module.
3.    Inisialisasi properti class dari object.
4.    Menuliskan statement untuk enable class, untuk membuat nilai yang akan dipetakan ke properti    atau memetakan variabel properti dari object yang diluar.
5.    Menuliskan suatu fungsi yang akan menghasilkan metode proses dari class.
6.    Simpan module sebagai .cls file.

Variabel yang ada didalam sebuah class disebut instance variabel, untuk membuat properti didalam visual basic dapat menggunakan statement properti let dan properti get.

Berikut ini perhatikanlah definisi umum dan contoh dari masing-masing statement. Dengan statement Property let :

Public propertylet namaproperty (ByVal Ouside Var as tipe)
Mvarlokalvariabel = outsidevar
End property
Contoh :
Public Propertylet Namadepan (ByVal vData as string)
MvarNamadepan = vData
End property
Dengan statement Propertyget
Public propertyget nama properti ()
Nama Properti = mvarlocalvariabel
End property
Contoh :
Public propertyget Nama()
Nama = mvarNama
End property

Didalam sebuah class dapat juga dibuat sebuah sub atau fungsi prosedur yang disebut sebagai methode class. Perbedaan antara sub dan fungsi metode hanya terletak kalau pada fungsi nilai akan dikembalikan sedangkan pada sub tidak.

Secara umum dapat dikatakan bahwa object dan class mengacu pada hal yang sama, object adalah class dan class adalah object. Class atau object mempunyai karakteristik dan sifat-sifat tertentu, merupakan bagian dari pengelompokan dan penjenjangan seluruh object dalam suatu hirarki yang membentuk hubungan antara moyang dan keturunannya.

Dalam lingkungan pemrograman visual, object atau class ini sering disebut komponen (Component). Dilihat dari sisi pengembang aplikasi, dengan mengetahui bahwa moyang semua komponen visual adalah component maka object akan lebih tepat disebut komponen. Sedangkan jika dilihat dari istilah formalnya dan juga dari strukturisasi object-nya, seperti sifat, fungsi dan penjenjangan, mungkin object akan lebih tepat disebut kelas. Kedua istilah ini sering digunakan bersama dalam pembahasan suatu topik. Oleh karena itu jangan bingung dengan istilah-istilah tersebut, tetap harus diingat dan disadari, pada konteks apa istilah tersebut digunakan.

Sebagai penulis komponen, mau tidak mau akan selalu berhubungan dan berhadapan dengan class-class ini. Dalam perancangan komponen, pemahaman tentang class-class ini, karakteristik dan fungsinya, sangat menentukan. Sebaliknya pemahaman class-class ini tidak diperlukan oleh pengembang aplikasi. Pengembang aplikasi hanya memandang class-class ini sebagai komponen yang dapat dimanipulasi pada tahap design-time maupun runtime untuk keperluan aplikasi yang dirancangnya.

Setelah diatas kita melihat beberapa konsep utama dari object oriented programing di dalam visual basic lalu bagaimana dengan object oriented programming C++. Dalam C++ konsep object oriented programing dijelaskan sebagai abstact data type (ADT) programming yang merupakan konsep dasar dari OOP. ADT terdiri dari struktur data abstrak dan operasi, dimana struktur data abstrak hanya dapat diakses dengan mendefinisikan operasi. Kumpulan dari berbagai macam operasi ini disebut interface (Antar Muka). Karena operasi ini memiliki interface maka dia dapat dilihat dari luar.

Dalam object oriented programming abstrak data type menjadi class-nya karena abtsract data type memiliki variabel instance yang merupakan variabel dari class. Class ini merupakan betuk nyata dari abstract data type. Class menyediakan detail dari struktur data yang dipergunakan dan operasinya. Perhatikan contoh mendelakrasikan class berikut ini.

class Integer {
attributes:
int i
methodes:
setValue(int n)
Integer addValue(Integer j)
}

Pada potongan program diatas, class di notasikan dengan class (..), di dalam tanda kurung terdapat dua bagian yaitu attribut dan methode yang mendefinisikan implementasi dari struktur data dan operasi dari ADT yang bersangkutan,

Dua konsep utama dari object orientation yang diperkenalkan diatas adalah class dan object. Sementara object oriented programming merupakan implementasi dari abstract data type atau dengan kata lain penulisan dari class itu sendiri. Program yang sedang berjalan dapat dikatakan sebagai kumpulan object yang sedang berjalan. Dengan ketika sebuah program sedang berjalan object-object tadi mau tidak mau harus berinteraksi satu sama lain, lalu pertanyaannya bagaiman object-object itu berinteraksi satu sama lain.

Untuk menjawab pertanyaan itu terlebih dahulu kita perhatikan beberapa hal berikut ini. Program yang sedang berjalan merupakan pool (Tempat berkumpul) dari object-object dimana object dibuat, dihancurkan dan berinteraksi. Interaksi hanya dapat terjadi jika ada message (pesan) yang dikirim dari satu object ke object lain, pesan ini berisi metode yang harus dijalankan oleh object yang menerima pesan. Sedangkan definisi messsage sendiri ialah permintaan terhadap suatu object untuk menjalan sebuah metode, message ini terdiri dari :

1.    Nama dari metode.
2.    Argumen dari metode.

Sekarang mungkin sudah cukup jelas bahwa object berinteraksi satu sama melalui message ini.
Dari hal-hal diatas mungkin kita dapat membuat satu kesimpulan bahwa definisi dari class sendiri ialah implementasi dari ADT yang menjabarkan tentang attribute dan metode yang menjabarkan struktur data dan operasinya. Variabel dari class atau yang disebut instance dapat disebut sebagai object, akibatnya class dapat mendefinisikan property dan kebiasaan / perilaku (behaviour) dari object.

Obejct sendiri diidentifikasikan dengan sebuah nama yang unik. Jadi definisi dari object itu sendiri adalah intance dari class yang dapat didentifikasi secara unik dengan membuat namanya dan membuat status dari sebuah program yang berjalan yang dimunculkan oleh nilai dan attributnya. Behaviour / perilaku dari object didefinisikan sebagai kumpulan dari metode yang diaplikasikan terhadap object.
read more

Monday, January 16, 2012

Pengertian Sistem Informasi, Software Aplikasi, Sistem Informasi vs. Teknik Informatika




║█ Pengertian Sistem Informasi █║


Sistem Informasi sering sekali terdengar saat ini seriring dengan maraknya komputer. Orang sering mengaitkan Sistem Informasi dengan Sistem Informatika, padahal secara pengertian sangatlah berbeda.

Definisi Sistem Informasi dapat dibedakan menjadi dua, berdasarkan Elemen dan Prosedur.

    • Sistem Berdasarkan Prosedur: Suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu. Sistem Berdasarkan Prosedur lebih menekankan pada urutan proses/operasi dalam jaringan kerja (network).
    • Sistem Berdasarkan Elemen: kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Definisi Sistem berdasarkan Komponen ini adalah Definisi Sistem yang paling banyak digunakan dan diterima karena Definisi Sistem berdasarkan Komponen ini adalah Definisi Sistem yang luas, sehingga lebih mudah dimengerti dan diaplikasikan.

Beberapa pengertian system informasi menurut Wikipedia Indonesia, 2010 :

    • Sistem informasi adalah aplikasi komputer untuk mendukung operasi dari suatu organisasi: operasi, instalasi, dan perawatan komputer, perangkat lunak, dan data.
    • Sistem Informasi adalah sekumpulan hardware, software, brainware, prosedur dan atau aturan yang diorganisasikan secara integral untuk mengolah data menjadi informasi yang bermanfaat guna memecahkan masalah dan pengambilan keputusan.
    • Sistem informasi adalah sekumpulan komponen pembentuk sistem yang mempunyai keterkaitan antara satu komponen dengan komponen lainnya yang bertujuan menghasilkan suatu informasi dalam suatu bidang tertentu. Dalam sistem informasi diperlukannya klasifikasi alur informasi, hal ini disebabkan keanekaragaman kebutuhan akan suatu informasi oleh pengguna informasi. Kriteria dari sistem informasi antara lain, fleksibel, efektif dan efisien.
Menurut Kertahadi (dalam Fatta, 2007) sistem informasi adalah suatu alat untuk menyajikan informasi sedemikian rupa sehingga bermanfaat bagi penerimanya. Tujuannya adalah untuk menyajikan informasi guna pengambilan keputusan pada perencanaan, pemrakarsaan, pengorganisasian, pengendalian kegiatan operasi suatu perusahaan yang menyajikan sinergi organisasi pada proses (Murdick & Ross, dalam Fatta 2007). Dengan demikian Sistem informasi berdasarkan konsep (input, processing, output - IPO).

Komponen system informasi :

Stair (1992) Sistem informasi berbasis computer terdiri dari komponen-komponen berikut :
    • Perangkat keras Untuk perangkat keras komponen untuk melengkapi data kegiatan memasukkan data, memproses data dan keluarkan data.
    • Perangkat lunak Program dan intruksi yang diberikan ke computer.
    • Database Kumpulan data dan informasi yang diorganisasikan sedemikian rupa sehingga mudah diakses pengguna system informasi.
    • Telekomunikasi Yaitu komuminaksi Yang menghubungkan antara pengguna system dengan system computer secara bersama-sama ke dalam suatu jaringan kerja yang efektif.
    • Manusia Personel dari system informasi, seperti manajer, analis, programmer dan operator.
║█ PENGERTIAN Software Aplikasi █║

Pengertian software aplikasi, yaitu suatu program komputer yang berfungsi untuk melakukan tugas-tugas khusus, seperti membuat dokumen, memanipulasi foto, membuat laporan keuangan, atau merancang rumah.

Pengertian software aplikasi tidak lepas dari beberapa macam program pembangunnya, yaitu terdiri dari software hiburan, pendidikan, bisnis, perangkat lunak khusus, serta produktivitas kerja.

Perangkat lunak penunjang produktivitas kerja memberikan peranan yang sangat bermanfaat untuk optimalisasi mutu kerja.

Seluk Beluk Software Aplikasi

Berikut beberapa jenis perangkat lunak yang terdapat di pasaran untuk aplikasi komputer.

  • Perangkat lunak hiburan. Beberapa contoh dari software ini, yaitu winamp untuk mendengarkan musik,  games, dan sebagainya untuk hiburan.
  • Perangkat lunak pendidikan. Berguna untuk mempelajari atau mereferensikan tentang pendidikan atau pengetahuan.
  • Perangkat lunak bisnis. Software ini berguna untuk aplikasi bisnis, contohnya untuk menangani utang piutang, pencatatan barang, dan sebagainya.
  • Perangkat lunak khusus.
  • Perangkat lunak produktivitas kerja.
Pengertian software aplikasi pada software produktivitas kerja adalah sebagai berikut:

  • Word processing
Word processing disebut juga pengolah kata untuk membuat dokumen. Berguna untuk memformat teks sehingga teks lebih rapi, misalnya rata kanan-kiri dan sebagainya.

Gramer checker digunakan untuk mengidentifikasi kesalahan tata bahasa. Thesaurus adalah untuk mencari padanan kata.

  • Spreadsheet
Spreadsheet berupa sekumpulan sel yang khas. Setiap sel terdiri dari nama baris dinyatakan dengan angka dan nama kolom dinyatakan dengan huruf.

Beberapa contoh nama spreadsheet, yaitu Claris Resolve dari Claris Corporation, excel dari Microsoft, lotus 1-2-3 dari Lotus. Development Corporation, QuatroPro dari Novel Corporation, StarOffice Calc dari Sun Microsystems.

  • Desktop Publishing
Biasanya digunakan untuk mencetak kartu undangan. Cocok sekali bagi yang ingin membuka usaha percetakan, karena ia bisa menggabungkan metode dari perangkat lunak yang lain.

Contoh nama dari program desktop publishing, yaitu corel draw, frame maker, indesign, ventura, dan lain-lain.

  • Presentasi Grafik
Software ini biasanya digunakan untuk membuat bahan presentasi grafik sehingga pembuatan bahan presentasi mudah dan cepat. Anda juga bisa menambahkan fitur-fitur penambah cantiknya bahan presentasi Anda.

Contoh aplikasi ini adalah dengan menambahkan gambar animasi atau bahkan menambahkan video untuk ditayangkan guna memperjelas bahan presentasi. Contoh nama software ini adalah StarOffice Impress, FreeLance Grafics, Power Point, dan lain-lain.

  • Komunikasi    
Software ini berfungsi untuk berkomunikasi antar orang melalui e-mail (electronic-mail), atau disebut juga dengan surat elektronik. Beberapa contoh nama software email ini adalah Perfect Office, Kmail, OutLook Express, Netscape messenger, dan lain-lain.

  • Personal Information Manager (PIM)
PIM sangat berguna untuk mengelola informasi pribadi, seperti tugas, jadwal, rekanan atau klien dan juga keuangan. Beberapa contoh dari software ini adalah commence, computer organizer, lotus organizer, Microsoft outlook.

  • Manajemen Data
Software manajemen data disebut juga dengan DBMS (Database Management System). DBMS berguna untuk mencatat, memanipulasi, dan mengambil data agar lebih cepat dan tepat.

Beberapa contoh nama DBMS, yaitu access dari Microsoft Corporation, paradox, visual Dbase, visual express, dan visual foxpro. DBMS memiliki fitur yang canggih sekali, misalnya mampu menyediakan fasilitas keamanan bagi pengakses yang tidak  berwewenang.

Begitu banyak istilah yang dapat kita pelajari dari berbagai komponen pengertian software aplikasi. Semoga bermanfaat.

║█ Perbedaan Teknik Informatika dan Sistem Informasi █║

๑ Teknik Informatika

Teknik Informatika merupakan sebuah jurusan studi yang memiliki cakupan cukup luas, mulai dari fondasi teoritis mengenai perancangan algoritma, yaitu konsep dasar yang melandasi pengembangan perangkat lunak, sampai kepada penerapan mutakhir berupa aplikasi robotika, kecerdasan buatan, bio-informatika, dan topik-topik menarik lainnya.

Fokus kurikulum Ilmu Komputer dan Teknik Informatika seringkali lebih ilmiah dan teoritis, dan cukup banyak mengandung unsur matematika dan logika.

Seorang lulusan Ilmu Komputer/Teknik Informatika memiliki kemampuan untuk merancang dan mengembangkan perangkat lunak yang canggih untuk menyelesaikan permasalahan yang rumit. Mereka jugalah yang senantiasa menemukan inovasi baru di bidang ilmu komputer. Sebagai contoh, saat ini kita sudah mengenal baik fasilitas Internet dan World Wide Web, yang tidak akan terwujud tanpa kemajuan di sub-bidang ilmu komputer seperti jaringan komputer (computer networking), basis data (database), serta interaksi manusia komputer. Saat ini, ilmuwan komputer menggunakan teknologi komputer untuk pengembangan robot yang cerdas, pemodelan DNA manusia, serta pembuatan program yang dapat memahami berbagai data dalam bentuk teks, gambar, suara, maupun video.

๑  Sistem Informasi

Program Sistem Informasi merupakan sebuah  jurusan studi yang lebih berfokus pada pengintegrasian solusi berbasis teknologi informasi dengan proses bisnis untuk memenuhi kebutuhan informasi bisnis dan usaha-usaha lain, yang memungkinkan tercapainya tujuan sebuah organisasi dengan efektif dan efisien. Perspektif bidang ilmu ini lebih memandang teknologi sebagai instrumen untuk mencatat, menghasilkan, mengolah, serta mendistribusikan informasi.

Ahli-ahli di bidang ini memiliki kemampuan untuk memetakan kebutuhan informasi sebuah organisasi, dan menentukan cara terbaik teknologi informasi dapat digunakan untuk memenuhi kebutuhan tersebut.

Selain penguasaan aspek teknologi informasi, seorang pakar sistem informasi juga harus memahami prinsip-prinsip manajemen dan bisnis. Sebagai konsekuensinya, kurikulum di bidang sistem informasi juga mencakup materi mengenai kerangka bisnis dan manajemen, di samping penguasaan teknologi perangkat lunak dan perangkat keras komputer.

Lulusan dari program ini memiliki keahlian yang sangat dibutuhkan industri saat ini, di mana pemanfaatan teknologi informasi sering menjadi kunci keunggulan sebuah organisasi.

Sumber: http://www.facebook.com/groups/177605925644909/doc/236544746417693/
read more

Konsep Algoritma Pemrograman




Sebelum belajar algoritma pemrograman, akan lebih baik kita pahami terlebih dahulu langkah-langkah pembuatan suatu program. Terdapat beberapa langkah umum dalam pembuatan suatu program yaitu:
  1. Mendefinisikan masalah
  2. Mencari solusinya
  3. Menentukan algoritma
  4. Menulis program
  5. Menguji program
  6. Mendokumentasikan program
  7. Merawat program

Mendefinisikan masalah
Langkah yang pertama dilakukan adalah mendefinisikan permasalahan. langkah ini harus dilakukan untuk menentukan masalah yang ada serta ditentukan pula input dan output program.

Mencari solusi
Kemudian ditentukan solusi dari permasalahan yang dihadapi. Bila untuk mendapatkan solusi harus melalui langkah yang terlalu rumit dapat dilakukan pembagian masalah dalam beberapa modul-modul kecil agar mudah untuk dikerjakan. Lalu modul-modul kecil tersebut digabungkan menjadi satu untuk dapat menentukan solusi.

Menentukan algoritma
Dalam pemilihan algoritma, pemrogram atau analis harus menggunakan algoritma yang sesuai dan efisien untuk masalah yang dihadapi.

Menulis program
Penulisan program bisa dilakukan dengan menggunakan bahasa pemrograman yang dikuasai dan memiliki kompabilitas dengan perangkat keras yang akan menggunakan program tersebut.

Menguji program
Bila program sudah selesai dibuat, pengujian diperlukan untuk mengetahui apakah program yang dibuat sudah layak untuk digunakan.

Mendokumentasikan program
Penulisan dokumentasi yang biasanya dilupakan oleh pemrogram menjadi sangat penting saat akan dilakukan perubahan pada program yang dibuat. penulisan program ini dapat dilakukan dengan menulis komentar pada source code tentang kegunaannya (variabel, parameter, procedur, fungsi).

Merawat program
Program yang sudah selesai dibuat juga perlu dirawat dengan pendeteksian bug yang belum diketahui sebelumnya juga penambahan fasilitas baru yang mempermudah pengguna program.

Dari penjelasan diatas, dapat kita peroleh kesimpulan bahwa pembelajaran algoritma pemrograman adalah bagian dari langkah-langkah pembuatan program. Untuk lebih jelasnya tentang algoritma pemrograman akan diulas sebagai berikut :

Algoritma
Algoritma yaitu kumpulan langkah-langkah / steps untuk menyelesaikan masalah menggunakan komputer (program komputer) dengan syarat tertentu. Adapun syarat-syaratnya adalah sebagai berikut :
  1. Setiap langkah harus DEFINITE (pasti, tertentu), dalam algoritma terdapat instruksi-instruksi yang jelas dan tidak ambigu.
  2. Minimum mempunyai 1 output (input boleh tidak ada)
  3. Harus ada stoping criteria (bisa berhenti).

Algoritma juga mempunyai beberapa jenis yaitu :
  1. Sequence, instruksi dikerjakan berurutan (sekuensial).
  2. Selection, instruksi dikerjakan bila kreteria tertentu terpenuhi.
  3. Iteration, instruksi dikerjakan selama memenuhi kondisi tertentu.
  4. Concurrent, mengerjakan banyak instruksi secara bersama.


Contoh algoritma
Algoritma menghitung luas persegi.
  1. Masukkan sisi (S)
  2. Luas <- S * S
  3. Tulis Luas


Untuk menulis suatu penjelasan cara menyelesaikan masalah dapat pula digunakan Pseudo Code yaitu berupa pengkodean atau penandaan yang menyerupai suatu program. Pseudo Code ini sering digunakan dalam penulisan algoritma.

Contoh : Mencari bilangan terkecil dari dua bilangan yang dimasukkan.

Algoritma :
  1. Masukkan bil pertama
  2. Masukkan bil kedua
  3. Jika bil pertama < bil kedua maka kerjakan langkah 4, bila tidak maka dikerjakan langkah 5.
  4. Tampilkan bil pertama
  5. Tampilkan bil kedua

Pseudo code:
  1. Input x
  2. Input y
  3. If x < y then langkah 4 else langkah 5
  4. write x
  5. write y

Dari penjelasan diatas tampaklah perbedaan antara penulisan algoritma dalam bentuk tertentu. Dengan begitu akan lebih mudah dipahami oleh pemrogram dan orang lain yang ingin di beri pemahaman.

Selamat belajar.

read more

Object Oriented Database (OODB)

Saat ini konsep sistem basis data baru telah menjadi perhatian dunia IT. Teknologi ini disebut Object-Oriented Database (OODB).

Teknologi ini mengintegrasikan kemampuan basis data (DBMS) dengan kemampuan pemrograman berorientesi kepada obyek (OOP). Sebuah Object Oriented Database Management System (ODBMS) membuat obyek sebuah basis data terlihat seperti obyek pemrograman pada beberapa bahasa pemrograman OOP. Sebuah ODBMS dapat memperluas kemampuan bahasa pemrograman dengan kemampuan basis data seperti data yang persistent secara transparan, kontrol konkurensi, recovery data, query asosiatif dan berbagai kemampuan basis data yang lain.

OODB atau ODBMS dirancang untuk bekerja pada bahasa pemrograman OOP seperti Java, C++ dan lain lain. Bila kita ingin menyimpan obyek pada program Java atau C++ ke dalam sebuah sistem basis data, kita dapat menggunakan basis data yang berorientasi kepada obyek (ODBMS).

ODBMS sangat memudahkan pemrogram terutama yang terbiasa dengan OOP dalam mengolah data dan variabel dalam programnya. Kebanyakan pemrogram basis data menghabiskan cukup banyak waktu untuk merepresentasikan variabel atau obyek pada programnya ke dalam struktur basis data.

Letak perbedaan utama ODBMS dengan sistem basis data konvensional adalah pada sistem basis data konvensional data direpresentasikan ke dalam bentuk tabel-tabel dengan kolom yang mewakili kategori dari data, dan baris yang berisi data itu sendiri. Sedangkan dalam ODBMS, data direpresentasikan sebagai sebuah obyek, baik dalam hal pengaksesannya maupun dalam hal pemodelannya.

PERKEMBANGAN ODBMS

ODBMS diberkirakan akan segera menjadi teknologi utama di bidang basis data menggantikan Sistem Basis Data Relasional (RDBMS). Utamanya karena RDBMS tidak dirancang untuk menangani tipe data multimedia yang banyak digunakan di internet.

Namun sampai saat ini terbukti RDBMS masih jauh lebih banyak dipergunakan. ODBMS hanya mendapatkan sebagain kecil dari pasaran. Di sisi lain pembuat RDBMS menambahkan kemampuan penggunaan obyek ke dalam sistem buatannya menjadi oject-relational database management system (ORDBMS).

Menurut pendapat Rick Cattell dari Sun Mycrosystems yaitu perkembangan ODBMS masih cukup baik, walaupun skala penjualannya tidak besar, akan tetapi ODBMS akan tetap dipergunakan terutama pada bidang CAD (computer-aided design) dan telekomunikasi yang tidak cocok untuk menggunakan RDBMS.

OODB sangat banyak digunakan dalam bidang CAD/CAM dan Intelegensia Buatan (AI) karena OODB mendukung tipe data yang kompleks dan relasi yang sulit. Juga OODB secara efisien mendukung tipe data multimedia yang banyak digunakan dalam aplikasi CAD/CAM.

Pada kesempatan lain Cattell dari Sun Microsystems menyatakan bahwa OODB juga digunakan pada sistem pendataan pasien rumah sakit karena bagi staf rumah sakit OODB lebih mudah dipergunakan daripada basis data relasional.

Akmal Chaudhri, seorang ahli sistem basis data dan doktor di The City University, London menyatakan bahwa beberapa perusahaan besar di London diantaranya J.P. Morgan, Chase Manhattan dan Citibank menggunakan teknologi ODBMS untuk pemodelan instrumen keuangan seperti obligasi. Hal ini disebabkan teknologi ini membantu mengolah isntrumen yang dibutuhkan dalam pemodelan secara efektif. Teknologi berorientasi-obyek juga mendukung mekanisme penurunan (inheritance) untuk pemodelan instrumen berikutnya dengan cepat dan mudah.

Juga menurut Akmal Chaudhri, jika kita ingin memodelkan sebuah Boeing 747 dengan ODBMS, maka hubungan antara komponen pesawat dikelola langsung oleh sistem basis data. Sedangkan jika kita menggunakan RDBMS, kita harus membagi-bagi pesawat tersebut ke dalam tabel-tabel dan menghubungkan lagi tabel-tabel tersebut bila kita ingin membangun kembali pesawat tersebut.

Sumber: http://www.facebook.com/groups/177605925644909/doc/237801869625314/
read more

Perbedaan Antara Hacker dan Cracker

HACKER

Hacker adalah sebutan untuk orang atau sekelompok orang yang memberikan sumbangan bermanfaat untuk dunia jaringan dan sistem operasi, membuat program bantuan untuk dunia jaringan dan komputer. Hacker juga bisa di kategorikan perkerjaan yang dilakukan untuk mencari kelemahan suatu system dan memberikan ide atau pendapat yang bisa memperbaiki kelemahan system yang di temukannya.

TINGKATAN HACKER

1.Elite
--------
Ciri-ciri : mengerti sistem operasi luar dalam, sanggup mengkonfigurasi & menyambungkan jaringan secara global, melakukan pemrogramman setiap harinya, effisien & trampil, menggunakan pengetahuannya dengan tepat, tidak menghancurkan data-data, dan selalu mengikuti peraturan yang ada. Tingkat Elite ini sering disebut sebagai ‘suhu’.

2. Semi Elite
-------------
Ciri-ciri : lebih muda dari golongan elite, mempunyai kemampuan & pengetahuan luas tentang komputer, mengerti tentang sistem operasi (termasuk lubangnya), kemampuan programnya cukup untuk mengubah program eksploit.

3. Developed Kiddie
-------------------

Ciri-ciri : umurnya masih muda (ABG) & masih sekolah, mereka membaca tentang metoda hacking & caranya di berbagai kesempatan, mencoba berbagai sistem sampai akhirnya berhasil & memproklamirkan kemenangan ke lainnya, umumnya masih menggunakan Grafik User Interface (GUI) & baru belajar basic dari UNIX tanpa mampu menemukan lubang kelemahan baru di sistem operasi.

4. Script Kiddie
-----------------------

Ciri-ciri : seperti developed kiddie dan juga seperti Lamers, mereka hanya mempunyai pengetahuan teknis networking yang sangat minimal, tidak lepas dari GUI, hacking dilakukan menggunakan trojan untuk menakuti & menyusahkan hidup sebagian pengguna Internet.

5. Lammer
----------------------
Ciri-ciri : tidak mempunyai pengalaman & pengetahuan tapi ingin menjadi hacker sehingga lamer sering disebut sebagai ‘wanna-be’ hacker, penggunaan komputer mereka terutama untuk main game, IRC, tukar menukar software prirate, mencuri kartu kredit, melakukan hacking dengan menggunakan software trojan, nuke & DoS, suka menyombongkan diri melalui IRC channel, dan sebagainya. Karena banyak kekurangannya untuk mencapai elite, dalam perkembangannya mereka hanya akan sampai level developed kiddie atau script kiddie saja.


CRACKER

Sedangkan Cracker adalah sebutan untuk orang yang mencari kelemahan system dan memasukinya
untuk kepentingan pribadi dan mencari keuntungan dari system yang di masuki, seperti: pencurian data, penghapusan, dan banyak yang lainnya.

Sumber: http://rino-cyber.forumid.net/t741-perbedaan-hacker-dan-cracker
read more

Perbedaan Antara Komputer 32 Bit dan 64 Bit

Kita mulai dari istilah "32-bit" dan "64-bit" itu dulu.

32-bit dan 64-bit mengacu pada arsitektur processor.
Processor 32-bit artinya register2 nya (unit penyimpanan data terkecil di dalamnya) berukuran 32 bit.
Processor 64-bit artinya register2 nya berukuran 64 bit.

( Register2 ini lah yang digunakan untuk melakukan macam2 operasi. Misalnya c = a + b, maka register "eax" akan me-load nilai dari "a" (di memory), kemudian pada register "eax" ditambahkan nilai dari "b", lalu "eax" ditulis ke memory pada posisi variabel "c" )

Pengaruh ukuran register terhadap kecepatan:
Setiap proses baca/tulis dari memory (disebut dengan load/store) membaca/menulis informasi sebesar ukuran register; maka register 64-bit potensial membaca/menulis memory 2x kecepatan register 32-bit.
Tapi ini teoretis saja, karena kenyataannya prosesor juga menghabiskan waktu untuk melakukan hal-hal lain selain load/store, seperti pemrosesan matematis, vector-processing, dll.

Pengaruh ukuran register terhadap presisi:
Secara simplistik: Makin panjang register, makin banyak angka di-belakang-koma yang bisa dihitung secara akurat.
Sebagai gambaran: Misalkan resolusi bilangan real pada 32-bit adalah 0.0001, maka resolusi bilangan real pada 64-bit bisa mencapai 0.0000001 (jadi jauh lebih presisi).

Pengaruh ukuran register terhadap ukuran memori:
Salah satu dari sekian banyak register adalah "addressing register". Addressing register (atau registers, kalau lebih dari satu) adalah register yang memiliki fungsi 'menunjuk' ke alamat tertentu dalam memory. Jangkauan (range) penunjukan ini disebut dengan istilah memory space.
Pada arsitektur 32-bit, addressing registers mampu 'menunjuk' posisi memory dari 0 s/d 4'294'967'295 (4 GiB - 1). Inilah yang mengakibatkan muncul "batasan 4 GiB" pada sistem berbasis arsitektur 32-bit.
Pada arsitektur 64-bit, addressing registers mampu 'menunjuk' posisi memory dari 0 s/d 18'446'744'073'709'551'615 (16 EiB - 1). Seperti kita lihat, tidak ada lagi 'batasan 4 GiB' pada sistem berbasis arsitektur 64-bit.

Pengaruh ukuran register terhadap dataset:
"Dataset" adalah istilah untuk 'seperangkat data yang di-load ke dalam memory untuk diproses dan (optionally) ditulis kembali ke hard disk'. Sistem 32-bit terbatas pada dataset sebesar (2^32)-1, atau (4 GiB - 1). Mengingat sebagian memory harus digunakan untuk OS dan program database ybs, maka biasanya dataset nya hanya sebesar 1-2 GiB saja.
Artinya, sebuah database yang berukuran, katakanlah, 20 GiB (tidak asing dalam konteks perusahaan besar), harus diproses 10~20x. Sistem 64-bit tidak memiliki batasan di atas. Dia dapat me-load dataset sebesar ketersediaan memory. Artinya, database 20 GiB di atas dapat di-load seluruhnya (asal memory mencukupi), diproses dalam sekali jalan saja.

-----

Agar supaya kita dapat memperoleh keunggulan sistem 64-bit, maka baik software dan hardware harus mendukung.
Software 32-bit jalan di hardware 64-bit tidak bisa memanfaatkan kelebihan arsitektur 64-bit. (Software hanya akan menggunakan 32-bit saja dari 64-bit yang tersedia; 32-bit sisanya tidak dikenali) ==> disebut mode 32-bit.
Sebaliknya, software 64-bit tidak bisa jalan di hardware 32-bit karena kebutuhannya akan lebar register 64-bit tidak bisa dipenuhi.

Windows XP 32-bit dan Windows Vista 32-bit adalah 2 sistem operasi yang masih beroperasi di mode 32-bit.
Windows XP 64-bit dan Windows Vista 64-bit adalah 2 sistem operasi yang mampu beroperasi di mode 64-bit.

-----

AMD64 adalah terobosan (breakthrough) AMD dalam dunia processor x86.

Dahulu, s/d prosesor Pentium 3, Intel bersikukuh menggunakan hanya arsitektur 32-bit pada processor x86. Intel menghabiskan uang jutaan dollar untuk mengembangkan arsitektur 64-bit yang samasekali baru (artinya: Tidak kompatibel dengan dunia x86) dalam bentuk Intel ITANIUM.

AMD kemudian mengembangkan instruction set (dan arsitektur) dari processor x86 yang dibuatnya (AthlonXP) sehingga lahirlah Athlon64: Processor x86 yang memiliki arsitektur 64-bit.

Instruction set yang diperluas ini disebut AMD64 oleh AMD. Intel terpaksa melakukan cross-license, dan menggunakan instruction set tersebut juga (tapi dengan nama EMT64, bukan AMD64. Biasalah, masalaha corporate pride...)

-----

Saya tidak yakin dengan Mac OS X.
Tetapi Linux memiliki versi 32-bit dan versi 64-bit.
Contoh, Ubuntu yang ada di ftp://dl2.foss-id.web.id/iso/ubuntu/releases/hardy/
Ada versi AMD64 (64-bit) dan ada versi i386 (32-bit)

-----

Kelebihan dan kekurangan?

Kita sudah melihat kelebihan dari arsitektur 64-bit.

Sekarang kekurangannya:

Banyak Software 32-bit yang tidak bisa jalan di arsitektur 64-bit, khususnya driver.

Mengapa bisa begitu?

Komputer adalah benda yang sangat kompleks. Untuk bisa berguna bagi manusia, komputer perlu melakukan apa yang disebut "Input/Output" (I/O). Contoh I/O adalah kirim/terima data via LAN, kirim gambar ke Monitor via VGA Card, dll.

Nah, semua tindakan I/O membutuhkan buffer. Sebagai contoh, kita kenal "memory VGA" pada VGA Card; itu sebetulnya adalah buffer untuk membantu VGA Card menampilkan gambar di monitor.

Masalahnya, agar I/O bisa berlangsung dengan mulus dan cepat, 'buffer' ini perlu mendapatkan alamat. Dan alamat ini di ambil dari memory space. Hal ini terjadi meskipun komponen pelaksana I/O ini memiliki buffernya sendiri (contoh: VGA Card terbaru dari nVidia / ATI biasanya punya minimal 256 MiB RAM pada card nya). Tetap saja memori pada card tersebut akan dipetakan ke memory space.

Agar tidak bentrok dengan Sistem Operasi, yang biasanya di-load ke dalam memory 'rendah' (Bottom Memory = memory dengan alamat kecil), maka biasanya pemetaan buffer ini dilakukan di memory 'tinggi' (Top Memory = memory dengan alamat besar, atau dihitung mundur dari alamat memori terbesar (2^32)-1)

Catatan: Ini juga alasan yang menyebabkan RAM komputer kalau terpasang 4 GiB hanya akan bisa dipakai Max 3,25 GiB (atau kalau untung 3,5 GiB), ada yang 'hilang' karena 'tertutupi' oleh buffer dari komponen I/O.

Nah, pada arsitektur 64-bit, hal yang sama pun dilakukan: Buffer untuk I/O dipetakan ke Top Memory. Masalahnya, Top Memory pada arsitektur 64-bit jelas terletak pada posisi yang berbeda dengan Top Memory pada arsitektur 32-bit.

Driver adalah korban yang paling jelas; mereka berusaha mengakses Top Memory 32-bit, padahal lokasi buffer tidak di situ. Akibatnya: Crash.

Software2 lain yang juga coba-coba mengakses Top Memory secara langsung akan mengalami crash juga.

Lucunya, banyak game 32-bit yang malah jalan dengan tanpa masalah di sistem 64-bit; hal ini karena mereka tidak berusaha mengakses Top Memory secara langsung, melainkan meminta bantuan Microsoft DirectX Layer untuk mengakses fitur dari sebuah VGA Card.

Sumber:  http://mig33bogor.hot-me.com/t1753-perbedaan-32-bit-dan-64-bit
read more