Minggu, Februari 15, 2015

Overview Framework

Jadi Framework apa yang harus kita pilih?

Mari kita bahas sedikit beberapa framework yang ada.



Struts merupakan aplikasi framework open source yang di design untuk membantu para developer dalam membangun arsitektur aplikasi berbasis pada Model-View-Controller (MVC) , dimana design MVC sudah merupakan standard umum dalam membangun aplikasi Web anda dengan penggunaaan servlet Java dan Java Server Pages (JSP) sebagai teknologinya.
Namun Struts sudah sangat usang'





Tapestry adalah sebuah framework berbasis komponen yang digunakan untuk membuat aplikasi berbasis web dengan bahasa pemrograman Java. Tapestry sendiri dibangun berdasarkan standar API Java Servlet, sehingga dapat bekerja dengan berbagai macam servlet container atau application server seperti misalnya Tomcat, Jetty, JBoss, dll.





Wicket Framework ringan yang menawarkan kemudahan  dalam hal konfigurasi



Google Web Toolkit adalah framework pengembangan perangkat lunak Java yang bersifat open source. Web Toolkit memungkinkan para pengembang web untuk membuat aplikasi-aplikasi Ajax dalam Bahasa pemrograman Java. Aplikasi ini dikembangkan berlisensi Apache License versi 2.0. Google Web Toolkit adalah toolkit yang digunakan untuk membangun dan mengoptimalkan aplikasi dasar browser yang kompleks. Tujuannya adalah untuk memungkinkan pengembangan aplikasi web yang produktif berkinerja tinggi sehungga pengembang tidak harus menjadi ahli di browser quirks, XMLHttpRequest, dan JavaScript. Google Web Toolkit digunakan oleh banyak produk di Google, termasuk Google Wave dan versi baru AdWords. Toolkit ini merupakan sumber terbuka (open source), gratis, dan digunakan oleh ribuan pengembang di seluruh dunia.



Java Server Faces (JSF) adalah salah satu teknologi terbaru dalam pengembangan aplikasi web. Teknologi ini distandarisasi oleh Sun sehingga dukungan terhadapnya akan disediakan para vendor server.



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.

Label:

Minggu, November 30, 2014

Algoritma Dijkstra (Review) Dan Implentasinya

Menurut Artikel yang terdapat pada posting di Wikipedia  tentang Algoritma Dijkstra, Algoritma Dijkstra adalah Sebuah Algoritma Rakus (Greedy) yang dipakai untuk untuk memecahkan permasalahan dalam pencarian terpendek untuk sebuah gaph berarah dengan bobot-bobot sisi yang bernilai tak negatif. Algoritma Dijkstra di temukan oleh seorang ilmuan komputer yang bernama Edsger Dijkstra.

Animasi Dijkstra


Algoritma  Dijkstra  merupakan  salah satu algoritma  yang efektif dalam memberikan lintasan terpendek dari suatu lokasi ke lokasi yang lain. Prinsip dari algoritma Dijkstra dengan  pencarian  dua lintasan  yang mempunyai bobot  paling  kecil. Algoritma  Dijkstra  memiliki  iterasi  untuk mencari titik yang jaraknya dari titik awal adalah paling pendek. Pada setiap iterasi, jarak titik yang  diketahui (dari titik  awal)  diperbarui  bila  ternyata  didapat  titik  yang  baru  yang memberikan jarak terpendek. Syarat algoritma ini adalah bobot sisinya yang harus non-negatif, 


Properti Algoritma Djikstra

  • Matriks Ketetangga M [mij] mij = bobot sisi (i,j) ;
    pada graf tak berarah mij = mji
    mii = 0 jikatidak ada sisi dari simpul i ke simpul j
  • 2.Larik S = [si] yang dalam hal ini,
    si = 1, jika simpul i termasuk ke dalam lintasan terpendek
    si = 0, jika simpul i tidak termasuk ke dalam lintasan terpendek
  • Larik / tabel D = [di] yang dalam hal ini, di = panjang lintasan dari simpul awal s ke simpul I.



Pseducode
function Dijkstra(Graph, source):
for each vertex v in Graph:                             // Initializations
dist[v] := infinity ;                                   // Unknown distance function from 
                                                        // source to v
previous[v] := undefined ;                              // Previous node in optimal path
end for                                                 // from source

dist[source] := 0 ;                                     // Distance from source to source
Q := the set of all nodes in Graph ;                    // All nodes in the graph are
                                                        // unoptimized - thus are in Q
while Q is not empty:                                   // The main loop
u := vertex in Q with smallest distance in dist[] ;     // Start node in first case
remove u from Q ;
if dist[u] = infinity:
break ;                                                 // all remaining vertices are
end if                                                 // inaccessible from source
 
for each neighbor v of u:                              // where v has not yet been 
                                                       // removed from Q.
alt := dist[u] + dist_between(u, v) ;
if alt < dist[v]:                                    // Relax (u,v,a)
dist[v] := alt ;
previous[v] := u ;
decrease-key v in Q;                                 // Reorder v in the Queue
end if
end for
end while
return dist;


Implementasi Algoritma Dijkstra Dengan Java 



sumber :
http://id.wikipedia.org/wiki/Algoritma_Dijkstra
http://sraportofolio.blogspot.com/2013/03/algoritma-dijsktra.html
http://affanw.blogspot.com/2013/05/algoritma-dijkstra.html

Label:

Tugas Teory Graph || Implementasi Algoritma Dijkstra Di Java

Setelah lama tidak coding java karena di kampus sibuk dengan praktek pemrograman visual basic yang kurang saya sukai, Namun begitu ada tugas dari dosen Teory Graph untuk mengimplementasikan Algoritma Dijkstra pada sebuah program, Kesempatan ini saya gunakan untuk mengimplementasikannya di Java. Pada awalnya saya sangat kesulitan pengimplemantasian nya di java (Maklum Newbie) :D



Source Code 

Label:

Senin, Oktober 06, 2014

MELAKUKAN PERULANGAN DENGAN DO (WHILE)

Di kondisi seperti apa kita harus menggunakan perulangan do while? Iterasi dengan do while adalah iterasi yang minimal akan di lakukan satu kali pengulangan setelah itu baru di cek kondisinya apakah akan di lakukan pengulangan lagi atau kah berhenti atau keluar dari perulangan. Bagaimana Struktur penulisan iterasi do while? Cara penullisan perulangan do while hampir sama dengan penulisan while, namun bedanya adalah perulangan while di awali dengan do di ikuti oleh kurawal dan di akhiri dengan while dan pengecekan kondisi. Berikut contoh nya:
do{

}while(kondisi);
Perhatikan contoh berikut:
Int i = 0;
boolean kondisi = true;

do{

i++;

System.out.println(“baris ke “+ i);

If(i >= 10){
Kondisi = false;
}

}while(kondisi);  

Dari kode di atas maka akan melakukan pe ngeprintnan sebanyak i = 10 dan akan di lakukan minimal 1 kali perulangan.

Label:

Selasa, Agustus 19, 2014

Belajar Perulangan Menggunakan While Di Java

Artikel sebelumnya mendokumentasikan bagaimana saya belajar perulangan menggunakan for di Java, Dan sekarang seperti yang sudah sya katakan sebelumnya bahwa pada artikel ini saya sedang belajar perulangan dengan menggunakan while, While biasa di gunakan untuk membuat sebuah perulangan yang di gunakan saat kita tidak tahu berapa kali perulangan akan di eksekusi, namun kita mengetahui   kapan perulangan akan berhenti dari sebuah kondisi.Bentuk sintaks while sangat sederhana berbeda dengan perulangan menggunakan for. Perulangan while hanya memerlukan sebuah parameter boolean true atau false selama kondisi ini masih true maka perulangan akan terus di eksekusi. dan sebaliknya.



boolean ulang = true;
while(ulang){
System.out.println("perulangan akan di lanjut selama nilainya masih true");
}


Deangan  Melihat kode di atas kita bisa mengetahui bagaimana sih cara membuat sebuah perulangan dengan menggunakan while. Sintaks while di awali dengan keyword while lalu di ikuti oleh sebuah kondisi di dalam kurung buka ddan kurung tutup (kondisi).setelah itu ada pasangan kurung kurawal buka dan tutup nyang mana di dalamnya adalah kode yang akan di eksekusi selama perulangan berlanjut.

Kita akan membuat sebuah  contoh kecil yang akan mengambil nilai waktu sekarang, mengetes apakah waktu sekarang ini kalau dibagi 3 sisanya 0, selama tidak memenuhi kondisi di atas maka iterasi dijalankan terus menerus. Kode untuk contoh di atas adalah seperti berikut ini :


public class WhileTest {
 public static void main(String[] args) {
    while(System.currentTimeMillis() % 3 != 0) {
       System.out.println("waktu sekarang dibagi 3 masih ada sisanya");
    }
 }
}


Jumlah perulangan dalam kode di atas tidak akan menentu,terkadang iterasi bisa terjadi banyak kali, sedikit kali atau bahkan tidak terjadi iterasi sama sekali. Namun satu hal yang pasti saat perulangan berhenti berarti kondisinya adalah false

Namun adakalanya kita membutuhkan perulangan yang setidaknya di lakukan sekali saja, kita dapat menggunakan perulangan do while yang akan kita pelajari sama-sama pada pertemuan berikutnya, Kalau ada yang masih belum paham atau ingin menambahkan mari kita berdiskusi dan belajar bersama.

Label: