Rabu, 12 September 2012

Validator.php

Ada lagi nih share ilmu nya :D
 
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>
        <?php
        if(isset($_POST['submit'])){
           $nama=$_REQUEST['nama'];
           if(isset($_POST['submit'])){
               $gender=$_REQUEST['gender'];
           }
           else{
               $gender='';
           }
            $cek='';
        }
        else{
            $nama='';
            $gender='';
            $cek="Harus diisi lengkap!!";
        }
        ?>
    <html>
        <head></head>
        <body>
            <h1><?echo $cek ?></h1><br>
            <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method ="post" name="form1">
                <p>Nama : <input type="text" name="nama" value="<?php echo $nama ?>"/></p>
                <p>Jenis Kelamin : <input type="radio" name="gender" value="L"
                                          <?php ($gender=="L")? print 'checked=""': print '';?>/>
                    Laki-Laki
                    <input type="radio" name="gender" value="P"
                        <?php ($gender=="P")? print 'checked=""': print ''; ?>/>
                    Perempuan</p>
                <input type="submit" name="submit" value="Submit"/>
            </form>
            <?php
            if(isset($_POST['submit'])){//apakah data ter-submit?
                /*membuat variabel untuk menyimpan data yang dikirim*/
                $nama=$_REQUEST['nama'];
                if(isset($_POST['gender'])){
                    $gender=$_REQUEST['gender'];
                }
                else{
                    $gender='';
                }
            //cek apakah data yang dikirim tidak kosong
                if($nama=='' || $gender==''){
                    echo'<h2>Maaf Data Kurang Lengkap</h2>';
                }else{
                    /*cek jenis kelamin*/
                    if($gender=='L'){
                        echo '<h2>Selamat Datang Bro, '. $nama.' !!</h2>';
                    }else{
                        echo '<h2>Selamat Datang Sis, '. $nama.' !!</h2>';
                    }
                    }
                echo "<a href='".$_SERVER['PHP_SELF']."'>Reset</a>";// hasil
            }
            ?>


MenuDariJOption.java

Mau share ilmu nih :)

package Package1;
import javax.swing.JOptionPane;
/**
 *
 * @author Rani
 */
public class MenuDariJOption {
private static String name;
           private static String des;
           private static String gender;
           private static String kelamin;
           private static int validDes;
           static StringBuilder binerHasil = new StringBuilder();
           static StringBuilder hexaHasil = new StringBuilder();
           static StringBuilder oktalHasil = new StringBuilder();
           static String sc;
           public static void keBiner(int n) {
                 if (n > 1) {
                     keBiner(n / 2);
                 }
              System.out.print(n % 2);
              binerHasil.append(n % 2);
              // binerHasil.append("\033");
          }

           public static void keHexa(int n) {//int n : parameter
                 char[] daftarHexa = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
                        if (n > 0) {
                           keHexa(n / 16);
                           System.out.print(daftarHexa[n % 16]);
                           hexaHasil.append(daftarHexa[n % 16]);
                       }
            }

            public static void keOktal(int n) {
                  char[] daftarOktal = {'0', '1', '2', '3', '4', '5', '6', '7'};
                         if (n > 0) {
                            keOktal(n / 8);
                            System.out.print(daftarOktal[n % 8]);
                            oktalHasil.append(daftarOktal[n % 8]);
                  }
             }
            public static void inputDesJOption() {
              des = JOptionPane.showInputDialog("Masukkan Bilangan Desimal : ");
            try {
            if (des.isEmpty()) {
                JOptionPane.showMessageDialog(null, "Bilangan Desimalnya wajib diisi !!");
                inputDesJOption();
            }
         } catch (NullPointerException npa) {
            JOptionPane.showMessageDialog(null, "Haram lho kalo ngga diisi !!");
            inputDesJOption();
            }
        }
            public static void outHasilBiner() {
          inputDesJOption();
          try {//untuk melakukan penanganan kesalahan
            validDes = Integer.parseInt(des);
            System.out.print("\n Bilangan desimal : " + des + " jika dijadikan Biner hasilnya : ");
            keBiner(validDes);
            System.out.println("\n");
            JOptionPane.showMessageDialog(null, "Bilangan desimal : " + des + " jika dijadikan Biner hasilnya : " + binerHasil, "HASIL KONVERSI", JOptionPane.PLAIN_MESSAGE);
            // reset object binerHasil
            binerHasil = new StringBuilder();

        } catch (NumberFormatException nfe) {
            JOptionPane.showMessageDialog(null, "'" + des + "'"
                    + " .... bukan angka !!"
                    + "\nMasukkan angka saja !!");
            outHasilBiner();
          }
      }

    public static void outHasilHexa() {
        inputDesJOption();
        try {//untuk melakukan penanganan kesalahan
            validDes = Integer.parseInt(des);
            System.out.print("\n Bilangan desimal : " + des + " jika dijadikan Hexa hasilnya : ");
            keHexa(validDes);
            System.out.println("\n");
            JOptionPane.showMessageDialog(null, "Bilangan desimal : " + des + " jika dijadikan Hexa hasilnya : " + hexaHasil, "HASIL KONVERSI", JOptionPane.PLAIN_MESSAGE);
            hexaHasil = new StringBuilder();
        } catch (NumberFormatException nfe) {
            JOptionPane.showMessageDialog(null, "'" + des + "'"
                    + " .... bukan angka !!"
                    + "\nMasukkan angka saja !!");
            outHasilHexa();
          }
      }

    public static void outHasilOktal() {
        inputDesJOption();
        try {//untuk melakukan penanganan kesalahan
            validDes = Integer.parseInt(des);
            System.out.print("\n Bilangan desimal : " + des + " jika dijadikan Oktal hasilnya : ");
            keOktal(validDes);
            System.out.println("\n");
            JOptionPane.showMessageDialog(null, "Bilangan desimal : " + des + " jika dijadikan Oktal hasilnya : " + oktalHasil, "HASIL KONVERSI", JOptionPane.PLAIN_MESSAGE);
            oktalHasil = new StringBuilder();
        } catch (NumberFormatException nfe) {
            JOptionPane.showMessageDialog(null, "'" + des + "'"
                    + " .... bukan angka !!"
                    + "\nMasukkan angka saja !!");
            outHasilOktal();
          }
      }
//menampilkan input dialog nama
    public static void inpNama() {
        name = JOptionPane.showInputDialog("Masukkan nama Anda : ");
        try {
            if (name.isEmpty()) {
                JOptionPane.showMessageDialog(null, "Nama tidak boleh kosong !!");
                inpNama();
            }
        } catch (NullPointerException npe) {
            JOptionPane.showMessageDialog(null, "Harap diisi nama dulu doonk !!");
            inpNama();
        }
    }
    //menampilkan input dialog jenis Kelamin (gender)

    public static void jenisKelamin() {
        gender = JOptionPane.showInputDialog("Masukkan Jenis Kelamin Anda (cowok/cewek) : ");
        try {
            if (gender.isEmpty()) {
                JOptionPane.showMessageDialog(null, "Harus diisi lho yaa .... Jenis Kelamin ???");
                jenisKelamin();
            }
        } catch (NullPointerException npt) {
            JOptionPane.showMessageDialog(null, "Apa jenis kelamin kamu ???");
            jenisKelamin();
        }
        if ("cowok".equals(gender)) {
            kelamin = "Saudara, ";
        } else {
            if ("cewek".equals(gender)) {
                kelamin = "Saudari, ";
            } else {
                JOptionPane.showMessageDialog(null, "Hanya bisa diisi cowok dan cewek saja !!");
                jenisKelamin();
            }
        }

    }
    //Terbilang
    String[] angka = {"", "Satu", "Dua", "Tiga", "Empat", "Lima", "Enam", "Tujuh", "Delapan", "Sembilan", "Sepuluh", "Sebelas"};

    private String sebut(int x) {
        String bilang = "";
        int y = x / 100;
        if (y > 0) {
            bilang = angka[y] + " Ratus ";
            if (y == 1) {
                bilang = "Seratus ";
            }
            x %= 100;
        }
        if (x < 12) {
            bilang += angka[x];
        } else {
            y = x / 10;
            x %= 10;
            if (y == 1) {
                bilang += angka[x] + " Belas";
            } else {
                bilang += angka[y] + " Puluh " + angka[x];
            }
        }
        return bilang;
    }

    private String terbilang(long x) {
        int y;
        String bilang = "";
        String[] satuan = {"", " Ribu ", " Juta ", " Milyar ", " Trilyun ", " Quadrilyun ", " Quintilyun "};
        if (x > Math.pow(10, 20)) {
            return "Bilangan terlalu besar";
        }
        for (int i = 6; i > 0; i--) {
            y = (int) (x / Math.pow(10, i * 3));
            if (y > 0) {
                if (y == 1 && i == 1) {
                    bilang += " Seribu ";
                } else {
                    bilang += sebut(y) + satuan[i];
                }
            }
            x %= Math.pow(10, i * 3);
        }
        bilang += sebut((int) x);
        return bilang;
    }

    public static void outTerbilang() {
        sc = JOptionPane.showInputDialog("Masukan Bilangan yang akan disebut : ");
        try {
            if (sc.isEmpty()) {
                JOptionPane.showMessageDialog(null, "Waa.. mana bilangannya ?? Isi dulu yaa.. !!");
                outTerbilang();
            } else {

                JOptionPane.showMessageDialog(null, new MenuDariJOption().terbilang(new Long(sc)), "TERBILANG", JOptionPane.INFORMATION_MESSAGE);
            }
        } catch (NullPointerException not) {
            JOptionPane.showMessageDialog(null, "Jangan keluar dulu, harus diisi dulu.. !!");
            outTerbilang();
        } catch (NumberFormatException nae) {
            JOptionPane.showMessageDialog(null, "Hey '" + sc + "'"
                    + " .... bukan angka !!"
                    + "\nMasukkan angka saja !!");
            outTerbilang();
        }
    }
    public static void hasilPecahan() {
        int desimal;

        String str = JOptionPane.showInputDialog("Masukkan bilangan yang akan dipecah : ");
        try {
            if (str.isEmpty()) {
                JOptionPane.showMessageDialog(null, "Kok kosong ?? Isi dulu ya.. !!");
                hasilPecahan();
            } else {

                desimal = Integer.parseInt(str);

                int satu, dua, tiga, empat, lima, enam, tujuh, delapan, sembilan, sepuluh, sebelas, duabelas, tigabelas;
                satu = desimal / 100000;
                desimal %= 100000;

                dua = desimal / 50000;
                desimal %= 50000;

                tiga = desimal / 20000;
                desimal %= 20000;

                empat = desimal / 10000;
                desimal %= 10000;

                lima = desimal / 5000;
                desimal %= 5000;

                enam = desimal / 2000;
                desimal %= 2000;

                tujuh = desimal / 1000;
                desimal %= 1000;

                delapan = desimal / 500;
                desimal %= 500;

                sembilan = desimal / 200;
                desimal %= 200;

                sepuluh = desimal / 100;
                desimal %= 100;

                sebelas = desimal / 50;
                desimal %= 50;

                duabelas = desimal / 10;
                desimal %= 10;

                tigabelas = desimal / 1;
                desimal %= 1;


                JOptionPane.showMessageDialog(null, "Jumlah seratus ribuan = " + satu
                        + "\nJumlah lima puluh ribuan = " + dua
                        + "\nJumlah dua puluh ribuan = " + tiga
                        + "\nJumlah sepuluh ribuan = " + empat
                        + "\nJumlah lima ribuan = " + lima
                        + "\nJumlah dua ribuan = " + enam
                        + "\nJumlah seribuan = " + tujuh
                        + "\nJumlah lima ratusan = " + delapan
                        + "\nJumlah dua ratusan = " + sembilan
                        + "\nJumlah seratusan = " + sepuluh
                        + "\nJumlah lima puluhan = " + sebelas
                        + "\nJumlah lima satuan = " + duabelas
                        + "\nJumlah satuan = " + tigabelas, "PECAHAN", JOptionPane.INFORMATION_MESSAGE);
            }
        } catch (NullPointerException not) {
            JOptionPane.showMessageDialog(null, "Eitss mau kemana ?? Isi dulu bilangannya.. !!");
            hasilPecahan();
        } catch (NumberFormatException nae) {
            JOptionPane.showMessageDialog(null, "Hey '" + str + "'"
                    + " .... bukan angka !!"
                    + "\nMasukkan angka saja !!");
            hasilPecahan();
        }
    }
public static void kembaliMenu() {
        inpNama();
        jenisKelamin();
    }
public static void menuJOption() {
        inpNama();
        jenisKelamin();
        String[] pilihan = {"BINER", "HEXA", "OKTAL", "TERBILANG", "PECAHAN", "KEMBALI", "KELUAR"};
        while (true) {
            int response = JOptionPane.showOptionDialog(
                    null, "Selamat Datang " + kelamin + name + " !!"
                    + "\nPilih Konversi Bilangan dibawah ini?"// Pesan
                    , "Konversi Bilangan" // Judul di Tittlebar
                    , JOptionPane.YES_NO_OPTION // Tipe Option
                    , JOptionPane.PLAIN_MESSAGE // Tipe Pesan
                    , null, pilihan, null // Default button
                    );
            switch (response) {
                case 0:
                    outHasilBiner();
                    break;
                case 1:
                    outHasilHexa();
                    break;
                case 2:
                    outHasilOktal();
                    break;
                case 3:
                    outTerbilang();
                    break;
                case 4:
                    hasilPecahan();
                    break;
                case 5:
                    kembaliMenu();
                    break;
                case 6:
                case -1:
                    System.exit(0);
                default:
                    JOptionPane.showMessageDialog(null, "response salah"
                            + response);
                    break;
            }
        }
    }
public static void main(String[] args) {
        menuJOption();
    }
}

 Pertama kita harus memasukkan nama dulu


Jika tidak mengisi nama akan keluar peringatan seperti ini

Setelah mengisi nama, kita harus mengisi jenis kelamin

Jenis kelamin juga tidak boleh kosong

Setelah itu akan keluar pilihan seperti ini

Kemudian masukkan angka desimalnya

Apabila tidak mengisi bilangan desimal akan keluar peringatan seperti ini

Setelah itu kita konversikan ke biner, hexa dan oktal



Setelah itu kita konversikan ke terbilang maupun pecahan



Semoga bermanfaat :)


Rabu, 05 September 2012

KonversiBiner.php

Kalo yang ini PHP nih B)

<?php
        if (isset($_POST['decimal'])) {//apakah data ter-submit?
            $decimal = $_POST['decimal'];
            $original = $_POST['decimal'];
            $binary='';
            if (preg_match('/[^0-9]/',$decimal)) {//memastikan inputan adalah angka
                die("Maaf. Inputan salah..");
            }
            else {
                while ($decimal > 0) {// Looping memutuskan apakah 1 atau 0 yang di
                 if ($decimal%2 == 0) {//menambah 0
                     $binary .= 0;//$binary=0+$binary;
                     $decimal /= 2;//$binary=$binary/2;
                 }


            else {//menambah 1
                $binary .= 1;//$binary=1+$binary
                $decimal = ($decimal1/2)-0.5;
            }
        }
            $result = strrev($binary);//hasile diwalik
            echo "Bilangan $original (desimal) dalam biner adalah $result.
            <a href='KonversiBiner.php'>Back</a>to the script";
        }
  }
    else {
    ?>
    <html>
        <head><title>Konversi Desimal ke Biner</title>
        </head>
        <body> tes
            <form action="<?php echo $_SERVER['PHP_SELF']; ?>"
                  method="POST">
                <h3>Masukkan bilangan Desimal disini (cepat!!);
                </h3><input type="text" size="50" name="decimal">
                <input type="submit" value="konversikan!">
            </form>
            <?php
                echo "<br>",$_SERVER['PHP_SELF'];
            ?>
        </body>
    </html>
    <?php
    }
    ?>


Hasilnya kaya begini


KonversiBilangan.java

Kesalahan saya fatal banget di coding ini hrrrr. Hanya kurang "static String kelamin; " fatal banget kan? Nah, enough deh basa basi nya. Sekarang saya akan memberikan coding yang benar :D taraaaaaaaaa


package Package1;

import java.util.Scanner;
import javax.swing.JOptionPane;

public class KonversiBilangan {
    //global variable
    static String name;//object
    static String kelamin;
    static int bilDes;//variable

    //fungsi/method rekursi
   public static void Biner(int n){
    if(n>1) {Biner(n/2);}
    System.out.print(n%2);
}
public static void Hexa(int n){
    char[] daftarHexa={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
    int sisaBagi = n%16;
    if(n>0){
        Hexa((n - sisaBagi) / 16);
    }
    System.out.print(daftarHexa[n%16]);
}
public static void Oktal(int n){
    char[] daftarOktal={'0','1','2','3','4','5','6','7'};
    int sisaBagi = n %8;
    if(n>0){
        Oktal((n - sisaBagi) / 8);
        System.out.print(daftarOktal[n%8]);
    }
}
public static void inputDes(){
    System.out.print("Masukkan Bilangan Desimal= ");
    Scanner inputan=new Scanner(System.in);
    bilDes=inputan.nextInt();
    //return bilDes
}
public static void tampilBiner(){
    inputDes();
    System.out.print("Binernya adalah ");
    Biner(bilDes);
}
public static void tampilHexa(){
    inputDes();
    System.out.print("Hexanya Adalah ");
    Hexa(bilDes);
}
public static void tampilOktal(){
    inputDes();
    System.out.print("Oktalnya adalah ");
    Oktal(bilDes);
}
public static int inpBil (){
    System.out.println("=========================================="
            + "\nSelamat datang "+kelamin+" "+name+"");
    System.out.println("Silahkan memilih menu konversi "
            + "Bilangan ke: "+
            "\n1. Biner \n2. Hexa \n3. Oktal \n4. Exit");
    System.out.print("Masukkan Angka Menu= ");
    Scanner inputan=new Scanner(System.in);
    int pilmenu=inputan.nextInt();
    return pilmenu;
}
public static void menU(int pil){
    System.out.println("\033");//clear screen
    switch(pil){
        case 1: tampilBiner(); break;
        case 2: tampilHexa(); break;
        case 3: tampilOktal(); break;
        case 4: System.out.println("Kamsia ya, sudah mampir.");
                System.exit(0); break;//memberikan kondisi FALSE
        default:System.out.println("(Maaf. Pilih angka 1-4 saja!)");
        break;
    }
    System.out.println("\033");//clear screen
}
public static void main(String arg[]){
    name=JOptionPane.showInputDialog("Masukkan nama Anda : ");//menampilkan input dialog untuk memasukkan nama
    //menampilkan Option Dialog untuk memilih jenis kelamin
        String[] choices = {"Perempuan", "Laki-Laki", "WARIA"};

        String Perempuan= "Nona";
        String Laki= "Abang";
        while (true) {
            int response = JOptionPane.showOptionDialog(
                               null
                             , "Apa jenis kelamin Anda ?"
                             , "Jenis Kelamin"
                             , JOptionPane.YES_NO_OPTION
                             , JOptionPane.QUESTION_MESSAGE
                             , null
                             , choices
                             , "Quit"
                           );
        switch(response){
            case 0: kelamin=Perempuan;
                break;
            case 1: kelamin=Laki;
                break;
            case 2:
                System.out.println("MAAF KAMI TIDAK MENERIMA SELAIN PEREMPUAN / LAKI-LAKI");
                     System.exit(0); break;
        }
    do{
        menU(inpBil());
    }
    while(true);
        }
}
}

Dan jika di-run hasilnya seperti ini nih






Kamis, 02 Agustus 2012

Attitude

Pengertian
Perilaku manusia juga dilatar belakangi oleh sikap. Sikap sendiri memeiliki pengertian sebagai “organisasi pendapat, keyakinan seseorang mengenai objek atau situasi relatif yang relatif ajeg yang disertai adanya perasaan tertentu dan memberikan dasar kepada organisme untuk membuat respon atau perilaku dalam cara tertentu yang dipilihnya”. Atau dalam bahasa sederhana sikap adalah kesediaan beraksi terhadap suatu hal.

Sikap memiliki beberapa pengertian dan definisi sebagai berikut :
• Sikap adalah predisposisi mental untuk melakukan suatu tindakan (Kimmball Young (1945)
• Sikap adalah keajegan dan kekhasan perilaku seseorang dalam hubungan dengan stimulus manusia atau kejadian-kejadian tertentu (Sherif & sherif 1956)
• Sikap adalah predidposisi yang dipelajari untuk merespon secara konsisten dalam tatacara tertentu dan berkenaan dengan objek tertentu (Fishbein & Ajzen 1975)
• Kesimpulannya pengertain sikap adalah kecenderungan untuk bertindak dan bereaksi terhadap stimulus atau rangsangan.

Komponen sikap
Sikap merupakan hubungan dari berbagai komponen yang terdiri atas :
a. Komponen kognitif : yaitu komponen yang tersusun atas dasar pengetahuan dan informasi yang dimilki seseorang tentang objek sikapnya atau komponen yang berkaitan dengan pengetahuan, pandangan, keyakinan atau bagaimana mempersepsi objek
b. Komponen afektif : komponen yang bersifat evaluatif yang berhubungan dengan rasa senang dan tidak senang
c. Komponen konatif : kesiapan seseorang untuk bertingkah laku yang berhubungan dengan objek sikapnya atau komponen yang berhubungan dengan kecenderungan bertindak terhadap objek

Ciri-ciri sikap
Sikap memiliki ciri-ciri sebagai berikut :
a. Sikap tidak dibawa sejak lahir
Berarti manusia dilahirkan tidak membawa sikap tertentu pada suatu objek. Oleh karenanya maka sikap terbentuk selama perkembangan individu yang bersangkutan. Karena terbentuk selama perkembangan maka sikap dapat berubah, dapat dibentuk dan dipelajari. Namun kecenderungannya sikap bersifat tetap.
b. Sikap selalu berhubungan dengan objek
Sikap terbentuk karena hubungan dengan objek-objek tertentu, melalui persepsi terhadap objek tersebut.
c. Sikap dapat tertuju pada satu objek dan sekumpulan objek
Bila seseorang memiliki sikap negatif pada satu orang maaka ia akan menunjukkan sikap yang negatif pada kelompok orang tersebut.
d. Sikap itu dapat berlangsung lama atau sebentar
Jika sikap sudah menjadi nilai dalam kehidupan seseorang maka akan berlangsung lama bertahan, tetapi jika sikap belum mendalam dalam diri seseorang maka sikap relaatif dapat berubah.
e. Sikap mengandung perasaan atau motivasi
Sikap terhaadap sesuaatu akan diikuti oleh perasaan tertentu baik positif maupun negatif. Sikap juga mengandung motivasi atau daya dorong untuk berperilaku.
Sumber: http://nadhirin.blogspot.com/

Minggu, 22 Juli 2012

Perkembangan PHP

PHP: Hypertext Preprocessor adalah bahasa skrip yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk memrogram situs web dinamis. PHP dapat digunakan untuk membangun sebuah CMS.

Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari web.

Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi sumber terbuka, maka banyak pemrogram yang tertarik untuk ikut mengembangkan PHP.

Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini, interpreter PHP sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.

Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP diubah menjadi akronim berulang PHP: Hypertext Preprocessing.

Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi.

Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek.

Sejarah PHP


PHP pertama kali dibuat oleh Rasmus Lerdroft, seorang programmer C. Semula PHP digunakannya untuk menghitung jumlah pengunjung di dalam webnya. Kemudian ia mengeluarkan Personal Home Page Tools versi 1.0 secara gratis. Versi ini pertama kali keluar pada tahun 1995. Isinya adalah sekumpulan script PERL yang
dibuatnya untuk membuat halaman webnya menjadi dinamis. Kemudian pada tahun 1996 ia mengeluarkan PHP versi 2.0 yang kemampuannya telah dapat mengakses database dan dapat terintegrasi dengan HTML.

Pada tahun 1998 tepatnya pada tanggal 6 Juni 1998 keluarlah PHP versi 3.0 yang dikeluarkan oleh Rasmus sendiri bersama kelompok pengembang softwarenya.Versi terbaru, yaitu PHP 4.0 keluar pada tanggal 22 Mei 2000 merupakan versi yang lebih lengkap lagi dibandingkan dengan versi sebelumnya.

Perubahan yang paling mendasar pada PHP 4.0 adalah terintegrasinya Zend Engine yang dibuat oleh Zend Suraski dan Andi Gutmans yang merupakan penyempurnaan dari PHP scripting engine. Yang lainnya adalah build in HTTP session, tidak lagi menggunakan library tambahan seperti pada PHP. Tujuan dari bahasa scripting ini adalah untuk membuat aplikasi-aplikasi yang dijalankan di atas teknologi web.
Dalam hal ini,

aplikasi pada umumnya akan memberikan hasil pada web browser, tetapi prosesnya secara keseluruhan dijalankan web server.

Seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan yang paling utama PHP adalah pada konektivitasnya dengan system database di dalam web. Sistem database yang dapat didukung oleh PHP adalah :

1.Oracle
2.MySQL
3.Sybase
4.PostgreSQL
5.danlainnya

PHP dapat berjalan di berbagai system operasi seperti windows 98/NT, UNIX/LINUX, solaris maupun macintosh

PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP bernama FI (Form Interpreted). Pada saat tersebut PHP adalah sekumpulan script yang digunakan untuk mengolah data form dari web.

Perkembangan selanjutnya adalah Rasmus melepaskan kode sumber tersebut dan menamakannya PHP/FI, pada saat tersebut kepanjangan dari PHP/FI adalah Personal Home Page/Form Interpreter. Dengan pelepasan kode sumber ini menjadi open source, maka banyak programmer yang tertarik untuk ikut mengembangkan PHP.

Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini interpreter sudah diimplementasikan dalam C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.

Pada tahun 1997, sebuah perusahaan bernama Zend, menulis ulang interpreter PHP menjadi lebih bersih, lebih baik dan lebih cepat. Kemudian pada Juni 1998 perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan nama rilis tersebut menjadi PHP 3.0.

Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai. Versi ini banyak dipakai sebab versi ini mampu dipakai untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan proses dan stabilitas yang tinggi.

Pada Juni 2004, Zend merilis PHP 5.0. Versi ini adalah versi mutakhir dari PHP. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Dalam versi ini juga dikenalkan model pemrograman berorientasi objek baru untuk menjawab perkembangan bahas pemrograman kearah pemrograman berorientasi objek.

Sabtu, 21 Juli 2012

Perkembangan Java



Bahasa pemrograman  Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling  dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems . Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai “*7″ (Star Seven).
Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.
Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemeritaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei  1995 .
Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja “bapak java”, James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi “Java”. Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.

Sejarah Java



Java adalah bahasa pemograman tingkat tinggi yang berorientasi objek, diedarkan oleh
Sun Microsystem1 pada awal tahun 1996. Sejarah awal Java berawal di tahun 1991
ketika satu group insinyur-insinyur Sun, yang dipimpin oleh Ptrick Naughton dan James
Gosling, ingin mendesain sebuah bahasa pemograman komputer yang berukuran kecil
yang dapat digunakan untuk peralatan elektronika konsumen sepertu switchboxes TV
kabel. Dikarenakan peralatan-peralatan ini menggunakan konsumsi daya dan memory
yang rendah, maka bahasa pemograman tersebut harus berukuran sangat kecil. Juga
karena setiap vendor menggunakan CPUs (Central Processing Unit) yang berbeda,
maka bahasa tersebut harus bersifat multiplatfrom, tidak terikat hanya pada satu
arsitektur (Architecture Neutral). Proyek ini diberi nama Green Project.
Karena harus bersifat Architecture Neutral, maka Green Project menggunakan Virtual
Machine (atau dikenal dengan Java Virtual Machine) yang berasal dari model
implementasi bahasa Pascal di awal-awal perkembangan PC. Dikarenakan insinyurinsinyur
Sun berlatar belakang Unix2, jadi mereka mendasari bahasa pemograman
mereka dengan C++ dari pada Pascal. Secara khusus mereka membuat bahasa mereka
berorientasi obyek (object oriented), bukan berorientasi prosedur (procedural oriented)
seperti model bahasa Pascal. Bahasa pemograman tersebut dinamakan Oak, kemudian
diubah menjadi Java.
Karena pada awalnya ditujuan untuk pemograman device kecil, Java memiliki
karakteristik berukuran kecil, efisien, dan portable untuk berbagai hardware.
Perkembangannya sempat terhenti karena tidak ada yang tertarik dan tidak memiliki
pasar seperti yang diramalkan. Ketika teknologi internet berkembang, Java diarahkan
untuk menjadi bahasa pemograman internet karena fitur-fitur Java seperti Architecture
Neutral, real time, reliable dan secure sangat sesuai untuk pengembangan internet.