1 / 39

Pemrograman Aplikasi Bergerak

Pemrograman Aplikasi Bergerak. With Fandi Susanto S.Si . About Perkuliahan . Buku wajib : M.Shalahuddin , Rosa A.S., 2010, Pemrograman J2ME: Belajar Cepat Pemrograman Perangkat Telekomunikasi Mobile. Penilaian : Kuis , Tugas , UTS, UAS: for( persen =10, persen <=40, persen +=10)

miriam
Download Presentation

Pemrograman Aplikasi Bergerak

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pemrograman Aplikasi Bergerak With Fandi SusantoS.Si. By Fandi Susanto S.Si

  2. About Perkuliahan • Bukuwajib: M.Shalahuddin, Rosa A.S., 2010, Pemrograman J2ME: BelajarCepatPemrogramanPerangkat Telekomunikasi Mobile. • Penilaian: • Kuis, Tugas, UTS, UAS: • for(persen=10, persen<=40, persen+=10) • if (jamKuliah == 5) if (terlambat>=30) absensi="Alpa"; • if (jamKuliah != 5) if (terlambat >=10) absensi="Alpa"; • if (absensi <= 70) UAS = false; • if (pakaiSandal) hadir=false; • if (tugasTelat) nilaiTugas = 0; By Fandi Susanto S.Si

  3. Aplikasi • Terbaru (ringkas): • JDK 6u23 • Sun Java ME SDK 3.0 • Sebelumnya (ringan): • JDK (Minimal Versi 5.x) • WTK 2.5.2 • Eclipse 332 (Tidakwajib, bisadisubstitusi IDE lain) • Not Recommended: • JDK 6u1 • Netbeans 6.9.1 • Emulator: (Sun Java ME SDK 3.0 atau WTK 2.5.2) By Fandi Susanto S.Si

  4. Anda dianggap sudah tahu: • Teknik pemrograman sangat dasar: • If (dankondisisertapenggabungankondisi) • Switch • For • While, Do – while • Teknikpemrograman dasar: • Procedure • Function By Fandi Susanto S.Si

  5. Yang harus segera dikuasai • Teori dasar OOP (Object Oriented Programming): • Encapsulation, Inheritance, Polymorphism • Constructor, Destructor • Superclass, Subclass • Access Modifier (Private, Protected, Public) • Static properties By Fandi Susanto S.Si

  6. Study Plan Sebelum UTS • PengenalanAplikasiPemrograman J2ME • Review function ( if, for, while ) • Review OOP • Objek-objekdi Java: • Screen (Form, Alert, Textbox, List) + Ticker • Image, TextField, ChoiceGroup, Command • CommandListener • Menghubungkan antar class • TEORI: • OOP, MIDLet, J2ME, CDC, CLDC, JVM, KVM, JDK, SDK By Fandi Susanto S.Si

  7. Studi Plan Sesudah UTS • Menggunakan Canvas • Menggambar di Canvas • Menggunakan Font dan Image di Canvas • RMS (Record Management System) • Plus Plus: • Musik • SMS • Delay (thread.sleep) • Koneksi ke webserver (PHP based) (GET, POST, FILES) • Kamera • Video, Memory Card, Bluetooth By Fandi Susanto S.Si

  8. About Java Java adalah suatu bahasa pemrograman yang awalnya dikembangkan oleh James Gosling di perusahaan Sun Microsystems (saat ini cabang dari Oracle Corporation). Java ditujukan agar para pengembang software dapat “Write Once Run Anywhere”. Duke Maskot Java Logo Java By Fandi Susanto S.Si

  9. Sejarah Java • James Gosling, Mike Sheridan, dan Patrick Naughton memulai proyek bahasa pemrograman java pada bulan Juni 1991. Java pertama kali didesain untuk televisi interaktif. Bahasa ini pertama kali dinamakan Oak berdasarkan pohon oak yang berada di luar kantornya Gosling. Nama itu kemudian berubah menjadi Green, dan kemudian Java, yang diambil secara sembarang. By Fandi Susanto S.Si

  10. Java Virtual Machine Bahasa pemrograman Java tidak langsung dicompile ke bahasa mesin, tetapi dicompile dulu ke dalam java bytecode . Java bytecode ini diterjemahkan lagi oleh Java Virtual Machine ke dalam machine code. Pengguna program Java biasanya menggunakan Java Runtime Environment (JRE) untuk menjalankan aplikasi java. Sedangkan untuk pengembang program biasanya digunakan JDK (Java Development Kit) yang sudah mencakup JRE di dalamnya. By Fandi Susanto S.Si

  11. About Java • Saat ini (2011) Java terdiri dari: • Java EE (Enterprise Edition) • Digunakan dalam pengembangan web.. • Java SE (Standard Edition) • Digunakan dalam pengembangan aplikasi desktop. • Java ME (Micro Edition) • Digunakan untuk pengembangan aplikasi mobile atau perangkat embedded lainnya. • Java Card • Digunakan untuk perangkat yang lebih kecil seperti ATM dan SIM Card. • Catatan: Java EE, Java SE, Java ME sebelumnya disebut dengan J2EE, J2SE dan J2ME. By Fandi Susanto S.Si

  12. About Java Catatan: java != javascript By Fandi Susanto S.Si

  13. Java ME (Micro Edition) Java ME pada mulanya dibuat untuk menangani keterbatasan terkait dengan pembuatan aplikasi pada perangkat yang kecil. Dengan itu, Sun membuat fondasi Java ME agar sesuai dengan lingkungan (perangkat) yang terbatas dan memungkinkannya untuk berjalan di perangkat-perangkat yang kecil dengan memori, tampilan dan tenaga listrik yang terbatas. Seiring dengan waktu, platform Java ME terbagi menjadi dua konfigurasi. Satu untuk perangkat mobile yang kecil (CLDC), dan yang satunya lagi untuk perangkat mobile yang lebih canggih seperti smartphone (CDC). By Fandi Susanto S.Si

  14. CLDC dan CDC. Konfigurasi untuk perangkat yang kecil disebut dengan CLDC (Connected Limited Device Configuragion) Sedangkan untuk perangkat yang lebih canggih, digunakan CDC (Connected Device Configuration) By Fandi Susanto S.Si

  15. MIDP MIDP (Mobile Information Device Profile) adalah elemen kunci dari Java ME. Ketika digabungkan dengan CLDC, MIDP menyediakan suatu Java Runtime Environment untuk perangkat-perangkat mobile saat ini, seperti handphone dan PDA. Spesifikasi MIDP ditetapkan melalui Java Community Process (JCP) oleh sekelompok pakar dari lebih dari 50 perusahaan. CLDC dan MIDP menyediakan fungsi-fungsi utama yang dibutuhkan perangkat mobile. Pengembang program yang menggunakan MIDP cukup menulis kode satu kali dan menjalankannya di beragam perangkat mobile. By Fandi Susanto S.Si

  16. Persiapan membuat program • Tugas: • Install JDK 6u23 • Install Java ME SDK 3.o (BERAT) • Jalankan Java ME PlatForm SDK 3.0 • Atau: • Install JDK 6u23 (atau versi lain 5 ke atas) • Install WTK 2.3.2 • Jalankan (tak perlu install) Eclipse 332 • Beli bluetooth dongle jika perlu. • Catatan: • Dokumentasi class-class (properties, method dan contoh program) yang dipakai di Java ME dapat diakses lewat start menu di folder WTK atau Java ME SDK By Fandi Susanto S.Si

  17. Object Oriented Programming Abstraction 1 Classes and Objects Properties and Methods Encapsulation Access modifier this dan super By Fandi Susanto S.Si

  18. Abstraction 1 Abstraction atau dalam bahasa indonesia abstraksi, dalam Object Oriented Programming (OOP) / Pemrograman Berorientasi Objek (PBO) memiliki dua makna. Yang pertama adalah: "proses pembentukan konsep dalam mengenali ciri-ciri tertentu suatu individu, dan menciptakan suatu konsep berdasarkan ciri tersebut.“ http://en.wikipedia.org/wiki/Abstraction 01-09-10 (Abstraction used in philosophy) Makna yang kedua to be continued. By Fandi Susanto S.Si

  19. Abstraction 1 By Fandi Susanto S.Si

  20. Abstraction 1 By Fandi Susanto S.Si

  21. Class dan Object Dalam OOP, dikenal istilah Class dan Object. Dalam bahasa Indonesia: kelas dan objek. Dalam OOP, program dibuat sedekat-dekatnya dengan dunia nyata. Misalkan program mengenai mobil, maka akan dibuat objek mobil. Atau misalkan dalam pembuatan game, bisa dibuat objek pemain, karakter, peta, musik, NPC. Objek bisa juga berupa objek pendukung seperti kotak dialog, cursor, control panel, keyboard control. By Fandi Susanto S.Si

  22. Class dan Object Kelas sering disebut sebagai blueprint dari objek. Jika dibandingkan dengan variabel, maka kelas merupakan tipe data, dan objek merupakan variabel. Dari satu kelas dapat dibuat banyak objek. Misalkan dari kelas mobil, dapat dibuat mobilAndri, mobilBudi, mobilSanti, mobilSinta. Atau dari kelas pemain, dapat dibuat pemain1, pemain2, pemain3. Jadi, dalam OOP, programmer melakukan abstraction menghasilkan class dan objek dalam program. By Fandi Susanto S.Si

  23. Class dan Object By Fandi Susanto S.Si

  24. Properties dan Method Setiap objek dapat memiliki property dan method. Atau state dan behavior. Property atau state adalah sifat atau kondisi suatu objek, misalnya mobilA.warna, mobilA.kecepatanMax, mobilA.bensin. Method atau behavior adalah perilaku suatu objek. Biasanya berupa suatu fungsi. Misalkan mobilA.maju(3) atau mobilB.isiBensin(10); By Fandi Susanto S.Si

  25. Encapsulation Encapsulation adalah suatu konsep mengenai penggabungan property atau method ke dalam suatu objek. Suatu objek adalah seperti sebuah kapsul yang berisi berbagai macam obat-obatan di dalamnya. Ketika kita mendeklarasikan suatu objek, misalnya objek mobil, maka objek itu otomatis memiliki (misalkan) warna, kecepatanMax, kapasitas bensin, merk dan sebagainya. Dan mobil itu juga dapat mengisibensin, maju, mundur, dihidupkan atau dimatikan. By Fandi Susanto S.Si

  26. Encapsulation • Tujuan dari enkapsulasi adalah: • Mengelompokkan sejumlah data (property) ke dalam objek • Melindungi property dan metode di dalam kelas agar tidak sembarangan diakses oleh kelas lain. (Misalkan: objTextbox.length = -2) • Enkapsulasi juga berfungsi sebagai penyederhanaan. Misalkan, untuk maju, sebuah mobil harus menjalani proses mesin 4 tak (injeksi, kompresi, bakar, buang), tetapi pengendara hanya tinggal menginjak pedal gas saja. By Fandi Susanto S.Si

  27. Access modifier • Access modifier mengatur pengaksesan suatu variabel. • Ada tiga jenis access modifier: • private (hanya bisa diakses oleh fungsi yang ada di dalam class itu sendiri). • public (bisa diakses dari manapun). • protected (hanya bisa diakses dari fungsi di dalam kelas itu sendiri, atau fungsi di dalam kelas lain yang mewarisi kelas tersebut) By Fandi Susanto S.Si

  28. Getter dan setter Property jumlah (private) tidak dapat diakses secara langsung pada fungsi main. Untuk mengakses property ini, biasa digunakan getter method dan setter method. Setter method berguna untuk mengeset nilai ke suatu property/member private. Biasanya ditambahkan pengaturan khusus pada method ini. Misalkan jumlah tidak bisa lebih kecil dari nol. Karena member private tidak bisa diakses dari luar kelas, maka disediakan method getter untuk mengakses member tersebut. By Fandi Susanto S.Si

  29. This dan super Suatu objek merujuk pada diri sendiri dengan identifier "this". Misalkan di dalam suatu class kita menyebutkan this.addCommand(cmdExit), maka this di situ akan merujuk pada kelas dimana kode itu ditulis. Sedangkan keyword super digunakan untuk merujuk pada class orangtua. Misalkan suatu class MidNotepad merupakan turunan dari kelas MIDlet, maka keyword super di dalam class MidNotepad akan merujuk pada class MIDlet. By Fandi Susanto S.Si

  30. Object Oriented Programming Static member and Function Constructor and Destructor Inheritance Polymorphism Abstraction 2 (a.k.a. Abstract Class) Composition and Aggregation By Fandi Susanto S.Si

  31. Static member and function Jika suatu field di dalam suatu kelas didefinisikan dengan keyword static di depannya, maka field tersebut akan digunakan bersama-sama oleh semua objek kelas tersebut. Member static sering dipakai untuk mendeklarasikan konstanta pada suatu kelas. Field static bisa diakses tanpa membuat suatu objek (diakses langsung dari kelas). By Fandi Susanto S.Si

  32. Constructor Constructor adalah suatu fungsi yang dipanggil setiap kali suatu objek diwujudkan (instantiated) / dibuat. Untuk membuat constructor suatu class, kita mendefinisikan fungsi dengan nama yang sama dengan nama kelasnya. Constructor dapat berjumlah lebih dari satu dengan argumen/parameter yang berbeda (polymorpism). By Fandi Susanto S.Si

  33. Destructor Destructor adalah suatu fungsi yang dipanggil ketika suatu objek kelas tersebut dihancurkan/dibuang By Fandi Susanto S.Si

  34. Inheritance Inheritance atau pewarisan adalah suatu konsep dimana suatu kelas anak mewarisi sifat-sifat dari suatu kelas lain (kelas induk). Base Class BINATANG REPTIL MAMALIA Class Turunan Class Turunan By Fandi Susanto S.Si

  35. Class MANUSIA (STATE) berat tinggi usia (BEHAVIOUR) Makan() Minum() Menua() Bekerja() pewarisan   Class PRIA (STATE) memiliki_organ_ kelamin_pria (BEHAVIOUR) Class WANITA (STATE) memiliki_organ_ kelamin_wanita (BEHAVIOUR) melahirkan() menyusui() Contoh instance/objek  maria debra ruth david rudi robert Gambar : Class & Objek Inheritance By Fandi Susanto S.Si

  36. Polymorphism Polymorphism (poly = banyak, morph = berubah bentuk) Dalam OOP, konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu objek melakukan suatu aksi/tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda. Dalam konsep yang lebih umum, Polymorphism disebut dalam istilah : satu interface, banyak aksi. contoh : Mobil, terdiri dari berbagai merk, namun semuanya memiliki interface kemudi yang sama (stir kemudi, tongkat transmisi, pedal gas dan rem). Jika anda dapat mengemudikan satu mobil saja, dapat dipastikan juga dapat mengemudi berbagai mobil. By Fandi Susanto S.Si

  37. Polymorphism By Fandi Susanto S.Si

  38. Abstraction 2 Di dalam OOP, dikenal juga istilah abstract class. Makna kedua dari abstraction adalah penggunaan abstract class. Abstract class adalah class yang tidak dapat di-instantiate. By Fandi Susanto S.Si

  39. Thank You For Your Attention • Special Thanks: • Yoannita S.Kom (dan para pendahulunya) atas ilmu dan materinya. • Reminders: • Dokumentasi class-class (properties, method dan contoh program) yang dipakai di Java ME dapat diakses lewat menu documentation pada start menu di folder WTK atau Java ME SDK. (StartJava(TM) ME Platform SDK 3.0Documentation) (StartSun Java (TM) Wireless Toolkit 2.5.2 for CLDC Documentation) By Fandi Susanto S.Si

More Related