Showing posts with label Programming. Show all posts
Showing posts with label Programming. Show all posts

Membuat Project Sederhana Dengan Spring Roo

Pada artikel sebelumnya kita sudah mengenal apa itu Spring Roo dan cara menginstall nya. Pada artikel kali ini saya akan menjelaskan bagaimana membuat project sederhana dengan menggunakan Spring Roo. Seperti yang telah saya jelaskan sebelumnya, untuk membuat project ini dapat menggunakan command line atau Roo Shell pada IDE. Untuk IDE dapat digunakan Eclipse atau Spring Tool Suite (STS), pada Eclipse harus install dulu plugin STS nya yang tersedia di market Eclipse. Semua terserah anda :D. Tapi disini saya menggunakan command line (cmd) untuk mempermudah saja.

Baik, ikuti langkah-langkah berikut: :D
  • buka cmd
  • buat direktori dengan nama student, pindah ke direktori tersebut (terserah mau buat di drive mana)
  • ketikkan 'roo'.

Buat Project

Pada tahap ini anda dapat menggunakan TAB untuk auto complete command, atau 'hint' untuk mengetahui option manual perintah. Ketikkan command perintah berikut,
  • project --topLevelPackage com.putrajatim.student
  • persistence setup --provider HIBERNATE --database H2_IN_MEMORY

Buat Entity Class

Berikutnya buat kelas entitas beserta field-fieldnya. Ketikkan perintah berikut,
  • entity jpa --class ~.domain.Student (tanda ~ menunjukkan top level package yakni com.putrajatim.student)
  • field string --fieldName nama
  • field number --fieldName nim --type java.lang.Long
  • field date --fieldName tanggalLahir --type java.util.Date
  • controller all --package ~.web (perintah tersebut secara otomatis akan membuat Spring MVC Web UI, selain itu perintah ini sebenarnya sudah tidak digunakan lagi dan akan segera di disable, penggantinya adalah web mvc setup dan diikuti dengan web mvc all --package)

Run Project

Setelah melalui langkah-langkah diatas, selanjutnya project  bisa di deploy ke konfigurasi Tomcat atau Jetty Web Container, dengan mengetikkan perintah 'mvn tomcat:run' atau 'mvn jetty:run' (mvn artinya maven). Pada percobaan ini saya menggunakan Tomcat. Sebelumnya, keluar dulu dari shell 'roo' dengan ketik command quit, karena untuk menjalankannya harus di direktori project.
  • ketikkan mvn tomcat:run
 
  • sekarang, ketikkan alamat yang keluar di cmd di web browser http://localhost:8080/student 

Akses Project
  • tampilan awal di web browser

  • create new student (inputkan beberapa student)
  • kemudian pilih menu List All Students untuk melihat daftar student yang sudah diinput

Akhirnya project sederhana dengan Spring Roo telah selesai dibuat :). Dengan menggunakan Spring Roo, project aplikasi yang anda kerjakan berminggu-minggu bahkan berbulan-bulan dapat dikerjakan hanya dalam beberapa minggu saja. Project diatas hanya sekedar contoh saja, anda dapat membuat yang lebih baik, lebih bagus, dan lebih canggih pastinya dengan mengopreknya.hehe...
Akhir kata, maafkan apabila masih terdapat kesalahan. Namanya juga belajar... :D

Oke, see you later. :)))

Mengenal Spring Roo

Ikatlah ilmu dengan menuliskannya mempostingnya, biar kalau sewaktu-waktu lupa bisa melihat blog sendiri. :D

Ada yang sudah tahu Spring Roo? Bagi anda yang sudah malang melintang di dunia pemrograman terutama di bahasa Java pastinya sudah tahu. Kalau belum tahu, baiknya anda cari tahu di google (Laah, ini barusan juga nyari di google ketemu blog ini).hehe...

Disini saya akan menjelaskan sedikit tentang Spring Roo dan cara install Spring Roo. Artikel ini pas buat yang baru belajar Spring Roo, sama seperti saya juga baru belajar membuat project Spring Roo.hehe...

Spring Roo adalah sebuah tool pengembangan aplikasi generasi lanjut secara cepat yang berbasiskan open source untuk developer java. Spring Roo memungkinkan developer untuk membangun best-practice, high-quality, lock-in-free enterprise applications dalam beberapa menit saja (sebuah pekerjaan pengembangan aplikasi yang dikerjakan selama berminggu-minggu dapat dilakukan hanya dalam beberapa hari saja).

Sekedar informasi kalau kata Roo diambil dari kata Kanga"roo" (English) / Kanggu"roo" dalam bahasa Indonesia.

Arsitektur Spring Roo

Project yang dibuat dengan Spring Roo merupakan standar Java enterprise applications menggunakan Spring Framework. Ini artinya anda akan menemukan semua tipe artifak seperti Java source files, XML configuration files, properties files dan view artifacts seperti jspx files di dalam project anda.

Selain konfigurasi otomatis Maven dalam membangun artifacts, logging dan dependency injection, Roo juga memungkinkan Anda untuk menghubungkan atau dengan mudah membuat database backend baru. Hal tersebut dapat dilakukan dengan otomatis mengkonfigurasi Spring application context untuk database anda dan object relational mapping (ORM) tool melalui standar Java Persistence API (JPA). Manajemen transaksi juga dikonfigurasi secara out of the box. Selain itu,dapat mengatur JUnit integration tests, Web front-ends dan project layers yang lainnya.


Pendekatan Unik dari Spring Roo

Salah satu manfaat utama menggunakan Spring Roo adalah integrasi yang mendalam dari fitur AspectJ inter-type declaration (ITD). Hal ini memungkinkan Roo untuk secara otomatis menghasilkan dan memelihara boiler-plate code seperti metode getter dan setter dalam sebuah unit kompilasi yang berbeda ( .aj file). File AspectJ ITD disimpan secara terpisah dari kode java normal yang akan anda tulis sebagai developer sehingga Roo dapat mempertahankan siklus hidup file dan content sepenuhnya independen atau terbebas dari apa pun yang anda lakukan untuk file java. File java anda tidak perlu melakukan sesuatu yang tidak wajar seperti referensi generated ITD file dan seluruh proses benar-benar transparan.

Instalasi Spring Roo

Untuk memulai instal Spring Roo, install terlebih dahulu mavennya. Tutorial untuk install maven dapat dicari di mbah google.hehe...
lanjut install Spring Roo, silakan download dulu dari link ini pilih yang "Just take me to the download page".

Versi terakhir saat saya tulis artikel ini adalah versi spring-roo-1.2.3. Setelah download, unzip terlebih dahulu dan letakkan di direktori yang anda pilih (kalau saya di direktori C:\) terus setting PATH ke folder "bin" dalam folder Roo.


Kini, anda sudah bisa memulai membuat project dengan Spring Roo. Membuat project Spring Roo dapat dilakukan di command line atau di Roo Shell pada IDE. Untuk yang pemula saya sarankan dengan menggunakan command line, karena menurut saya lebih mudah.

Setelah artikel ini akan saya posting juga cara membuat project sederhana dengan Spring Roo.


Belajar Membuat Aplikasi Android

Pada artikel ini saya akan membuat sebuah aplikasi android sederhana, yakni "Hello World". Bagi yang udah jago pemrograman pastinya tau dong kalau hal pertama kali dalam belajar ngoding alias pemrograman pasti nampilin "Hello World" :D

Disini saya asumsikan anda sebagai pemula dalam belajar pemrograman Android, termasuk saya juga. :D.
Untuk memulai membuat sebuah aplikasi android yang anda butuhkan paling utama adalah environment nya. Pada aplikasi ini saya menggunakan IDE Eclipse. Nah, bagi yang sudah punya eclipse pastinya sudah tau dong untuk memulai membuat program Android itu yang dibutuhkan apa aja? yups SDK ama plugin ADT, tinggal cari aja di gugel udah ada. :)

untuk yang pemula silahkan kunjungi link berikut http://developer.android.com/sdk/index.html, di link tersebut sudah disediakan Eclipse bundling dengan SDK dan ADT. Anda tinggal download, ekstrak dan siap mulai belajar. :)

Baik, untuk memulai membuat aplikasi yang supeer sederhana ini #lebay adalah klik File pada Eclipse dan pilih New Android Project, kalau Android Project tidak tampil, klik Other dan pilih Android Application Project seperti gambar di bawah ini.


Apabila muncul jendela AVD, pilih sesuai kebutuhan anda, disini saya pakai AVD (Android Virtual Device) atau emulator 4.1.2.
Jangan lupa kasih nama aplikasi tersebut, misalnya "AplikasiHalo"

Klik next terus sampai ketemu tombol finish, dan klik. :)
Untuk menjalankannya, klik kanan pada project dan Run As Android Application


hasil akhirnya seperti tampilan berikut.
Cukup simple kan...

Untuk memperdalam tentang aplikasi Android silakan anda cari referensi maupun sumber-sumber di internet. Sudah banyak ilmu tentang pemrograman Android dishare di internet, atau kalau mau anda juga bisa mencari refrensi lewat buku, terdapat juga banyak buku yang membahas tentang pemrograman Android. Intinya jangan malas untuk belajar, belajar, dan terus belajar. :D



Apa Itu Spring Framework



Spring merupakan sebuah framework (kerangka kerja) yang digunakan untuk membangun sebuah aplikasi Enterprise. Spring termasuk framework yang lightweight (ringan) untuk mendukung secara penuh dalam pengembangan aplikasi Enterprise siap pakai.

Spring dapat digunakan untuk melakukan pengaturan deklarasi manajemen transaksi, remote access dengan menggunakan RMI atau layanan web lainnya, fasilitas mailing, dan beragam opsi untuk pengaturan data ke database. Spring juga memungkinkan kita menggunakan hanya modul-modul tertentu sehingga kita tidak usah menggunakan semua modul spring dalam aplikasi apabila tidak diperlukan.

Fitur-fitur dari Spring Framework :
  1. Transaction Management : Spring framework menyediakan sebuah layer abstrak yang generik untuk manajemen transaksi, sehingga memudahkan para developer dalam melakukan manajemen transaksi.
  2. JDBC Exception Handling : layer abstrak JDBC menawarkan exception yang bersifat hierarki sehingga memudahkan penanganan error.
  3. Integration with Hibernate, JDO, and iBatis : Spring menawarkan layanan integrasi terbaik dengan Hibernate, JDO dan iBatas.
  4. AOP Framework : Spring merupakan framework AOP Terbaik yang pernah ada.
  5. MVC Framework : Spring hadir dengan framework aplikasi web MVC, yang dibangun di atas inti Spring. Spring merupakan framework yang sangat fleksibel dalam pengaturan strategi interface, dan mengakomodasi beberapa teknologi view seperti JSP, Velocity, Tiles, iText, dan POI.
Arsitektur Spring :
  1. Spring AOP, Salah satu komponen utama Spring adalah AOP Framework, AOP framework digunakan untuk : a) Untuk menyediakan layanan Enterprise, terutama sebagai pengganti EJB. Layanan terpenting dalam layanan ini adalah untuk mendekralitf manajemen transaksi, yang telah disediakan dalam abstraksi spring transaction. b) Untuk memungkinkan pengguna dalam menerapkan AOP dalam penggunaan OOP.
  2. Spring ORM, Spring ORM berhubungan dengan akses database dan menyediakan lapisan layer terintegrasi dengan ORM yang populer termasuk JDO, Hibernate dan iBatis.
  3. Spring Web, Merupakan bagian dari modul pengembangan Web Spring termasuk Spring Web MVC.
  4. Spring DAO, DAO (Data Access Object) mendukung standarisasi akses data yang menggunakan teknologi seperti JDBC, Hibernate dan JDO.
  5. Spring Context, Paket ini didasari pada paket beans untuk menambah dukungan sumber pesan dan untuk pola desain Observer, dan kemampuan untuk mendapatkan sumber daya yang konsisten dengan menggunakan API.
  6. Spring Web MVC, Menyediakan implementasi MVC untuk aplikasi web.
  7. Spring Core, Paket Spring Core ini merupakan komponen paling penting dari Spring Framework.
    Komponen ini menyediakan fitur Dependency Injection. BeanFactory memisahkan dependensi seperti inisialisasi, pembentukan dan akses object dari logika program anda.
Diagram Berikut menggambarkan arsitektur dari Spring :


sumber

Program Wartel dengan Bahasa C

Hhhmmmm......, setelah sekian lama tidak ngeblog, akhirnya ngeblog juga...:-))
Disini, saya akan membuat contoh program menu berulang untuk wartel. Meskipun sekarang wartel di Indonesia sudah jarang sekali atau bahkan sudah tidak ada mungkin, karena sudah tergantikan dengan teknologi baru yaitu handphone.
Namun tidak ada salahnya mengetahui program dari wartel, hal nilah yang membuat saya bertanya-tanya sewaktu kecil, bagimana ya kok bisa menghitung tarif pulsa, waktu, dan lainnya.
Dalam program ini saya menggunakan bahasa C, bahasa yang fleksibel tapi cukup sulit untuk menguasainya, dan juga menggunakan compiler Borland C/C++. Anda juga bisa menggunakan compiler yang lainnya.
Program ini inputannya kode wilayah, nomor telefon, jam mulai dan jam selesai.
Menu 1 : melihat informasi percakapan
Menu 2 : menghitung durasi lama bicara
Menu 3 : menghitung biaya percakapan (berdasarkan wilayah)
Menu 4 : keluar
berikut ini programnya....

#include
#include

main()
{
typedef struct { int jj;
int mm;
int dd;
} jam;
jam w1, w2, w3;
int menu, i;
int kode;
int nomor;
long int totaldetik1, totaldetik2, durasi;
int lamapulsa, tarifpulsa;
int pulsa, biaya;

printf ("<---------------------.::Menu Wartel::.--------------------->\n");
printf ("\nMenu 1 : Melihat informasi percakapan");
printf ("\nMenu 2 : Menghitung durasi lama bicara");
printf ("\nMenu 3 : Menghitung biaya percakapan");
printf ("\nMenu 4 : Keluar\n");
printf ("\nDaftar Kode Wilayah\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\n");
printf ("Kode\tWilayah Kota\tTarif Tiap Pulsa\tLama Pulsa\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\n");
printf ("021\tJakarta\t\tRp 150\t\t\t1 menit");
printf ("\n0751\tPadang\t\tRp 250\t\t\t30 detik");
printf ("\n0737\tMedan\t\tRp 375\t\t\t25 detik");
printf ("\n0912\tBalikpapan\tRp 415\t\t\t20 detik");
printf ("\n0981\tTernate\t\tRp 510\t\t\t17 detik\n");
for (i=0;i<=60;i++)
{ printf ("-"); }
printf ("\nMasukkan kode wilayah yang dituju = 0"); scanf ("%d",&kode);
printf ("\nNomor Telepon tujuan = "); scanf ("%d",&nomor);
printf ("\nJam mulai percakapan\n");
printf ("Jam\t= "); scanf ("%d",&w1.jj);
printf ("Menit\t= "); scanf ("%d",&w1.mm);
printf ("Detik\t= "); scanf ("%d",&w1.dd);
printf ("\nJam akhir percakapan\n");
printf ("Jam\t= "); scanf ("%d",&w2.jj);
printf ("Menit\t= "); scanf ("%d",&w2.mm);
printf ("Detik\t= "); scanf ("%d",&w2.dd);
do
{
pilih:
printf ("\nPilih salah satu menu dari daftar diatas = "); scanf("%d",&menu);

switch (menu)
{
case 1 : printf ("\nNomor telepon yang anda tuju adalah 0%d - %d",kode,nomor);
printf ("\nJam mulai percakapan %d : %d : %d",w1.jj,w1.mm,w1.dd);
printf ("\nJam akhir percakapan %d : %d : %d",w2.jj,w2.mm,w2.dd);
break;
case 2 : totaldetik1 = (w1.jj*3600) + (w1.mm*60) + w1.dd;
totaldetik2 = (w2.jj*3600) + (w2.mm*60) + w2.dd;
durasi = totaldetik2 - totaldetik1;
printf ("\nDurasi anda melakukan percakapan adalah %d detik\n",durasi);
break;
case 3 : if (kode == 21){lamapulsa = 60;
tarifpulsa = 150;}
if (kode == 751){ lamapulsa = 30;
tarifpulsa = 250;}
if (kode == 737){ lamapulsa = 25;
tarifpulsa = 375;}
if (kode == 912){ lamapulsa = 20;
tarifpulsa = 415;}
if (kode == 981){ lamapulsa = 17;
tarifpulsa = 510;}
totaldetik1 = (w1.jj*3600) + (w1.mm*60) + w1.dd;
totaldetik2 = (w2.jj*3600) + (w2.mm*60) + w2.dd;
durasi = totaldetik2 - totaldetik1;
pulsa = durasi/ lamapulsa;
biaya = pulsa*tarifpulsa;
printf ("\nBiaya percakapan anda adalah Rp. %d\n",biaya);
break;
case 4 : printf ("\n<---------.::Terima Kasih Telah Menggunakan Jasa Layanan Kami::.--------->");
break;
}
} while (menu<=3);
if (menu > 4) { printf ("...::Maaf anda salah memasukkan menu::...");
printf ("\n<------Silahkan pilih menu kembali------>\n");
goto pilih; }
getch();
}

Selamat mencoba.....

Variabel Pada Pemrograman C

Variabel adalah suatu pengenal di dalam program yang berguna untuk menyimpan nilai dari tipe data tertentu. Adapun nilai yang disimpan bersifat dinamis, artinya nilai tersebut dapat diubah selama program berjalan. Untuk menggunakan variabel, tentu kita harus mendeklarasikannya terlebih dahulu agar kompilator dapat mengenalinya. Brikut ini bentuk umum untuk proses pendeklarasian variabel didalam bahasa C.

tipe_data nama_variabel;

Tipe data disini berguna untuk memberitahu kepada kompilator bahwa variabel tersebut hanya dapat menampung nilai sesuai dengan tipe data tertentu yang didefinisikan ataupun tipe lain yang kompatibel.

Berikut contoh pendeklarasian beberapa buah variabel dengan tipe data yang berbeda.

int x; /*Mendeklarasikan variabel x dengan tipe data int*/
float y; /*Mendeklarasikan variabel y dengan tipe data float*/
char z; /*Mendeklarasikan variabel z dengan tipe data char*/

Bahasa C mengizinkan kita untuk melakukan pendeklarasian beberapa buah variabel dengan tipe data yang sama dalam satu baris, misanya seperti berikut.

int a, b, c; /*Mendeklarasikan variabel a, b, dan c yang bertipe int*/
double x, y, z; /*Mendeklarasikan variabel x, y dan z yang bertipe double*/