TUTORIAL CODEIGNITER : APLIKASI WEBSITE / BLOG (WEBLOG) SEDERHANA DENGAN CODEIGNITER

Oke gan, langsung saja untuk screen shoot contoh aplikasi website, weblog, blog dengan codeigniter yang ane kasi, seperti di bawah ini...

Tutorial HTML

HTML merupakan bahasa dasar pembuatan web. Disebut dasar karena dalam membuat web, jika hanya menggunakan HTML tampilan web terasa hambar. Terdapat banyak bahasa pemograman web yang ditujukan untuk memanipulasi kode HTML, seperti ...

TUTORIAL ORACLE - KONEKSI ORACLE KE JAVA, PHP DAN C# (C-SHARP)

Disitu juga ane kasi contoh aplikasi CRUD nya yang bisa ente download Gratisss :D ...

Menampilkan postingan yang diurutkan menurut relevansi untuk kueri algoritma pemrograman 3. Urutkan menurut tanggal Tampilkan semua postingan
Menampilkan postingan yang diurutkan menurut relevansi untuk kueri algoritma pemrograman 3. Urutkan menurut tanggal Tampilkan semua postingan

Rabu, 03 April 2013

Design Pattern di Java, C# dan PHP

Alhamdulillah kali ini ane udah sempat nulis lagi diblog ini, dan tentunya masi tentang design pattern, pada postingan sebelumnya ane udah bahas satu pattern yaitu pattern singleton menggunakan java. kali ini ane berniat untuk menulis lagi tutorial implementasi design pattern dengan Java, C# dan PHP. jadi ane nulis mulai awal. sebelumnya ane berfikir untuk menulis design pattern hanya dengan java yang bisa ente baca disini, karena, jujur saja untuk pemrograman dekstop ane lebih suka javva dari pada C#, kalo web ane suka PHP :D . selang sehari ane upload pattern singleton kmaren, ane liat temen2 pada bingung dengan penerapannya di C# dan sebagian meminta bantuan ane... ane suruh mereka ke blog ane tapi sebagian gak bisa buat mengkonversi dari C# ke Java..
Hemmb.. kalo dipikir-pikir kalo ane upload pake C# di blog ini, bisa untuk menambah page view nya blog ini :D , bisa jadi bisnis... wkwkwkwk.. dan kita memang harus bisa memanfaatkan peluang yang ada... dari situlah ane berniat untuk menulis ulang tutorial design pattern ini dengan 3 bahasa yaitu Java, C# dan PHP.. bagaimana dengan C++.. kalo C++ itu seperti nya kagak sekarang, karena ane sendiri jarang skali menggunakan bahasa C++ ini, walaupun C++ .NET , ane kurang Userfriendly dengan bahasa ini, tapi jika ada tuntutan dari pihak akademik ataupun jika ada pengunjung blog yang request dan mau memberi sedikit donasi mungkin besok2 ane upload dah :D janji...

kalo penerapannya di PHP, itu karena ane pengen skalian mengupload dengan 3 bahasa yang ane sering pakai yaitu Java, C# dan PHP.. dan mungkin ada dari temen2 ane yang juga pengen mempelajarinya dengan pemrograman web (PHP) walaupun penerapan design pattern di PHP udah banyak dibahas oleh sesepuh ane :D
Oke, sekarang kita bahas design pattern nya dahulu... Apa design pattern itu ? Design pattern secara bahasa artinya pola bentuk, sedangkan secara pemrograman design pattern adalah pola-pola algoritma untuk menyelesaikan suatu permasalahan tertentu dan secara gampang nya adalah kumpulan algoritma programmer2 untuk menyelesaikan permasalahan2 pemrograman secara efisien...kenapa ane bilang efisien ? karena algoritma yang ada di design pattern didesain salah satunya untuk memangkas penggunaan memory, selain itu algoritma nya tidak melakukan proses yang sangat lama... coba kita bandingkan dengan algoritma bikinan kita sendiri, kadang kita asal2an dalam membuat algoritma pada suatu pemorgraman, memang program berhasil dirunning tapi kita melupakan  satu hal yaitu penghematan memory dan proses kompilasi program yang lama... :D selain itu manfaat menggunakan design pattern ini adalah design aplikasi yang kita buat bisa tertata rapi dan itu tentunya sangat berguna untuk perawatan dan kemudahan untuk memaintenance aplikasi jika suatu hari ada penambahan ataupun perubahan :D ... sejauh ini paham ya sama penjelasan ane.. kalo gak paham silahkan tanya via facebook kalo yang mau cepet :D ... dasar dari design pattern ini sebenarnya adalah Object oriented programming (OOP). kalo ente mau belajar design pattern sebaiknya ente kuasai dulu konsep dari OOP, yang antara lain adalah inheritance, polymorphisme, abstract class dll. yang ane udah bahas disini dengan C#, Java dan C++. dan untuk PHP nya di blog ini juga udah ane bahas beberapa :D yang ente bisa pelajari tentunya.. kalo gak paham OOP kayak nya agak berat untuk belajar design pattern, karena semua design pattern yang jumlah nya 23 itu pasti menggunakan OOP :D

Design Pattern ada banyak versi, yang pak dosen minta itu menurut versinya gang of four, dan jumlah patternnya itu ada 23 dan dari 23 pattern itu masi dibagi lagi menjadi 3 bagian.
  • Creation Patterns
    Pattern model ini menangani pembuatan object, kalo kita kan kadang membuat object sesuka kita tanpa mempertimbangkannya. contohnya saat kita membuat suatu object yang kita buat pada suatu class tidak bisa dimanfaatkan pada kelas lain. padahal harusnya kita bisa memanfaatkannya. dengan patterns model ini kita lebih bisa mengoptimalkan pembuatan suatu object. Pattern - pattern pada model ini adalah : 
    1.   Singleton
    2.   Factory Method
    3.   Abstract Factory
    4.   Prototype
    5.   Builder
  • Structural Patterns
    Pattern model ini menyangkut tentang struktur program. Pattern model ini akan lebih fokus pada class object composite. Akan banyak ditemukan pewarisan dan penggunaan interface atau abstract class pada Pattern model ini dan penggabungan suatu object. Pattern - pattern pada model Structural ini adalah :
    1.   Adapter
    2.   Bridge
    3.   Composite
    4.   Decorator
    5.   Facade
    6.   Fly Weight
    7.   Proxy
  • Behavioral Patterns
    Pattern jenis behaviour ini lebih menangani kepada kelakuan program. Pattern jenis ini juga sering memanfaatkan tentang hubungan antar object. Pattern - pattern model ini adalah :
    1.   Chain of responsibility
    2.   Command
    3.   Interpreter
    4.   Iterator
    5.   Mediator
    6.   Memento
    7.   Observer
    8.   State
    9.   Strategi
    10. Template
    11. Visitor
Hembb.. postingan ini memang tidak menjelaskan implementasi nya pada bahasa pemrograman. insya Alloh ane akan bahas pada postingan selanjutnya tapi kalo salah satu pattern udah ane bahas nanti ane kasi link nya pada list pattern diatas... oke gan, monggo di bookmark kalo perlu :D ... sebenarnya tinggal upload saja dan contoh kode programnya sudah ane siap kan dengan Java, C# dan PHP seperti kata ane tadi :D .. oke dah gan... sekian dulu untuk postingan ini, semoga bermanfaat untuk kita semua... keep cooding :)

Senin, 22 April 2013

Function (M-file) Negative Citra Matlab

Hari ini ane tiba2 pengen update lagi diblog ini :D .. ya walaupun hanya sekedar corat-coret tapi setidaknya "yang ada manfaatnya" buat diri sendiri dan buat orang lain... postingan ini mungkin agak sedikit berbeda dengan postingan sebelumnya... kalo dilihat dari kategori posting di blog ini cuma ada tutorial pemrograman yang rumpun nya rekayasa perangkat lunak / sistem informasi... kali ini ane akan share sesuatu yang berbeda... yaitu tentang citra digital ... mata kuliah ini adalah salah satu mata kuliah yang ditakuti oleh mahasiswa di kampus ane :D gak tau kenapa, apa karena dosennya yang killer atau karena mata kuliah nya yang agak sulit untuk dipahami... hehee... ya kalo menurut ane si.. ke dua2 nya...
dosennya killer dan mata kuliahnya juga agak sulit untuk di mengerti... hembb... tapi dosen yang itu sudah gak ngajar mata kuliah citra tahun ini, jadi dosennya berbeda... tahun kmaren ane ikut kelas ini karena mantan ane dan ane juga pengen bisa... taun ini ane wajib ngambil -_- padahal ane udah bisa ni matakuliah...
mata kuliah citra ini termasuk dasar dari penjurusan kecerdasan buatan (artificial intelegent)... dan nantinya akan dikembangkan untuk membuat aplikasi2 keren seperti deteksi wajah, deteksi tumor, virtual keyboard... dll ... tapi sayang seribu sayang... ane gak minat sama rumpun yang satu ini... sebenarnya ilmunya unik... bisa membuat aplikasi bahkan sesuatu yang baru.... tapi karena pasar sedang tidak banyak membutuhkan sama penjurusan yang satu ini, maka ane putusin menekuni jurusan yang dicari pasar :D yaitu RPL dan Jaringan... kalo nanti pasar sudah mulai banyak menjamah ke kecerdasan buatan ini maka ane akan perdalam lagi ilmu ini, ane suka si sebenarnya tapi yaaa.. tuntutan kerjanya di RPL dan Jaringan :)
mata kuliah citra dikampus ane dibagi menjadi 3 bagian... untuk yang citra 1 ini lebih banyak membahas enhancement yaitu perbaikan citra... tujuannya adalah untuk meningkatkan kekontrasan suatu citra sehingga citra yang diolah / diproses akan menghasilkan citra baru yang kekontrasannya lebih tinggi ... yang pada akhirnya dapt digunakan untuk memisahkan object - object....
enhancement ini dalam pemrograman citra biasanya tidak berdiri sendiri, maksudnya akan ada proses selanjutnya agar citra ini dapat dimanfaatkan lagi.. misal, untuk mendeteksi wajah harus dilakukan enhancement dulu untuk memperbaiki kekontrasan citra, baru kemudian dilakukan proses lanjutan untuk pendeteksian mana wajah dan mana yang bukan wajahh... Enhancement (perbaikan) mempunyai banyak methode, mulai dari Negative, Gamma Correcton, Brightness, histogram dll... dan inti dari methode2 ini adalah untuk memperbaiki kekontrasan citra :D
seperti judul postingannya yaitu Function (M-file) Negative citra, ane akan kasi contoh functionnya yang murni menggunakan algoritma negative citra, 

Rumus :

S = (L-1) - r

S = nilai citra hasil.
L-1 = gray level tertinggi / color depth
r = nilai citra asli

rumus pengolahan citra negative

kalo ente lihat pada simulasi diatas itu nilai (L-1) adalah 9 .. jadi rumusnya 9 - nilai pixel nya :D ... kalo secara gampangnya proses negativ ini adalah proses dimana sisi gelap dijadikan terang, si gelap dijadikan terang... jadi dibalik gitu....
untuk penerapan di matlab, sebenarnya matlab sendiri sudah menyediakan function nya yaitu "imcomplement"

i = imread('rice.png');
hasil = imcomplement(i);
subplot(1,2,1);imshow(i);title('citra asli');
subplot(1,2,2);imshow(hasil);title('citra hasil negativ');
diatas itu penerapannya kalo pake function bawaan matlab... tapi rasanya kurang greget kalo kita gak bisa terapin dengan algoritma yang ada :D ... ni ane kasi function yang mengimplementasikan algoritma negative biar greget...
function hasil = NegativeCitra(citra,maxbit)

hasil = citra;

[m,n] = size(citra);

for k = 1:m
for l = 1:n
hasil(k,l) = (maxbit-1)-citra(k,l);
end
end

subplot(2,2,1);imshow(citra);title('citra asli');
subplot(2,2,2);imhist(citra);title('histogram citra asli');
subplot(2,2,3);imshow(hasil);title('hasil citra negative');
subplot(2,2,4);imhist(hasil);title('histogram citra negative');

end
untuk pemanggilannya ya cukup seperti ini
NegativeCitra(i,256);  
hembbb... ya kira2 seperti itulah penerapan negative dan algoritmanya di function (M-file) matlab... kalo gak ngerti silahkan di coment atau tanya lewat facebook... kalo paham monggo postingannya dilike gitu...  :D ...sekian dulu untuk postingan kali ini... semoga bermanfaat :)

Senin, 25 Maret 2013

Design pattern Singleton dengan Java

Ini potingan yang ke dua dihari ini... sebenar sih jatahnya seminggu tiga kali, eh ini malah sehari 2 kali... hembb... karena tuntutan kuliah si... bukan tuntutan juga sebenarnya... tetapi ane pengen cepet2 selesai dari matakuliah design pattern ini, oia ane lupa gak jelasin design pattern itu apa :D ... hehehee... design pattern adalah kumpulan algoritma yang sering dipakai untuk membuat sebuah aplikasi dan system, kenapa harus memakai design pattern?? jawaban gampang nya, kalo pake design pattern aplikasi akan mudah untuk dirawat dan diperbaiki jika di kemudian hari ada perubahan... biar gak bikin dari awal, jadi kalo pake design pattern ini sebuah sytem Aplikasi akan tertata rapi :D katanya si gitu... hehehee...
ada banyak design pattern, menurut versi gank of 4 ada 21 design patern, i.Alloh ane bahas dalam waktu dekat ini... doain aja yak gan ? :D ... kali ini ane bahas pake java ya ?? gak ane bahas design pattern pake C# / C++ / PHP.. bukannya gak bisa, tapi cukup satu ajalah... soalnya masi banyak kerjaan yang lain... lagian kalo pake C# kebanyakan temen - temen ane juga pake C#, jadi biar agak sedikit berbeda gitulah.... :D
oke gan dari pada panjang lebar, kita ngobrol diblog ini mending d facebook aje  :D ni ane langsung jelasin desain pattern yang pertama yaitu Singleton. secara bahasa katanya google translate singleton artinya tunggal, tapi bagaimana pengertiannya dalam sebuah pemrograman ??
gini... biasanya design pattern model ini, maksud nya model Singleton ini digunakan untuk koneksi ke Database.. dalam pemrograman prosedural, bukan yang OOP maksud nya kita bisa berkali-kali melakukan koneksi ke dalam dalam database... dan itu sangat tidak efisien.. karena akan terjadi pemborosan memory... seperti contoh aplikasi java sederhana yang ane buat disini ...jika digambarkan bisa seperti ini



Itulah sebab nya perlu diterapkan konsep Singleton dalam pengkoneksian ke Database.. jadi untuk satu koneksi untuk melakukan banyak Eksekusi Query... tapi apa harus pake singleton ?? tidak juga, mugkin ente punya algoritma yang lebih bagus dari Singleton juga gak papa kalo mau dipakai :D .. Singleton jika digambarkan bisa seperti ini




gimana cara ngodingnya ?? mungkin ini yang ditunggu -tunggu olah para pengunjung :D ... okelah... ini pake Java loo ya... bukan C#... tapi ente bisa edit sendiri kok jadi source kode C#... hehehehee..
/**
* @(#)Singleton.java
*
* Singleton application
*
* @author
* @version 1.00 2013/3/25
*/

public class Singleton {
public static void main(String[] args) {
System.out.println("\t\t\tDesign Patern Single Ton\n\n");
Connection conn_1 = Connection.GetConnection();
conn_1.PrintText("select * from mahasiswa");
Connection conn_2 = Connection.GetConnection();
conn_2.PrintText("select * from dosen");
}
}

class Connection{
public Connection(){
Connection.counter++;
System.out.println("Object Instance Class Connection ke "+Connection.counter+"\n");
}

public static int counter = 0;
public static Connection connection = null;
public static Connection GetConnection(){
if(Connection.connection == null){
Connection.connection = new Connection();
}
return Connection.connection;
}

public void PrintText(String text){
System.out.println(text);
}
}
untuk screen shoot compilasi program diatas begini gan...