Rabu, 19 Desember 2012

Cara membedakan HTML4 dengan HTML5

Antara HTML4 dengan HTML5 pasti ada perbedaan, tidak mungkin dibuat HTML5 kalau tidak ada perbedaan sama sekali dengan HTML4. Nah, cara membedakan antara HTML4 dengan HTML5 yaitu pada :

- Doctype nya:
     - pada HTML5 : <!DOCTYPE html>
     - pada HTML4 : <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” 
       “http://www.w3.org/TR/html4/strict.dtd”

- Pengurangan element 
      Element yang dikurangi yaitu :
         - Basefont
         - Big
         - Center
         - Font
         - S
         - Strike
         - Tt
         - U
     
    Element terseut dihilangkan karena representative dan akan lebih mudah di handle dengan CSS

     Element yang dihilangkan karena dianggap kurang baik bagi end user dalam usability dan accessibility yaitu:
          - Frame
          - Frameset
          - Noframe

      Kemudian beberapa elemen yang dihilangkan karena jarang digunakan yaitu:
          - Acronym
          - Applet
          - Isindex
          - Dir

- Pengurangan atribut
       Atribut yang dikurangi dan dianggap lebih baik dihandle oleh CSS yaitu:
           - Background atribut dari 'body'
           - Bgcolor atribut dari ‘table’,’tr’,’td’,’th’,’body’
           - Border atribut dari ‘table’, ‘img’, ‘object’
           - Height atribut dari ‘td’,’th’

Fitur - fitur pada HTML5 dan perbedaan antara HTML4 dengan HTML5



HTML5 adalah bahasa markup untuk penataan dan penyajian konten untuk World Wide Web dan teknologi inti dari Internet . Ini adalah revisi kelima dari HTML standar (dibuat pada tahun 1990 dan distandarisasi sebagai HTML4 pada 1997)  dan, pada Desember 2012 , adalah Rekomendasi Calon W3C. Tujuan utamanya telah meningkatkan bahasa dengan dukungan untuk multimedia terbaru sambil menjaga mudah dibaca oleh manusia dan secara konsisten dipahami oleh komputer dan perangkat ( web browser , parser , dll). HTML5 dimaksudkan untuk menggolongkan tidak hanya HTML 4 , tetapi XHTML  1 dan DOM Level 2 HTML juga.

Fitur – fitur pada HTML 5
Markup
HTML5 memperkenalkan elemen dan atribut yang mencerminkan penggunaan khas pada modern website . Beberapa dari mereka adalah semantik pengganti untuk keperluan umum blok generik (<div> ) dan (inline <span> ) elemen, misalnya <nav> (website navigasi blok), <footer> (biasanya mengacu pada bagian bawah halaman web atau baris terakhir dari kode HTML), atau<audio> dan <video> bukan <object> . Beberapa elemen ditinggalkan dari HTML 4.01 telah dijatuhkan, termasuk presentasional murni elemen seperti <font> dan <center>, yang efeknya telah lama digantikan oleh yang jauh lebih kuat Sheets Cascading Style . Ada juga penekanan baru tentang pentingnya DOM scripting (misalnya, JavaScript) dalam perilaku Web.
Sintaks HTML5 tidak lagi didasarkan pada SGML meskipun kesamaan markup nya. Hal ini, bagaimanapun, telah dirancang untuk menjadi kompatibel dengan parsing umum versi HTML.Muncul dengan garis pengantar baru yang terlihat seperti SGML deklarasi tipe dokumen , <DOCTYPE html!> , yang memicu standar-compliant modus render.  Pada 5 Januari 2009, HTML5 juga mencakup Formulir Web 2.0 , yang sebelumnya terpisah WHATWG spesifikasi.

New API

Selain menentukan markup, HTML5 menentukan scripting antarmuka pemrograman aplikasi (API) yang dapat digunakan dengan JavaScript ada dokumen model objek (DOM) antarmuka yang diperpanjang dan de facto fitur didokumentasikan. Ada juga API baru, seperti:
·         The elemen kanvas untuk segera modus gambar 2D. Lihat Canvas 2D API Spesifikasi spesifikasi 1.0 
·         Jangka waktu pemutaran media
·         Offline Web Aplikasi 
·         Dokumen editing
·         Drag-and-drop
·         Cross-dokumen pesan 
·         Browser history manajemen
·         Tipe MIME dan pendaftaran protokol handler
·         Microdata
·         Web Storage , kunci-nilai pasangan penyimpanan kerangka kerja yang memberikan perilaku yang mirip dengan cookie namun dengan kapasitas penyimpanan yang lebih besar dan API ditingkatkan.
Tidak semua teknologi di atas termasuk dalam spesifikasi HTML5 W3C, meskipun mereka berada dalam spesifikasi HTML WHATWG.  Beberapa teknologi yang terkait, yang bukan bagian dari baik HTML5 W3C atau WHATWG spesifikasi HTML, adalah sebagai berikut. W3C menerbitkan spesifikasi untuk ini secara terpisah:
·         Geolocation
·         Web SQL Database , Database SQL lokal (tidak lagi dipertahankan). ]
·         The API Indexed database , yang hirarkis diindeks kunci-nilai toko (sebelumnya WebSimpleDB).
·         HTML5 Berkas API, menangani upload file dan manipulasi file.
·         Direktori dan Sistem . API ini dimaksudkan untuk memenuhi kasus penggunaan client-side-penyimpanan tidak dilayani dengan baik oleh database. 
·         Berkas Writer . Sebuah API untuk menulis ke file dari aplikasi web. ]
·         Web Audio API , tingkat tinggi JavaScript API untuk pengolahan dan sintesis audio dalam aplikasi web.
HTML5 sendiri tidak dapat memberikan animasi dalam halaman web. Entah JavaScript atau CSS3 diperlukan untuk menghidupkan elemen HTML. Animasi juga mungkin menggunakan JavaScript dan HTML 4, dan dalam elemen SVG melalui SMIL , meskipun browser yang mendukung kedua tetap tidak merata pada 2011.

Xhtml5

Xhtml5 adalah XML serialisasi dari HTML5. Dokumen XML harus disajikan dengan XML jenis media internet seperti aplikasi / xhtml + xml atau application / xml . xhtml5 membutuhkan ketat XML, well-formed sintaks. Pilihan antara HTML5 dan bisul xhtml5 ke pilihan tipe MIME / konten:. Jenis media yang memilih menentukan apa jenis dokumen harus digunakan di xhtml5 HTML5 DOCTYPE html . adalah opsional dan hanya dapat dihilangkan  HTML yang telah ditulis agar sesuai dengan baik HTML dan XHTML spesifikasi-dan yang karenanya akan menghasilkan pohon DOM sama apakah diuraikan sebagai HTML atau XML-disebut " polyglot markup ". 

Kesalahan penanganan

Sebuah HTML5 (text / html) browser akan fleksibel dalam menangani salah sintaks . HTML5 dirancang sedemikian rupa sehingga browser lama dapat dengan aman mengabaikan konstruksi HTML5 baru. Berbeda dengan HTML 4.01, spesifikasi HTML5 memberikan aturan rinci untuk lexing dan parsing , dengan maksud bahwa compliant browser berbeda akan menghasilkan hasil yang sama dalam kasus sintaks yang salah. Meskipun HTML5 sekarang mendefinisikan perilaku yang konsisten untuk " sup tag "dokumen, dokumen-dokumen tersebut tidak dianggap sebagai sesuai dengan standar HTML5. 

 Perbedaan mendasar dengan HTML 4.01 adalah spesifikasi HTML5 memberikan aturan detail untuk meleksikalkan dan memparsing sebagai persyaratan agar berbagai peramban web tetap memberikan hasil yang sama saat terjadi kesalahan sintaks. Meskipun HTML5 telah memiliki perilaku konsisten untuk menangani dokumen-dokumen "Tag Soup", dokumen seperti ini tidak dapat dikatakan telah memenuhi standar HTML5.

http://id.wikipedia.org/wiki/HTML5
http://en.wikipedia.org/wiki/HTML5



Senin, 19 November 2012

Pengaruh Kebudayaan Terhadap Grafik



Sebelum nya kita harus tau apa itu kebudayaan. Ada beberapa pengertian dari masing - masing ahli nya. Menurut Andreas Eppink, kebudayaan mengandung keseluruhan pengertian nilai sosial,norma sosial, ilmu pengetahuan serta keseluruhan struktur-struktur sosial, religius, dan lain-lain, tambahan lagi segala pernyataan intelektual dan artistik yang menjadi ciri khas suatu masyarakat. Menurut Edward Burnett Tylor, kebudayaan merupakan keseluruhan yang kompleks, yang di dalamnya terkandung pengetahuan, kepercayaan, kesenian, moral, hukum, adat istiadat, dan kemampuan-kemampuan lain yang didapat seseorang sebagai anggota masyarakat. Menurut Selo Soemardjan dan Soelaiman Soemardi, kebudayaan adalah sarana hasil karya, rasa, dan cipta masyarakat. Dari berbagai definisi tersebut, dapat diperoleh pengertian mengenai kebudayaan adalah sesuatu yang akan memengaruhi tingkat pengetahuan dan meliputi sistem ide atau gagasan yang terdapat dalam pikiran manusia, sehingga dalam kehidupan sehari-hari, kebudayaan itu bersifat abstrak. Sedangkan perwujudan kebudayaan adalah benda-benda yang diciptakan oleh manusia sebagai makhluk yang berbudaya, berupa perilaku dan benda-benda yang bersifat nyata, misalnya pola-pola perilaku, bahasa, peralatan hidup, organisasi sosial, religi, seni, dan lain-lain, yang kesemuanya ditujukan untuk membantu manusia dalam melangsungkan kehidupan bermasyarakat. Jadi pengaruh kebudayaan terhadap grafik kita bisa ambil contoh pada batik. Pada jaman dulu corak dari batik hanya begitu - begitu saja dan model dari batik tersebut hanya begitu - begitu saja juga, tetapi sekarang batik modern corak nya lebih modern dan memiliki banyak corak di bandingkan pada jaman dulu dan model dari batik nya memiliki banyak model nya lebih modern.

Jadi, apakah grafik dipengaruhi oleh budaya atau budaya dipengaruhi oleh grafik? menurut saya grafik dipengaruhi oleh budaya. contoh nya budaya asing masuk ke negara indonesia pasti grafik yang ada di indonesia berpengaruh dengan budaya asing.

Kamis, 15 November 2012

Teknologi Visual Menggunakan Media Online

Teknologi visual terdiri dari 2 kata yaitu "teknologi" dan "visual", sebelum nya kita harus tau apa pengertian dari masing - masing kata tersebut. Teknologi adalah keseluruhan sarana untuk menyediakan barang - barang yang diperlakukan bagi kelangsungan dan kenyamanan hidup manusia. Kalau visual berhubungan erat dengan mata dan penglihatan. Menurut beberapa ahli, visual juga merupakan salah satu bagian aktivitas belajar. Dimana aktivitas belajar itu sendiri terdiri dari : somatis (belajar dengan bergerak dan berbuat), auditori (belajar dengan berbicara dan mendengar), intelektual (belajar dengan memecahkan masalah dan merenung), dan visual (belajar dengan cara melihat, mengamati dan menggambarkan). Keempat aktivitas belajar tersebut harus dikuasai supaya proses belajar dapat berlangsung secara optimal. Jadi, Teknologi Visual adalah sarana yang digunakan untuk melakukan aktivitas, contoh nya adalah belajar mengajar, bermain, dan lain - lain. 

Setelah mengetahui pengertian dari Teknologi Visual, sekarang kita kembali ke pokok bahasan yaitu Teknologi Visual Menggunakan Media Online. Disana ada kata Media Online berarti berhubungan dengan internet, jadi nya sarana yang digunakan untuk melakukan aktivitas secara online. Contoh nya adalah dalam hal edukasi sistem belajar mengajar secara online, contoh searching google untuk dalam hal edukasi. Di dalam hal hiburan contoh nya bermain game online. Di dalam hal media sosial, video conference dengan teman.


Sabtu, 20 Oktober 2012

Apakah tugas seorang IT (pembuat software) wajib mengunakan simulasi?

Menurut saya untuk seorang IT wajib menggunakan simulasi jika membutuhkan. Maksud saya adalah jika seorang IT ingin membuat aplikasi yang rumit atau kompleks, jika dia menggunakan simulasi akan sangat membantu dalam hal penalaran, logika atau pun cara kerja dan apa yang harus dibuat, lalu membuat nya kedalam suatu bahasa pemrograman. Contoh nya jika membuat simulasi pesawat terbang seorang IT harus mengetahui cara kerja dari pesawat tersebut, misalnya pada saat pesawat terbang, pesawat tidak boleh terbang diatas ketinggian tertentu atau tidak boleh melebihi kecepatan tertentu. Jadi nya dengan melakukan simulasi sebelum membuat aplikasi bagi seorang IT sangat membantu sekali dalam hal logika, cara kerja dan apa saja yang harus dibuat. Tetapi jika membuat program yang tidak rumit atau seorang programmer tersebut sudah mengetahui logika dan apa yang harus di buat, menurut saya programmer tersebut tidak perlu menggunakan simulasi untuk membuat program atau aplikasi tersebut.

Rabu, 17 Oktober 2012

Simulasi Kegagalan Sistem Ventilasi RSG-Gas dan Penanganannya


Simulasi kegagalan kinerja sistem ventilasi di dalam gedung reaktor dilakukan dengan cara meletakkan sumber CS-37 sebesar 1,8 m Ci pada steak sehingga memberikan paparan radiasi yang lebih besar dari batas ambang (>5 x 10-4 Ci/m3). Mekanisme terjadinya sistem v-ac terkungkung secara menyeluruh atau isolation building karena adanya paparan radiasi yang melebihi batas ambang sehingga katup katup tertentu akan menutup secara otomatis. Dalam kaitannya dengan isolation building tersebut di atas tidak berpengaruh terhadap kelangsungan operasi reaktor, berbeda dengan isolation building yang terjadi yang berasal dari operation hall (KLA 60 CR 811/821/831 ≥ 125 mR/jam) akan berakibat reaktor scram. Setelah beroperasi lebih dari 20 tahun secara terus menerus perlu dilakukan pengetesan untuk mengetahui keadaan terkini. Untuk mengoperasikan kembali secara normal harus melalui prosedur prosedur tertentu yang sudah baku. Akibat yang mungkin terjadi sehubungan dengan adanya kegiatan ini adalah adanya kerusakan pada komponen elektrik atau instrumen, yang selanjutnya dapat diatasi dengan cara penelusuran kegagalan operasi system ventilasi yang membutuhkan waktu panjang. Dengan mengikuti prosedur serta jadwal perawatan yang baik (komponen diganti sebelum habis masa pakainya) maka hal tersebut tidak akan terjadi.
Dalam rangka penyiapan SDM Nuklir menyongsong industrialisasi dan realisasi PLTN dapat ditempuh dengan pembinaan dan pengembangan SDM melalui jalur strategis yaitu jalur kegiatan yang terkait dalam pelaksanaan pembangunan atau merupakan jalur kegiatan yang berorientasi proyek dan jalur pendukung yang berorientasi program. Melalui program yang lebih bersifat pengenalan untuk memberikan suatu gambaran yang lebih kongkrit tentang pengelolaan PLTN. Disini mengajak memahami tentang kinerja system ventilasi bangunan besar yang memiliki ruangan sangat banyak dan kondisi masingmasing ruangan berbeda satu dengan lainnya sehingga membutuhkan sistem V-ac yang banyak pula. Melalui pertemuan ilmiah ini ingin memaparkan bagaimana mengatasi masalah ketidak seimbangan sistem ventilasi yang beroperasi secara bersamaan Isolasi gedung ( isolation building) adalah suatu kondisi dimana system V-AC terkungkung secara menyeluruh di dalam gedung. Penyebab terjadinya isolasi gedung ini sangat banyak mengingat banyaknya jumlah ruangan dengan jenis keperluan kondisi yang berbeda sehingga membutuhkan banyak system V-AC untuk beroperasi dalam waktu yang sama di dalam satu gedung. Dalam kegiatan ini dilatar belakangi oleh kinerja operasi sistem ventilasi yang berjalan baik, sengaja dipasang sumber sebesar 1,8 m Ci pada cerobong yang akan memicu terjadinya isolasi gedung ( isolation building) seperti yang pernah dilakukan pada saat awal komisioning. Tujuan dilakukan simulasi kegagalan terhadap kinerja sistem ventilasi pada 3 –4 April 2008 adalah untuk menguji keandalan kinerja katup-katup sistem ventilasi, karena sistem ventilasi beroperasi selama 24 jam setiap hari serta melacak kerusakan akibat kegagalan operasi tersebut. Secara umum penyebab terjadinya isolation building adalah aktivitas radiasi pada KLA 60 tinggi atau perbandingan laju aliran pada KLA 20 CF002 > CF001 atau laju aliran KLA 20 Cf002 < harga minimum. Penyebab lain adalah katup-katup KLK 06 AA101/102/201/202 mengalami gangguan, 2 atau 3 ruangan tekanan turun atau system ventilasi KLA11 dan KLA 12 atau KLA23 dan KLA24 mengalami fault (gangguan). Metode yang digunakan untuk menanganani isolation building dengan cara mengembalikan kondidisi operasi normal sistem V-AC secara keseluruhan.
Cara penanganan tersebut dengan menelusuri beberapa sub sistem ventilasi yang terkait, Setelah diketahui penyebabnya baru dilakukan pengkondisian operasi normal dan setelah beberapa saat maka seluruh sistem V-AC dapat berjalan normal kembali,dan apabila cara ini gagal harus ditelusuri komponen elektriknya.


Pemanfaatan Simulasi Dalam Bidang Teknologi Industri


Sebelum nya kita harus mengerti apa itu simulasi. Simulasi adalah tiruan dari sebuah sistem dinamis dengan menggunakan model komputer untuk melakukan evaluasi dan meningkatkan kinerja sistem. Piranti lunak / software simulasi komersial yang secara khusus dirancang untuk mencakup perilaku sistem disebut adalah promodel. Software simulasi menyediakan animasi grafis dan realistik dari sistem yang dimodelkan nya, user atau pengguna dapat melakukan analisa dan beberapa diantaranya menyediakan kapabilitas optimasi. Fungsi dari melakukan simulasi adalah kalau melakukan trial dalam menggunakan alat yang asli, contoh nya pilot pesawat terbang melakukan uji terbang pesawat, jika pilot pesawat terbang itu melakukan uji terbang dengan pesawat asli maka akan menghabiskan waktu dan akan menghabiskan banyak pengeluaran. Jadi, dilakukan simulasi pesawat terbang atau flight simulator untuk meminimasikan resiko kerugian yang besar dan kesalahan dalam kehidupan nyata.
Simulasi menyediakan metode analisis untuk meramalkan kinerja sistem, bahkan untuk sistem yang paling rumit. Simulasi mendukung pengambilan keputusan, contohnya manajer dapat memperkirakan hasil dengan lebih akurat. Dan melakukan simulasi dapat terhindar dari resiko dalam kehidupan nyata. 

Karakteristik simulasi

Karakteristik simulasi sebagai alat perencanaan
dan pengambilan keputusan yang tangguh:

- Mencakup saling ketergantungan sistem (system interdependencies)
- Memperhitungkan variabilitas sistem
- Sanggup membuat model untuk sistem apapun
- Memperlihatkan perilaku sistem setiap saat
- Lebih murah, tidak menghabiskan waktu dan tidak mengganggu sistem nyata
- Menyediakan hasil yang mudah dimengerti dan dikomunikasikan
 - Mencakup waktu yang nyata, dimampatkan, atau bahkan waktu yang tertunda
 - Memberikan rancangan yang rinci

Melakukan simulasi adalah sebuah proses dari perancangan model dari sistem nyata dan mengadakan dengan promodel tersebut. 

Manfaat dari simulasi adalah sebagai pendukung keputusan di bidang manufaktur, termasuk sistem pergudangan dan distribusi membuat rancangan sistem dan keputusan operasional.

Jadinya simulasi merupakan teknologi untuk meningkatkan kinerja sistem dengan menyediakan cara untuk membuat rancangan dan keputusan rancangan, manajemen yang lebih baik.




Jumat, 20 April 2012

INHERITANCE DAN POLIMORFISME PADA JAVA



Nama : Muhammad Triwindu Prasetya

NPM     : 54410833

Nama Kelompok : Muhammad Aulia Desri Nurrachman


Pada dasarnya kita sebagai manusia sudah terbiasa untuk melihat objek yang berada di sekitar kita tersusun secara hierarki berdasarkan class-nya masing-masing. Dari sini kemudian timbul suatu konsep tentang pewarisan yang merupakan suatu proses dimana suatu class diturunkan dari class lainnya sehingga ia mendapatkkan ciri atau sifat dari class tersebut.
Dari hirarki di atas dapat dilihat bahwa, semakin ke bawah, class akan semakin bersifat spesifik. Misalnya, sebuah Class mamalia memiliki seluruh sifat yang dimiliki oleh binatang, demikian halnya juga anjing, kucing dan monyet memiliki seluruh sifat yang diturunkan dari class mamalia. Dengan konsep ini, karakteristik yang dimiliki oleh class binatang cukup didefinisikan dalam class binatang saja. Class mamalia tidak perlu mendefinisikan ulang apa yang telah dimiliki oleh class binatang, karena sebagai class turunannya, ia akan mendapatkan karakteristik dari class binatang secara otomatis. Demikian juga dengan class anjing, kucing dan monyet, hanya perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya masing-masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia diturunkan.Penurunan sifat tersebut dalam Bahasa Pemrograman Java disebut dengan Inheritance yaitu satu dalam Pilar Dasar OOP (Object Oriented Programing), yang dalam implementasinya merupakan sebuah hubungan “adalah bagian dari” atau “is a relationship” object yang diinherit (diturunkan).Latar belakang diperlukannya suatu inheritance dalam pemrograman java adalah untuk menghindari duplikasi object baik itu field, variable maupun methode yang sebenarnya merupakan object yang bisa diturunkan dari hanya sebuah class. Jadi inheritance bukan sebuah Class yang di inherit oleh sebuah Literial, tapi lebih menunjukkan ke hubungan antar object itu sendiri.Sedangkan suatu kemampuan dari sebuah object untuk membolehkan mengambil beberapa bentuk yang berbeda agar tidak terjadi duplikasi object kita kenal sebagai polymorphism.Antara penurununan sifat (inheritance) maupun polymorphism merupakan konsep yang memungkinkan digunakannya suatu interface yang sama untuk memerintah objek agar melakukan aksi atau tindakan yang mungkin secara prinsip sama namun secara proses berbeda. Dalam konsep yang lebih umum sering kali polymorphism disebut dalam istilah tersebut



Contoh Programnya :

Membuat Class Mobil :
class Kendaraan {
public void Mobil (){
System.out.println("Type Mobil :");
}
}

Membuat Class Turunan dari Jazz, yang merupakan turunan dari class Mobil :


public class Jazz extends Mobil {
public void Type(){
System.out.println("Honda jazz");
}
}


Membuat Class Turnana dari CRV, yang merupakan turunan dari class Mobil :


public class CRV extends Mobil {
public void Type (){
System.out.println("Honda CRV");
}
}


Membuat Class Turnana dari City, yang merupakan turunan dari class Mobil : 


public class City extends Mobil {
public void Type(){
System.out.println("Honda City");
}
}


Lalu membuat class TypeMobil untuk menjalankan semua class-class yang telah dibuat :
public class TypeMobil {
public static void main(String[] args){
Mobil mobil = new Mobil();
Jazz jazz = new Jazz();
CRV crv = new CRV();
City city = new City();

mobil.Type();

mobil = jazz;
mobil.Type();

mobil = crv;
mobil.Type();

mobil = city;
mobil.Type();
}
}

Outputnya :

Jumat, 13 April 2012

Java Enkapsulasi

Enkapsulasi Java
Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni :
Information hiding.
Interface to access data.
Information hiding
Sebelumnya kita dapat mengakses anggota class baik berupa atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah 'public'. Kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya adalah hanya dengan memberikan akses kontrol 'private' ketika mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.
Interface to access data
Jika kita telah melakukan information hiding terhadap suatu atribut pada suatu class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.

Contoh program :

program 1:

public class Vehicle{
public double load, maxLoad;
public Vehicle (double maxLoad){
maxLoad = maxLoad + load;
}
public double getLoad(){
return load;
}
public double getMaxLoad(){
return maxLoad;
}
}

program 2 :

public class TestVehicle{
public static void main(String[] args){
System.out.println("Creating a vehicle with a 10,000kg maximum load.");
Vehicle vehicle = new Vehicle(10000.0);
System.out.println("Add box #1 (500kg)");
vehicle.load = vehicle.load + 500.0;
System.out.println("Add box #2 (250kg)");
vehicle.load = vehicle.load + 250.0;
System.out.println("Add box #3 (5000kg)");
vehicle.load = vehicle.load + 5000.0;
System.out.println("Add box #4 (4000kg)");
vehicle.load = vehicle.load + 4000.0;
System.out.println("Add box #4 (300kg)");
vehicle.load = vehicle.load + 300.0;
System.out.println("Vehicle load is = " +vehicle.getLoad() + "kg");
}
}

Output program :


Jumat, 06 April 2012

perbedaan pemrograman terstruktur dan berorientasi objek di bahasa pemrograman java


Perbedaan Pemrograman terstruktur dengan Pemrograman Berorientasi Objek

Perbedaan Pemrograman terstruktur dengan

Pemrograman Berorientasi Objek

Pemrograman berorientasi objek (Object-Oriented Programming atau 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, Sedangkan untuk pemrograman terstruktur adalah kebalikan dari pemrograman berorientasi objek yaitu sebuah cara pemrosesan data yang terstruktur dalam analisa, cara dan penulisan pemrograman. Dikarenakan harus terstruktur sehingga dalam pembuatannya antara satu line pemrograman dengan yang lainnya berhubungan. Konsep utama dari Pemrograman Berbasis Objek terletak pada kondisi kode/line pemrogramanannya dimana merupakan sebuah kesatuan modular.


Untuk program yang simpel/sederhana biasanya menggunakan pemrograman terstruktur karena masih mudah dan tidak banyak dilakukan perubahan yang berarti, sedangkan untuk line lebih dari 100 atau bisa dikatakan rumit, maka digunakan pemrograman berorientasi objek. Pemrograman Terstruktur terdiri dari pemecahan masalah yang besar menjadi masalah yang lebih kecil dan seterusnya, sedangkan untuk pemrograman berorientasi objek terdiri dari pengkelompokan kode dengan data yang mana setiap objek berfungsi secara independen sehingga untuk setiap perubahan kode tidak tergantung pada kode yang lainnya, atau lebih dikenal dengan modular. Terdapat juga perbedaan secara spesifik antara Pemrograman Berorientasi Objek dengan Pemrograman Terstruktur, yaitu pada kelas dan objek. Pada Pemrograman Terstruktur tidak terdapat kelas dan objek.


Sifat-sifat dari pemrograman terstruktur dapat diuraikan sebagai berikut :

a. Memuat teknik pemecahan masalah yang logis dan sistematis

b. Memuat algoritma yang efisien, efektif dan sederhana

c. Program disusun dengan logika yang mudah dipahami

d. Tidak menggunakan perintah GOTO

e. Biaya pengujian program relatif rendah

f. Memiliki dokumentasi yang baik

g. Biaya perawatan dan dokumentasi yang dibutuhkan relatif rendah


Berbeda dengan OOP. Suatu program disebut dengan pemrograman berbasis obyek (OOP) karena terdapat :


– Encapsulation (pembungkusan)

Encapsulation adalah mekanisme pemrograman yang membungkus kode dan data yang dimanipulasi dan menjaganya supaya terhindar dari interferensi dan penggunaan yang tidak perlu. Salah satu caranya dengan membentuk objek.


– Inheritance (pewarisan)

Inheritance memungkinkan programer meletakkan member yang sama dalam satu class dan class-class lain dapat mewarisi member tersebut. Class yang mengandung member yang sama dari beberapa class lain dinamakan superclass atau parent class. Class yang mewarisi dinamakan subclass atau child class. Inheritance menghasilkan class hierarchy.


– Polymorphism (polimorfisme –perbedaan bentuk)

Polymorphisme artinya mempunyai banyak bentuk. Dua objek atau lebih dikatakan sebagai polymorphic, bila objek-objek itu mempunyai antar muka yang identik namun mempunyai perilaku-perilaku yang berbeda


Bisa dikatakan pada pemrograman berorientasi objek, dapat dilakukan sebuah programming terhadap code yang lebih baik daripada pemrograman terstruktur, itu juga untuk kaliber atau skala rumit atau besar, sedangkan untuk coding yang skala kecil lebih mudah menggunakan pemrograman terstruktur dikarenakan lebih singkat dan mudah tanpa banyak perubahan yang penting.

http://myblogar.blogspot.com/2011/02/perbedaan-pemrograman-terstruktur.html

Kamis, 22 Maret 2012

Contoh Program menghitung berat badan ideal menggunakan GUI pada java

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class brt extends JFrame implements ActionListener {
private JLabel lbl1,lbl2,lbl3, lbl4,lbl5,lbl6,lbl7,lbl8;
private JTextField nama,tinggi,berat,hasil,ideal,anjuran;
private JButton btn1,btn2,btn3;

private String nm = "";
    private Double ti, bt, hl;

public brt(){
super("Berat Badan Ideal");
Container container=getContentPane();
container.setLayout(null);

lbl1 = new JLabel("Menghitung Berat Badan");
lbl2 = new JLabel("Nama");
lbl3 = new JLabel("Tinggi");
lbl4 = new JLabel("Berat Badan");
lbl5 = new JLabel("Cm");
lbl6 = new JLabel("Kg");
lbl7 = new JLabel("Ideal Kah Badan Anda");
lbl8 = new JLabel("Anjuran Dari Ahli Gizi");

nama = new JTextField();
tinggi = new JTextField();
berat = new JTextField();
hasil = new JTextField();
ideal = new JTextField();
anjuran = new JTextField();

btn1 = new JButton("Idealkah");
btn2 = new JButton("Coba Lagi");
btn3 = new JButton("Keluar");

lbl1.setBounds(175, 25, 150, 25); // menghitung berat badan ideal
lbl2.setBounds(50, 100, 100, 25); // nama
lbl3.setBounds(50, 125, 100, 25); // tinggi badan
lbl4.setBounds(50, 150, 100, 25); // berat badan
lbl5.setBounds(235, 125, 50, 25); // cm
lbl6.setBounds(235, 150, 50, 25); // kg
lbl7.setBounds(175, 200, 150, 25); // idealkah badan anda
lbl8.setBounds(175, 275, 150, 25); // anjuran dari ahli gizi

nama.setBounds(175, 100, 200, 25);
tinggi.setBounds(175, 125, 50, 25);
berat.setBounds(175, 150, 50, 25);
hasil.setBounds(275, 137, 100, 25);
hasil.setEnabled(false);
ideal.setBounds(50, 225, 400, 25);
anjuran.setBounds(50, 300, 400, 25);

btn1.setBounds(50, 350, 133, 75); // idealkah
btn2.setBounds(183, 350, 133, 75); // coba lagi
btn3.setBounds(316, 350, 133, 75); // keluar

btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);

container.add(lbl1);
container.add(lbl2);
container.add(lbl3);
container.add(lbl4);
container.add(lbl5);
container.add(lbl6);
container.add(lbl7);
container.add(lbl8);

container.add(nama);
container.add(tinggi);
container.add(berat);
container.add(hasil);
container.add(ideal);
container.add(anjuran);

container.add(btn1);
container.add(btn2);
container.add(btn3);

setSize (500, 500);
setLocation(400, 150);
setVisible(true);
}

public void actionPerformed(ActionEvent ae) {
Object obj = ae.getSource();
if(obj == btn1) {hitungIdeal();}
if(obj == btn2) {bersih();}
if(obj == btn3) {System.exit(0);}
}

public void bersih() {
nama.setText("");
berat.setText("");
tinggi.setText("");
hasil.setText("");
ideal.setText("");
anjuran.setText("");
nama.requestFocus(true);
}

public void hitungIdeal() {
if(berat.getText().equals("") || tinggi.getText().equals("") || nama.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Kotak Input Belum Terisi");
nama.setText("");
tinggi.setText("");
berat.setText("");
nama.requestFocus(true);
} else {
ti = Double.parseDouble(tinggi.getText());;
bt = Double.parseDouble(berat.getText());
hl = (ti-110)*1.1;
double a=1.1*bt;
double c=0.9*bt;

if (hl>a) {
ideal.setText("Halloo " + nama.getText() + " Maaf Anda GEMUK Ya");
anjuran.setText("Banyak Berolahragalah dan makan yang berserat tinggi untuk menghindari kolesterol");
hasil.setText(String.valueOf(hl));
} else if(hl<c) {
ideal.setText("Halloo " + nama.getText() + " Maaf Anda KURUS Ya");
anjuran.setText("Anda harus banyak makan-makanan yang berkarbohidrat");
hasil.setText(String.valueOf(hl));
}
else {
ideal.setText("Halloo " + nama.getText() + " Selamat Ini baru yang namanya BERAT IDEAL");
anjuran.setText("Lanjutkan hidup anda dan jangan lupa dengan gaya hidup sehat");
hasil.setText(String.valueOf(hl));
}
}
}

public static void main(String args[]) {
        brt coba = new brt();
        coba.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

Saya membuat program untuk menghitung berat badan ideal. Saya menggunakan OOP dan GUI pada java. Saya menggunakan package java.awt, java.awt.event, dan java.swing untuk membuat GUI nya. Lalu untuk menaruh tulisan saya menggunakan label, untuk menaruh nama, tinggi, dan berat badan saya menggunakan textfield, dan untuk tombol hitung nya saya menggunakan button. Saya menggunakan action performed untuk melaksanakan bila di tekan button yang sudah disediakan. saya membuat beberapa method di dalam program saya yaitu method bersih bila mau melakukan perhitungan lagi bisa menekan tombol bersih untuk melakukan perhitungan lagi, dan method untuk menghitung berat badan ideal. Dan rumus untuk menghitung berat badan ideal ada di dalam method hitung ideal.