Let Find Out..

Rabu, 01 Desember 2010

Memilih Bisnis Online Sendiri ( Digital Imaging )


Bisnis Online Digital Imaging
            Semakin berkembangnya dunia teknologi akan berdampak langsung pada kehidupan manusia, salah satu bagian yang tidak lepas dari perkembangan teknologi adalah bidang ekonomi. Dengan semakin cepatnya pengaksesan informasi lewat media internet mendorong semua pihak untuk memanfaatkan media internet ini untuk bersosialisai, seperti layanan aplikasi email, jejaring sosial sampai transaksi digital semua bisa dilakukan dengan media internet. Dengan terbukanya akses ke seluruh bagian informasi di dunia internet dan dengan didasari oleh pemanfaatan sumber daya yang tersedia dalam bidang multi media, kami mencoba untuk membuat bisnis digital imaging atau percetakan digital berbasis web sebagai salah satu praktek dalam mata kuliah softskill.

            Dalam perkembangan dunia multi media semua hal dapat dilakukan dengan sarana yang telah tesedia, contohnya seperti cetak foto, sablon pakaian, manipulasi data dll. Untuk itu dengan memanfaatkan sumber daya yang tersedia kami akan membuat bisnis online digital imaging. Contoh yang dapat dilakukan dengan percetakan digital seperti percetakan foto, sablon pakaian, membuat spanduk dll. Cara kerja dari bisnis online yang kami jalankan adalah sebagai berikut, karena bisnis yang kami jalankan adalah berbasis web maka dibutuhkan struktur website yang mendukung untuk menjalankan suatu usaha digital imaging. Pada web tersedia menu-menu untuk dapat melakukan interaksi antara operator dengan para pengunjung web.  Pengunjung dapat melihat contoh atau sampel dari produk-produk yang ditawarkan, dan para pengunjung juga dapat melakukan pemesanan berdasarkan pesanan pengunjung sendiri. Dengan transaksi pembayaran yang telah disepakati, untuk cara pembayaran yang biasa digunakan pada bisnis online yaitu menggunakan transfer via rekening atau aplikasi yang sekarang sering digunakan untuk melakukan transaksi pembayaran dengan paypol. Sebagai contoh untuk bisnis digital imaging  bebasis web dapat dilihat di bawah ini, sebagai contoh saya menampilkan web KODAK digital imaging 

Tipe-tipe Bisnis Online

Type Bisnis Online Mungkin diantara anda pengguna internet sudah tahu banyak sekali jenis-jenis atau type bisnis online di internet. Sekarang kita tinggal memilih apa saja bisnis yang kita sukai. Dari yang berbayar sampai yang gratisan. Seperti autosurf program misalnya, dll. berikut jenis-jenis dari bisnis online:

1. Forex Trading
Forex online trading adalah suatu pekerjaan yang sangat menjanjikan dan memiliki peluang income sangat besar sekali. Oleh sebab itu, saya memilihnya sebagai pilihan utama diantara yang lain.

2. Ebook
Salah satu cara yang paling efektif bagi para pemikir, pembuat konsep dan pakar untuk menjual ide, ilmu dan ketrampilan nya. Jika anda pintar, memiliki ide atau skill tertentu ? maka cobalah membuat e-book dan dijual secara online. Kemungkinan laku / ada pembeli pasti ada. Dan bisnis model ini yang paling banyak diminati dan laris manis.

 3. Afiliansi
Program Banyak Perusahaan besar bergabung dalam sebuah group pemasaran afiliasi , kita bisa bergabung dalam Group tersebut dan memasarkan Perusahaan - perusaahan itu secara online. Contoh yang paling populer adalah Commission Junction, LinkShare, Share a Sale, ClixGalore dll.

 4. Autosurf Program
 Program Autosurf adalah program di Internet , dimana semua membernya diwajibkan untuk melakukan surfing web. Artinya anda akan dibayar sesuai prosentase surfing anda. Banyak juga diantara program autosurf yang scam atau menipu, jadi diharapkan lebih hati-hati dalam memilih.

 5. MLM
Bisnis Bisnis network marketing / pemasaran jaringan atau multilevel marketing bisa dijalankan secara online. Di indonesia prospek bisnis ini sangat menjanjikan , apalagi pemakai internet semakin bertambah , hanya perlu kecerdikan anda untuk memilih perusahaan MLM yang bagus , yang di back up oleh perusahaan besar , sehingga bisnis mlm yang anda jalankan bisa bertahan dan terus berkembang.

6. Software Bisnis
 Para pakar IT di Dunia , membuat suatu software yang bisa dipasarkan kepada umum. Banyak bisnis - bisnis software berupa : Software Email, Software Submit Search Engine , Software AntiVirus,SoftwarePendidikan dll.

 7. Bisnis Survey / isi pendapat
 Banyak sekali bisnis di internet yang menawarkan peluang kepada kita, salah satunya adalah Survey Job. Cara kerjanya kita diminta untuk mengisi form isian survey dari beberapa buah Perusahaan Besar yg sedang study pasar , nah dari situ kita dibayar. Nominal besarnya pembayaran tergantung dari perusahaan tsb yg menentukan, cuma lagi - lagi prioritas untuk warga negara indonesia masih kecil sekali. Kebanyakan diperuntukkan kepada rakyat amerika, canada atau inggris , dimana disitu Market dari Perusahaan yg membuat survey tsb

 8. Bisnis Typing / Mengetik
 Bekerja di internet dengan cara mengetik tugas - tugas yang diberikan oleh beberapa Perusahaan di Amerika,Cuma untuk pasar di Indonesia masih sedikit.

 9. Poker , Gambling and Casino
 satu ini tidak saya rekomendasikan, karena ini perbuatan yang haram.

Jumat, 07 Mei 2010

Game TikTakToe


Game TicTacToe..

            Sebagai bagian dari materi perkuliahan untuk mata kuliah softskill penulis mencoba untuk menerbitkan game mobile tic tac toe sebagai materi dalam blog, untuk lebih lengkapnya, bias dilihat dalam halaman blog ini.

            Struktur Menu
Pada aplikasi permainan yang dibuat, penulis menggunakan beberapa buah menu yang tujuannya adalah untuk memudahkan dan membantu pengguna aplikasi dalam mengakses fasilitas dalam permainan yang disediakan seperti memulai permainan, melihat high score, melihat layar bantuan (help), termasuk pula melakukan pengaturan terhadap beberapa seting yang tersedia seperti seting pengaturan permainan, score dan peraturan permainan.
Menu Utama
Menu utama ini merupakan menu yang akan ditampilkan pada saat pertama kali aplikasi permainan dijalankan. Menu ini memiliki bagan sebagai berikut :
Pada menu utama terdapat lima buah pilihan yang tersedia pada saat aplikasi
game pertama kali dijalankan, yaitu :
1. “Pengaturan”, digunakan untuk melakukan perubahan terhadap opsi yang mendukung
      permainan, seperti nama pemain, level, giliran pemain dan pilih simbol.
2. “High Score”, digunakan untuk melihat daftar score yang tersimpan.
3. “Peraturan Permainan”, digunakan untuk melihat bantuan cara memainkan game.
Layar Permainan
Layar ini merupakan tempat dimana permainan TicTacToe dilakukan, dan pada layar ini diharapkan user dengan device (ponsel) dapat saling berinteraksi. Aplikasi permainan TicTacToe merupakan aplikasi yang animatif dan interaktif, dimana dalam permainan ini digunakan media grafis dan audio sebagai alat penyampaian informasi kepada user. Untuk lebih jelasnya, rancangan layar permainan dapat dilihat pada gambar berikut :
 Layar High Score
Pada layar ini user dapat melihat daftar score tertinggi yang tersimpan dalam ponsel. Pada aplikasi permainan TicTacToe ini penulis menyediakan tempat untuk menyimpan daftar banyaknya permainan dilakukan, jumlah menang, kalah dan seri. Rancangan tampilan layar
Pemilihan terhadap menu “Pengaturan” akan memunculkan tiga buah submenu
yaitu :
1.               “Nama Pemain”, digunakan untuk memberikan nama bagi user yang akan bermain.
2.               “Level CPU”, digunakan untuk memilih tingkat kesulitan permainan, dimana user dapat memilih level yang dibagi menjadi tiga tingkatan yaitu mudah, sedang dan master, semaikin tinggi level yang dipilih maka akan semakin tinggi tingkat kesulitannya.
  3.       “Giliran”, digunakan untuk menentukan siapa yang akan mengambil giliran jalan pertama.
  4.       “Simbol”, digunakan untuk memilih bentuk item yang akan dipakai untuk bermain.
Layar Menu
Terdapat dua kelompok menu pada aplikasi permainan ini. Pada kedua kelompok menu tersebut akan diberikan bentuk tampilan yang sama agar user dapat dengan mudah mengenalinya.
 
Pembuatan Program
Pada pemrograman java (J2ME), setiap fungsi yang ingin dibuat harus dituliskan didalam sebuah kelas, karena pada dasarnya J2ME menganut prinsip pemrograman OOP (object oriented programming). Pada pembuatan aplikasi permainan TicTacToe ini, penulis membagi fungsi yang terdapat dalam aplikasi ini kedalam beberapa kelas, dimana setiap kelas dibuat berdasarkan karakteristik layar yang dipergunakan dalam aplikasi. Dengan kata lain, setiap layar yang ada dibangun dari kelas tersendiri. Penjelasan tentang kelas yang dibuat dan isinya akan dijelaskan pada subbab terpisah.
Import Library J2ME
Pertama masukkan dahulu library java J2ME pada MIDP2.0 yang akan di pakai dalam pembuatan game , librarynya sebagai berikut :
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.util.Random;

Kelas TicTacToe
Kelas ini merupakan kelas pembangun aplikasi permainan yang utama dan juga digunakan untuk menampilkan menu utama. Kelas ini didefinisikan sebagai berikut :
public class MIDlet_tictactoe
extends MIDlet implements CommandListener{
Kelas ini didefinisikan sebagai kelas turunan MIDlet, yang berarti program ini dibuat menggunakan profile MIDP. Kelas ini juga mengimplementasi interface CommandListener, yang digunakan untuk menangkap pilihan user terhadap menu.

Deklarasi Variabel
Baris selanjutnya selanjutnya adalah deklarasi variable, objek dan command yang dipakai dalam program ini, dimana strukturnya adalah sebagai berikut :
protected bulet_silang BS;
      protected Display tampil;
      private kanpas KANPAS;

      private Form menu_opsi,
                       skornya,
                       swet;
      private Command cmd_keluar,
                              cmd_opsi,
                              cmd_skor,
                              cmd_main,
                              cmd_kembali,
                              cmd_simpan,
                              cmd_batal,
                              cmdOK,
                              cmd_OK2;
            Command tersebut dibuat untuk memberikan fungsi isi dari menu dalam game, seperti yang telah digambarkan diatas menu terdiri dari tiga bagian yaitu pengaturan, scor, main dan pada menu pengaturan dibagi menjadi sub lagi yaitu nama pemain, level CPU, giliran dan symbol, jika tidak terjadi perubahan pada submenu maka user bisa kembali papan tampilan game, dan jika salah satu sub menu itu di ubah maka akan muncul perintah baru yaitu simpan atau batal, jika batal maka perintahnya kembali default dan jika telah tersimpan maka perubahan yang telah dilakukan akan tersimpan. 


            Deklarasi Construktor Class
Baris selanjutnya yaitu pendeklarasian Construktor class atau kelas pembangun dari aplikasi ini dideklarasikan oleh TextField dengan nama teksname,
private TextField teksname;

            Deklarasi Objek
            Seperti sebelumya telah dijelaskan constructor classnya pada bagian ini akan di jelaskan tentang isi dari objek dan variable construktornya untuk lebih jelasnya yaitu sebagai berikut,
            private StringItem skor1,
                                 skor2,
                                 skor3,
                                 skor4,
                                 skor5;

      private ChoiceGroup level,
                                           player,
                                           xxx;

      protected boolean ditungguin = false;
      protected int pilih_aja[] = {0,0};

      private String nama = "Anda";

      private String kmptr = "CPU";

      private int menang = 0;

      private int kalah = 0;

      private int seti = 0;

      private int levenya = 0;

      private boolean mulai = true;

      private boolean xx = true;
      public MIDlet_tictactoe(){


            BS = new bulet_silang();
            teksname = new TextField("Nama","Anda",6,TextField.ANY);
            skor1 = new StringItem("Total bermain: ","0 kali");
            skor2 = new StringItem("Menang: ","0");
            skor3 = new StringItem("Kalah: ","0");
            skor4 = new StringItem("seri: ","0");
            skor5 = new StringItem(
                  "Cara Bermain: "," There is No Rule, Hajar aj !");

            String elem1[] = {"Gampang","Biasa","Master"};
            level = new ChoiceGroup("Level CPU",Choice.POPUP,elem1,null);

            String elem2[] = {"Giliran Anda","Giliran CPU"};
            xxx = new ChoiceGroup("",Choice.POPUP,elem2,null);

            String elem3[] = {"X","O"};
            player = new ChoiceGroup("Simbol",Choice.POPUP,elem3,null);
            Baris program di atas adalah isi dari menu pada game TicTacToe, pada baris pertama yang dideklarasikan adalah untuk menu score yang di bagi menjadi empat bagian yaitu : banyaknya bermain, menang, kalah dan seri yang diwakili oleh string item skor1, skor2,skor3,skor4 dan skor5. Pada baris selanjutnya kelas choicegroup yang ada pada menu, pertama mengisi nama pemain, pada menu selanjutnya menu bisa dipilih dengan cara popup yaitu dengan memilih pilihan menu yang telah ada dan level CPU yang bisa dipilih yaitu  mudah, biasa dan master dengan level yang dideklarasikan dengan string elemen1, selanjutnya string elemen2 yaitu giliran, arti giliran disini adalah untuk menentukan siapa yang akan menjalankan atau memulai permainan ini lebih dulu, pada baris selanjutnya yaitu string elemen3 yang di artikan di artikan sebagai pemilihan symbol, symbol yang dipakai disini yaitu symbol X dan O sebagai item yang dipakai untuk bermain.

            elas Option Screen
                Selanjutnya kita akan menuliskan perintah-perintah yang akan dieksekusi pada saat aplikasi dijalankan, listingnya sebagai berikut,

cmd_keluar = new Command("Keluar", Command.EXIT, 0);
            cmd_opsi = new Command("Pengaturan",Command.ITEM,1);
            cmd_skor = new Command("Skor",Command.ITEM,2);
            cmd_main = new Command("Peraturan Permainan",Command.ITEM,3);
            cmd_simpan = new Command("Simpan",Command.OK,0);
            cmd_batal = new Command("Batal",Command.BACK,1);
            cmdOK = new Command("OK",Command.BACK,0);
            cmd_OK2 = new Command("OK",Command.BACK,0);
     di atas adalah command button yang ada pada permainan dan menu option seperti keluar, opsi, skor, main, simpan, dll.   
      KANPAS = new kanpas(this);
            KANPAS.addCommand(cmd_keluar);
            KANPAS.addCommand(cmd_opsi);
            KANPAS.addCommand(cmd_skor);
            KANPAS.addCommand(cmd_main);
            KANPAS.setCommandListener(this);
            Selanjutnya adalah statement untuk memanggil kelas kanpas, yaitu kelas untuk yang digunakan untuk mengatur tata letak dan warna tampilan permainan dimana kelas kanpas juga mendeklarasikan fungsi dari pergerakan atau tombol yang digunakan untuk mengoperasikan permainan ini.
            menu_opsi = new Form("Opsi");
            menu_opsi.append(teksname);
            menu_opsi.append(level);
            menu_opsi.append(xxx);
            menu_opsi.append(player);
            menu_opsi.addCommand(cmd_simpan);
            menu_opsi.addCommand(cmd_batal);
            menu_opsi.setCommandListener(this);
           
            Menu opsi yaitu menu pengaturan dalam game, yang ada didalamnya yaitu teksname untuk mengisi nama pemain, level untuk memilih level permainan, giliran pemain dan symbol. Dan menu command dalam menu untuk menunjukkan proses selanjutnya yaitu command simpan untuk menyimpan perubahan yang telah dilakukan dalam opsi dan command batal untuk membatalkan perubahan pada pengaturan dan kembali pada permainan.


skornya = new Form("History");
            skornya.append(skor1);
            skornya.append(skor2);
            skornya.append(skor3);
            skornya.append(skor4);
            skornya.addCommand(cmdOK);
            skornya.setCommandListener(this);
            swet = new Form("Petunjuk");
            swet.append(skor5);
            swet.addCommand(cmd_OK2);
            swet.setCommandListener(this);
      }
Selanjutnya  pada menu opsi score yang ditampilkan yaitu untuk scor1 dan seterusnya yaitu banyaknya bermain, menang, kalah dan seri.
            public void startApp(){
            tampil = Display.getDisplay(this);
            tampil.setCurrent(KANPAS);
            startNewRound();
      }
      public void destroyApp(boolean unconditional){}
      public void pauseApp(){}
      public void commandAction(Command c, Displayable s){
            if (c==cmd_keluar){notifyDestroyed();}
            if (c==cmd_main){tampil.setCurrent(swet);}
            if (c==cmd_kembali){tampil.setCurrent(KANPAS);}
            if (c==cmd_batal){tampil.setCurrent(KANPAS);}
            if (c==cmdOK){tampil.setCurrent(KANPAS);}
            if (c==cmd_OK2){tampil.setCurrent(KANPAS);}


     Saat memulai baru akan ditampilkan papan permainan yang dipanggil dari kelas kanpas, jika memilih command keluar maka akan keluar dari permainan, selain itu menu akan melanjutkan pada permainan.
             if (c==cmd_skor){
                  skor1.setText(""+(menang+kalah+seti)+" main");
                  skor2.setText(""+menang);
                  skor3.setText(""+kalah);
                  skor4.setText(""+seti);
                  tampil.setCurrent(skornya);
            }

            if (c==cmd_opsi){
                  teksname.setString(nama);
                  level.setSelectedIndex(levenya,true);
                  xxx.setSelectedIndex((mulai?0:1),true);
                  player.setSelectedIndex((xx?0:1),true);
                  tampil.setCurrent(menu_opsi);
            }

            if (c==cmd_simpan){
                  mulai = (xxx.getSelectedIndex()==0?true:false);
                  xx = (player.getSelectedIndex()==0?true:false);
                  levenya = level.getSelectedIndex();
                  nama = teksname.getString();
                  if (nama.length()==0) {
                        teksname.setString("Anda");
                        nama="Anda";
                  }


            Diatas adalah statement untuk menu serta variable yang digunakan serta proses selanjutnya yang ada pada menu saat disimpan.
                  Alert msg = new Alert("Pengaturan disimpan","",
                        null, AlertType.INFO);
                  msg.setTimeout(2500);
                  tampil.setCurrent(msg,KANPAS);
            }
      }
            Jika proses penyimpanan berhasil maka akan muncul peringatan ‘pengaturan telah disimpan”.
      private void startNewRound(){
            ditungguin = false;

            BS.gameReset();
            KANPAS.repaint();

            BS.setDifficulty(levenya);
            BS.setPlayerTurn(mulai);
            if (mulai) {if (!xx) BS.switchSymbol();}
            else {if (xx) BS.switchSymbol();}
     
            kmptr = level.getString(
                  level.getSelectedIndex()) + " Komputer";

            pilih_aja[0]=0;
            pilih_aja[1]=0;

            if (!mulai) {
                  compMakeMove();
                  KANPAS.repaint();
            }
            ditungguin = true;
      }
      protected void endGame(int result){
            String rndComment[] = {"mengalahkan"};

            String title="",text="",comment="";
            Random rnd = new Random(System.currentTimeMillis());
            switch (result){
            case 0:
                  seti++;
                  title = "Draw!";
                  text = ".";
                  break;
            case 1:
                  menang++;
                  title = "menaaang!";
                  comment = rndComment[Math.abs(rnd.nextInt())%rndComment.length];
                  text = nama + " " + comment + " " + kmptr;
                  break;
            case 2:
                  kalah++;
                  title = "mengalahkan!";
                  comment = rndComment[Math.abs(rnd.nextInt())%rndComment.length];
                  text = kmptr + " " + comment + " " + nama;
                  break;
            default:
            }

            Penjelasan untuk barisan statement di atas adalah, saat memulai permainan tampil papan permainan, dan bermain akan di panggil terlebih dulu kelas untuk level komputernya, lalu giliran main pertama dan symbol yang dipakai, setelah selesai permainan maka akan muncul peringatan menang, kalah atau Draw dan muncul nama yang digunakan sebagai pemain.
            startNewRound();
            Alert msg = new Alert(title,text,null, AlertType.INFO);
            msg.setTimeout(3000);
            tampil.setCurrent(msg,KANPAS);
      }

            protected void playerMakeMove(){
            if (BS.placeMove(pilih_aja[0],pilih_aja[1])){
                  ditungguin=false;


                  KANPAS.repaint();
                  KANPAS.serviceRepaints();

                  if (BS.checkWin()) {endGame(1); return;}
                  if (BS.checkDraw()) {endGame(0); return;}
                  compMakeMove();
            }
      }
protected void compMakeMove(){

            BS.computeMove();
            KANPAS.repaint();
            KANPAS.serviceRepaints();

            if (BS.checkWin()) {endGame(2); return;}
            if (BS.checkDraw()) {endGame(0); return;}

            ditungguin=true;
      }
}
Peringatan akan muncul selama waktu yang ditentukan, dan jika telah muncul peringatan maka proses selanjutnya score permainan akan tersimpan secara otomatis dan akan mulai permainan selanjutnya.
Uji Coba Program

Uji coba program merupakan hal paling akhir yang dilakukan penulis dalam membangun aplikasi permainan TicTacToe ini. Pada bagian ini penulis mencoba untuk menguji apakah program yang dibuat telah sesuai dengan rancangan awal yang dibuat, dan jalannya program telah sesuai dengan alur yang diharapkan. Untuk menjalankan program, penulis menggunakan sebuah emulator ponsel DefaultColorPhone pada WTK 2.5.2. Emulator ini dapat berfungsi sebagai sebuah ponsel virtual yang dijalankan pada PC, dan memiliki fungsi serta spesifikasi (fitur, warna, dimensi layar, tombol, suara, dan lainnya) yang sama seperti pada ponsel yang sebenarnya. Pada saat dijalankan, emulator ini akan tampak sebagai berikut :
Layar Menu

Pada saat aplikasi permainan TicTacToe dibuka pertama kali pada ponsel, tampilan layar akan tampak sebagai berikut :

Tampilan Menu ”Pengaturan”

Menu Pengaturan terdiri dari satu buah text field untuk memasukkan nama pemain dan 3 buah pilihan, yaitu ”Level”, ”Giliran bermain” dan ”Simbol”, yang memiliki nilai yang dapat diubah. Untuk pengaturan jika seting ingin disimpan maka pilih simpan dan jika ingin langsung kembali pada permainan tanpa mengubah seting apapun pilih batal. Tampilan untuk layar pengaturan seperti dibawah ini :



Layar Permainan
Pada saat membuka aplikasi pemain akan langsung memainkan permainan baru, seperti yang telah dijelaskan diatas peraturan permainan adalah membentuk susunan bentuk yang sama secara horizontal, vertical maupun diagonal, contohnya seperti dibawah ini :

Untuk mengoperasikan permainan, pemain hanya perlu menggunakan tombol navigasi yang ada pada ponsel untuk menentukan jalannya target sasaran dan untuk membentuk item menggunakan tombol center key jika menggunakan emulator pada WTK dan tombol 5 pada ponsel.