membuat project java opensource yang baik dan benar :D


internetopensource berbeda dengan freeware dan software πŸ˜€

software merupakan perangkat lunak yang sifatnya berbayar, dan hak miliknya dan source codenya ada pada pembuat, dan untuk mendapatkan perangkat lunak jenis ini, kita harus mengeluarkan DUIT :D, jadi kalo kita make tanpa bayar, berarti artinya MEMBAJAK πŸ˜›

freeware merupakan sebuah perangkat lunak yang bersifat gratis namun kepemilikannya berada di tangan pembuat dan source codenya pun ada pada pembuat, jadi jika kita mo liat source codenya harus minta ke yang bikin πŸ˜€

nah, opensource merupakan perangkat lunak yang sifatnya biasanya gratis, dan source codenya boleh didapat dan diubah oleh yang mendapatkan perangkat lunak itu, namun biasanya ketika diubah, harus dengan ketentuan yang telah ada seperti harus melampirkan pembuatnya misalnya πŸ˜€

nach, berhubung saya pecinta opensource, maka saya beberkan teknik membuat project java opensource yang baik dan benar menggunakan NetBeans IDE πŸ˜€

ok, sekarang pertama buat project baru, setelah itu klik kanan projectnya dan pilih properties :

image

setelah keluar dialog properties trus pilih tree Packaging seperti pada gambar diatas πŸ˜€

nach secara default isi dari JTextField “Exclude From JAR File” adalah “**/*.java,**/*.form”.

ini berarti file jar hasil packaging hanya berisikan file2 selain .java dan .form, padahal .java merupakan file source code dan file .form merupakan file form untuk gui builder di NetBeans.

dengan menggunakan setting default ini berarti kita tidak membuat project opensource melainkan project closesource πŸ˜€

nach, sekarang kosongkan jtextfiled “Exclude From JAR File” sehingga file .java dan .form akan ada dalam file .jar hasil packaging seperti terlihat dibawah ini :

sebelum :

image

sesudah :

image

bisa dilihatkan kalo setelah text field “Exclude From JAR File” dikosongkan, maka pada file .jar hasil packaging terdiri dari seluruh file compile dan source codenya πŸ˜€

sebenarnya cukup seperti itu saja kalo kita mo bikin project opensource, tapi karena kita mau bikin project opensource YANG BAIK DAN BENAR :D, so sekarang kita akan lihat lebih dalam dalam source codenya, biasanya kita buat source code seperti ini :

package org.eecchhoo.lucene.test;

import java.util.Date;

public class Mahasiswa {

    private String nim;

    private String nama;

    private Date tanggalLahir;

    public Mahasiswa() {
    }

    public String getNama() {
        return nama;
    }

    public void setNama(String nama) {
        this.nama = nama;
    }

    public String getNim() {
        return nim;
    }

    public void setNim(String nim) {
        this.nim = nim;
    }

    public Date getTanggalLahir() {
        return tanggalLahir;
    }

    public void setTanggalLahir(Date tanggalLahir) {
        this.tanggalLahir = tanggalLahir;
    }
}

sebenarnya pembuatan source code diatas itu gak gw sarankan karena :

pertama tuh class apa gw gak tau πŸ˜€

kedua tuh metode2 classnya gw gak tau buat apa πŸ˜€

jadi harusnya setiap class diberi dokumentasi dan juga tiap metode diberi dokumentasi, jadi terlihat seperti dibawah ini :

/*
 * untuk menggunakan sourcecode ini anda harus
 * menggunakan licensi yang tertulis disini
 *
 * copyright [echo.khannedy@gmail.com] 2008
 */
package org.eecchhoo.lucene.test;

import java.util.Date;

/**
 * class mahasiswa merupakan class yang digunakan
 * sebagai object relational mapping yang bertugas
 * untuk mapping table "mahasiswa" dalam database
 *
 * @author eecchhoo
 * @version 1.0
 * @since Oktober 2008
 */
public class Mahasiswa {

    private String nim;

    private String nama;

    private Date tanggalLahir;

    /**
     * membuat class mahasiswa baru
     */
    public Mahasiswa() {
    }

    /**
     * mendapatkan nama class mahasiswa
     * @return string atau null jika nama kosong
     */
    public String getNama() {
        return nama;
    }

    /**
     * mengubah nama class mahasiswa
     * @param nama nama baru
     */
    public void setNama(String nama) {
        this.nama = nama;
    }

    /**
     * mendapatkan nim class mahasiswa
     * @return string atau null jika nim kosong
     */
    public String getNim() {
        return nim;
    }

    /**
     * mengubah nim class mahasiswa
     * @param nim nim baru
     */
    public void setNim(String nim) {
        this.nim = nim;
    }

    /**
     * mendapatkan tanggal lahir class mahasiswa
     * @return java.util.Date atau null jika
     * tanggal lahir kosong
     */
    public Date getTanggalLahir() {
        return tanggalLahir;
    }

    /**
     * mengubah tanggal lahir class mahasiswa
     * @param tanggalLahir tanggal lahir baru
     */
    public void setTanggalLahir(Date tanggalLahir) {
        this.tanggalLahir = tanggalLahir;
    }
}

dari source code diatas gw tau untuk apa class Mahasiswa dan buat apa fungsi metode-metodenya πŸ˜€

selain itu dokumentasi juga sangat penting apalagi kalo kita mo bikin framework, karena dengan dokumentasi, penggunaan framework yang kita buat akan lebih mudah dimengerti oleh orang lain πŸ˜€

so it’s for today

see you later πŸ˜€

Iklan

13 pemikiran pada “membuat project java opensource yang baik dan benar :D

  1. klik kanan projectnya trus pilih “CLEAD and BUILD”
    nanti otomatis netbeans bakal bikin direktori “DIST”
    maksudnya itu singkatan dari “distribution”
    direktorinya bakal ada di tempat project yang u buat

  2. Ping balik: Belajar JaVa « WAHYU FIGHTER

  3. Ping balik: Tutorial Java dari Eko Kurniawan Khannedy « nge-WP@net

  4. Sippp kang, tapi ya jangan lupa untuk penaamaan suatu variabel/class/method harus ada semacam konvensi biar kalo diteruskan sama orang lain tidak bingung. wokeee

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s