Camp0er Ad0ek Jadi 1

Internationalization dan Localization

Posted by: Glorious on: August 1, 2008

Mungkin Anda sudah pernah mendengar, melihat atau bahkan sudah terbiasa dengan istilah Internationalization dan Localization. Hm, mungkin bagi yang sudah tahu tentang topik ini bisa memberikan komentar demi menambah kelengkapan isi tulisan ini.

Ok, kita bahas istilah yang pertama dulu…

Internationalization seringkali disebut dengan singkatan i18n, artinya bahwa terdapat 18 huruf diantara huruf pertama dan terakhir. Internationalization merupakan proses atau prosedur dalam perancangan suatu aplikasi, sehingga memungkinkan penyesuaian atau adaptasi terhadap berbagai bahasa, negara, format penulisan angka maupun pengaturan-pengaturan lainnya yang bersifat spesifik dengan mudah. Dengan kata lain, internationalization merupakan prosedur generalisasi suatu aplikasi.

Bagaimana dengan localization???

Seperti halnya internationalization, istilah localization juga sering disebut dengan singkatan l10n, yang artinya terdapat 10 huruf diantara huruf pertama dan terakhir. Localization merupakan prosedur yang memakai format pengaturan yang spesifik. Misal, dalam suatu aplikasi, angka-angka dalam suatu aplikasi harus ditampilkan dengan format penulisan tata bahasa Inggris.

Kedua istilah ini sebenarnya sangat berkaitan. Internationalization dilakukan dengan tujuan agar localization dapat dilakukan dengan mudah.

Hm, contoh penggunaannya seperti apa ya?

  • tanpa i18n

Class berikut adalah contoh program yang tidak melakukan prosedur internationalization.

package com.goglo.i18n;
public class NoI18n {
public static void main(String[] args) {
System.out.println("Halo, nama saya Glory!");
}
}

  • dengan i18n

Buatlah sebuat file dan namai goglo.properties. File ini berisi kode bahasa dan kode negara yang akan digunakan.

lang.code = id
country.code = ID

Kemudian, buat lagi sebuah file dengan nama id_ID.dict yang berisi cara memperkenalkan diri dalam bahasa Indonesia.

say.hello = Halo, nama saya Glory!

Terakhir, buat sebuah class dengan nama WithI18n.java

package com.goglo.i18n;

import java.io.IOException;
import java.util.Properties;

public class WithI18n {

public static void main(String[] args) throws IOException {
Properties gogloProp = new Properties();

//load input stream to properties object gogloProp.load(WithI18n.class.getResourceAsStream("goglo.properties"));

//get languange code and country code
String langCode = gogloProp.getProperty("lang.code");
String countryCode = gogloProp.getProperty("country.code");

//use appropriate language on correct country
Properties idProp = new Properties();

//load file based on lang.code and country.code idProp.load(WithI18n.class.getResourceAsStream(langCode+"_"+countryCode+".dict"));

//print
System.out.println(idProp.getProperty("say.hello"));
}
}

Program di atas dapat menampilkan ucapan perkenalan diri dalam bahasa apapun dengan memodifikasi file goglo.properties dan menambahkan file dictionary untuk bahasa tersebut. Memang kelihatannya program menjadi cukup rumit dengan penerapan internationalization. Tetapi, hal ini memberikan kemudahan bagi software developer yang ingin mengembangkan suatu project berdaya jual global.

Leave a Reply

RSS zerioz[dot]com

  • IDE temanku yg aneh (2)
    IDE temanku yang aneh akhirnya bisa ak perbaiki deh. Hebat khan??? *narsis*.
  • IDE temanku yg aneh
    Ak lupa perbaiki IDE yang aneh punya temanku di kantor
  • Mimpi ato kenyataan nih…
    Hallo, teman2… mau share nih tentang mimpi. Ak tuh dari kecil sampe sekarang masih penasaran sama yang namanya mimpi. Kata orang sih, mimpi itu bunganya tidur, dan ada sebagian orang yang percaya bahwa mimpi bakal jadi kenyataan atau pertanda akan terjadi sesuatu di masa depan. Menurut ahlinya, mimpi itu sering terjadi pada saat kondisi tidur REM [...]

Blog Stats

  • 954 hits