Exception Handling di Java

Pada dasarnya Exception di dalam Java merupakan sebuah keadaan yang tidak normal yang terjadi pada saat program dijalankan. Oleh karena itu, exception ini bisa ditangani di dalam Java dengan menggunakan block try,catch dan finally. Ketika didalam program kita terdapat error pada saat dijalankan maka secara otomatis program tersebut akan berhenti di tengah jalan dan tidak melanjutkan baris perintah yang lain yang harus dilakukan program setelah baris perintah yang menyebabkan error. Permasalahan seperti ini bisa diselesaikan dengan Exception Handling Sehingga dengan menggunakan Exception Handling kita dapat mencegah terjadinya runtime error yang menyebabkan program kita berhenti ditengah tengah jalan.
Contoh sederhana exception didalam program misalnya membagi sebuah bilangan dengan angka 0.
Perhatikan contoh berikut ini :

public class TestException 
{
     public static void main(String[] args) {
          int a = 10;
          int b = 0;
          try {
               System.out.println("Hasil A / B = " + (a/b));
          }catch (Exception ex) {
               System.out.println("Maaf terjadi error pada saat nilai b = 0");
          }
          finally {
               System.out.println("Error ataupun tidak, bagian ini tetap dijalankan");
          }
     }
}

Block try digunakan untuk menulis semua baris perintah yang dianggap menyebabkan error pada saat program di jalankan.
Block catch digunakan untuk menulis semua baris perintah ketika terjadi error pada baris perintah yang ada pada block try.
Block finally bersifat optional dan akan jalankan walaupun hasil pada block try error ataupun tidak.

Sumber : Google

Semoga membantu 🙂

Implementasi RMI pada C# dengan SCS

SCS merupakan framework yang berjalan diatas .NET 4.0
Framework ini bisa kita gunakan untuk mengimplementasikan RMI (Remote Method Invocation). SCS menggunakan protokol TCP untuk bertukar informasi antara host yang satu dengan yang lain. SCS itu sendiri menggunakan teknik komunikasi 2 arah, client-server dan server-client. Detail penjelasan mengenai framework ini bisa dicari di google 🙂

Oke langsung saja kita praktekan :
1. Buatkan project dengan tipe Library untuk mendefinisikan service yang akan digunakan dengan nama misalnya “SimpleSCSLib”.

2. Buatkan interface dengan nama Inf_SimpleSCS.

[ScsService(Version = "1.0.0.0")]
    public interface Inf_SimpleSCS
    {
        string getHelloWorld();
    }

3. Sekarang kita buat 1 project lagi yang akan bertindak sebagai server dengan type project adalah ConsoleApplication dengan nama “ServerSide_SCS”.

4. Didalam project server ini dibuat sebuah kelas baru yang akan mengimpelementasikan fungsi yang sudah kita buat di library tadi. (Jangan lupa untuk menambahkan referenesi SCS dan SimpleSCSLib kedalam project server).
Kelas yang dibuatkan adalah “ServerSCS_Service”

    [Serializable]
    public class ServerSCS_Service: ScsService, Inf_SimpleSCS
    {
        string getHelloWorld()
        { return "Hello World" }
    }

5. Setelah itu kita buatkan kelas untuk mengetes dan menjalankan service di sisi server.

    public class Program
    {
        static void Main(string[] args)
        {
            var server = ScsServiceBuilder.CreateService(new ScsTcpEndPoint(10048));
            server.AddService<Inf_SimpleSCS, ServerSCS_Service>(new ServerSCS_Service());
            server.Start();
            Console.WriteLine("Server ON, ...");
            Console.ReadLine();
            server.Stop();
        }
    }

6. Langkah selanjutnya kita buatkan sisi clientnya dengan membuat project baru dengan tipe ConsoleApplication juga tetapi dengan nama “ClientSideSCS”. Didalam project ini kita tambahkan sebuah kelas yang baru untuk melakukan tes terhadapa service dari server dengan port 10048.

class Program
    {
        static void Main(string[] args)
        {
            var client = ScsServiceClientBuilder.CreateClient<Inf_SimpleSCS>(new ScsTcpEndPoint("127.0.0.1", 10048));

            Console.WriteLine("Tekan enter untuk koneksi ke server ...");
            Console.ReadLine();

            client.Connect();

            var teks = client.ServiceProxy.getHelloWorld();
            if (teks != null)
            {
                Console.WriteLine("Isi teks dari server adalah : {0}",teks);
            }
            else
            {
                Console.WriteLine("tidak ada.. !");
            }

            Console.WriteLine();
            Console.WriteLine("putus....");
            Console.ReadLine();

            client.Disconnect();
        }
    }

Dari contoh diatas bisa dikembangkan untuk proses yang lainnya seperti mengakses database dan lain-lain. Happy Coding.. 🙂

Openbravo (ERP Opensource)

Setelah beberapa waktu browsing sana-sini untuk cari referensi akhirnya sudah bisa menggunakan OpenBravo. Openbravo cukup handal dengan fitur2 yang telah disediakan (Procurement, warehousing, dll). Detail bisa dibaca disini nih !.

Selamat membaca.. 🙂

Materi OOP yang dipelajari sendiri.

Bagi teman-teman yang mengambil kelas untuk matakuliah OOP setiap Senin, 18:00-20:00 trimester 3 tahun ajaran 2010/2011, silahkan pelajari secara mandiri materi mengenai “Constructor dan Overloading”. Bahan bisa diperoleh dari sini atau salah satu link dibawah ini :

1. Konstruktor
2. Method Overloading
3. Pilihan terakhir Google 🙂 :p (Kalo yang ini sudah jelas linknya ada)

Selamat belajar.

Konstruktor dan Overloading pada Java

Konstruktor
Konstruktor pada Java merupakan method khusus yang dipakai oleh Java untuk membuat sebuah object didalam kelas dan tiap kelas boleh memiliki lebih dari satu konstruktor.
Karakteristik konstruktor :
1. Nama Konstruktor = Nama Kelas
2. Tidak mengembalikan nilai termasuk void.
3. Cara menggunakan konstruktor adalah dengan menggunakan kata kunci new.
Jika didalam kelas tidak dituliskan konstruktor, Java akan secara default menambahkan konstruktor kosong kedalam kelas tersebut.

Overloading
Overloading di Java diterpakan didalam method/fungsi. Dengan overloading dapat dibuat method dengan nama yang sama tetapi berbeda parameternya. Java sendiri akan menggunakan daftar parameter-parameter itu sebagai acuan untuk method manakah yang akan dijalankan.

contoh penggunaan konstruktor dan overloading :

class Mahasiswa {
  String nama;
  String jenkel;
  
  void setNilai(String nama){
   this.nama = nama;
  }
  
  void setNilai(String nama,String jenkel){
   this.nama = nama;
   this.jenkel = jenkel; 
  }
  
  void cetak(){
   System.out.println(this.nama + " adalah " + this.jenkel);
  }
}

class DemoMahasiswa{
 public static void main(String args[]){
  Mahasiswam1,m2;
  m1 = new Mahasiswa();
  m2 = new Mahasiswa();
  
  m1.setNilai("Vyor");  
  m2.setNilai("Vyor","laki-Laki");  
  m1.cetak();
  m2.cetak();    
 }
}

About Me.

Nama : Vyorbigger B. Oppier, S. Kom

Email :

  • vyor.cs@gmail.com
  • vyorfti2k03@yahoo.com

Phone No : +6285225634372

Programming Language :

  • JAVA
  • X++
  • C/C++
  • PASCAL
  • C#

Berikut adalah beberapa dari project yang pernah saya kembangkan dan program aplikasi yang pernah saya develop.

  • Tim Pengembangan pustaka open source(openlib) untuk Bahasa C pada Linux dan Windows. (2006) 2.
  • Tim pengembangan ERP untuk PT. Dhemar Nusantara di Semarang, Jawa Tengah. (Java – 2007)
  • Tim Pengembangan E-Service untuk UKM di Jawa Tengah. (Java – 2007)
  • Website Kel. Woloan 2. (Php – 2007)
  • Tim Pengembangan Website Komunitas. (Java – 2008)
  • Sistem Informasi Kerja Praktek dan Tugas Akhir Fakultas Teknologi Informasi UKSW. (Java – 2008)
  • Sistem Tes Online Untuk Praktikum pada Fakultas Teknologi Informasi UKSW. (Java – 2008)
  • Aplikasi POS untuk Distributor Oriflame Salatiga. (Java – 2009)
  • Sistem Informasi Absesnsi Kepegawaian Dinas Kepegawaian Kabupaten Seram Bagian Barat-Maluku berbasis barcode. (Java – 2009)
  • Aplikasi POS dan Transaksi Keuangan CV. Imannuel – Maluku Utara. (Java – 2010)
  • Aplikasi POS untuk Koperasi IKASATYA-UKSW. (Java – 2010)
  • Sistem Pendukung Keputusan untuk pegawai bukan dosen di UKSW. (Java – 2010)
  • Sistem Informasi untuk bagian produksi untuk PT. Korindo Group. (Java – 2010)
  • Aplikasi pemodelan proses bisnis untuk penentuan tender Dinas Pekerjaan Umum Provinsi Maluku (Java – 2010)
  • AHP System untuk proses pemilihan Sistem Kredit PT. Bank Maluku (Java – 2010)
  • Simple Datamining Application dengan algoritma ISE/Incremental Sequence Extraction. (Java – 2010)
  • Perancangan Sistem Informasi untuk Guru. (Java – 2011) 19. Perancangan Sistem Informasi Akademik untuk SMU. (Java – 2011)
  • Sistem Perkreditan untuk kontraktor dan developer pembangunan perumahan, Manado (Java – 2011)
  • Sistem Informasi Geografis untuk pemetaan pola tanam pada Kabupaten Boyolali (Java – 2011)
  • Sistem Informasi Geografis untuk pemetaan persebaran Gereja menggunakan (C# – 2011)
  • Sistem Informasi Keuangan  dan Penjualan Buku Sinode GKJ – Salatiga menggunakan (Java – 2011).
  • Core Banking System (Bank Perkreditan Rakyat) berbasis web (Java 2011 – 2012).
  • Data Repository Fakultas Teknologi Informasi Universitas Kristen Satya Wacana (Java 2012).
  • Sistem Perkreditan Motor (Java – 2012)
  • e-Procurement untuk CV. Fandi (Java – 2012)
  • Prototype Sistem Informasi Akademik untuk Universitas Halmahera Utara, Tobelo berbasis SMS Gateway(Java – 2012)
  • Sistem Informasi Pemetaan Pasar Tradisional untuk Kementrian Perdagangan RI (Java – 2014)
  • Sistem Informasi Keuangan PT. PDAU – Salatiga (Java – 2015)

Microsoft Dynamics Ax

  • Implementation n development team Unit Kemitraan Balaraja PT. Sierad Produce. (Banten, 2010)
  • Implementation n development team PT. MUS (Mitra Unggas Sejati) PT. Wonokoyo Group (Surabaya, 2011)
  • Implementation n development team Unit Feedmill Balaraja PT. Sierad Produce. (Banten, 2011)
  • Implementation n development team PT. EWSI Indonesia (Purwakarta, 2011)
  • Implementation n development team PT. Data Center Indonesia (Jakarta, 2013)
  • Implementation n development team PT. Indoninternet (Jakarta, 2013 – 2014)
  • Implementation n development team PT. Citatah (Jakarta, 2014 – 2015)
  • Implementation n development team PT. Wiragarda (Jakarta, 2014 – 2015)
  • Implementation n development team PT. TKPN (Semarang, 2016)

 

Note :

** Menerima trainning Pemrograman untuk bahasa yang saya sebutkan diatas.

** Menerima request untuk pembuatan aplikasi bisnis dan non-bisnis.

** No Rekening : 1350005263478 a/n Vyorbigger Bilnozry Oppier (Bank Mandiri)

** No Rekening : 0130956785 a/n Vyorbigger Bilnozry Oppier (BCA)