Camp0er Ad0ek Jadi 1

Kali ini saya akan share tentang cara untuk melakukan format pada angka dengan bahasa pemrograman Java. Kadang-kadang kita butuh hasil format untuk ditampilkan pada report, resi transaksi atau halaman web.

Berikut ini contoh code yang dapat dipakai:

DecimalFormatSymbols dfSymbol = new DecimalFormatSymbols(new Locale("id", "ID"));

NumberFormat df = new DecimalFormat("#,##0.00", dfSymbol);

System.out.println("result: " + df.format(2500.8));

Locale ditambahkan pada DecimalFormatSymbols untuk mendapatkan hasil format yang sesuai dengan kode locale yang diberikan. Misal, pada contoh di atas diisi dengan kode bahasa dan negara Indonesia. Daftar semua kode bahasa dan negara dapat diperoleh dari website berikut ini:

http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt

http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html

Selamat mencoba!

Komodo is the only living dragon in the world. It lives freely in National Park, East Nusa Tenggara, Indonesia. It’s now becoming one of the finalists of New7Wonders of Nature.

If you’re proud to be Indonesian, please vote it to become one of the world 7 wonders of nature.

To vote, you can use some ways:

(1) Open the official website of this event, http://www.news7wonders.com, and go to VOTE tab. Select 7 of the finalists. Make sure that you also select KOMODO!!!

(2) Still in the website, see how to vote via phone line.

(3) The last, the easiest way to do. Vote with SMS. Just type KOMODO and then send to 9818. FREE SMS for Telkomsel, XL and Indosat. So, nothing to lose guys!

Vote Komodo, bring Indonesia to the world.

Ga terasa yah… ternyata Indonesia, negara kita tercinta ini hampir genap 63 tahun menghirup udara kemerdekaan. Tepatnya pada tanggal 17 Agustus 2008.

Teeeetttttt!!!!!!!!.

Kalo dipikir-pikir, Indonesia sudah sangat matang jika dipandang dari usia kemerdekaannya. Jika dipersonifikasikan sebagai manusia, Indonesia seharusnya tampil bak seorang prajurit yang gagah, berani, tangkas, mandiri dan berkompeten.

Tapi, what now?

Walopun sudah merdeka sejak 63 tahun yang lalu, Indonesia tetap saja dirundung banyak masalah. Masalah pendidikan, kriminalitas, kebudayaan, kesehatan, korupsi, bahan bakar minyak dan masih banyak lagi masalah lainnya… IMHO, terdapat 2 poin penting yang menjadi ujung pangkal dari semua masalah ini yaitu ekonomi dan hukum. Saya pikir, perbaikan dan peningkatan taraf hidup (ekonomi) rakyat Indonesia akan mampu menghapus masalah pendidikan bagi rakyat miskin, kesehatan (gizi buruk, dll), atau bahkan tindak kriminal yang akhir-akhir ini banyak disebabkan oleh masalah ekonomi. Pasti tau khan… pembunuhan berantai yang dilakukan oleh Jagal dari Jombang (Ryan)?. Salah satu faktor penyebab tindak kriminal ini, tidak lain dan tidak bukan, adalah lagi-lagi masalah ekonomi, walopun ini bukanlah faktor penyebab tunggal.

Indonesia juga kayaknya perlu menegakkan hukum setegak-tegaknya supaya kehidupan rakyat semakin tertib dan aman. Kalo kondisi tertib dan aman… khan enak tuh untuk cari duit, buka usaha ato melakukan investasi properti. Atau bahkan, keamanan yang kondusif dapat mengundang kedatangan para investor asing untuk menghamburkan duitnya ke Indonesia. Ujung-ujungnya, Indonesia pasti memperoleh profit yang dapat digunakan untuk pembangunan.

O iya, Indonesia juga sepertinya perlu mendaftar ulang semua warisan budaya (heritage) milik asli Bumi Indonesia Tercinta iniiiii…. supaya tidak ada lagi kejadian baku rampas warisan budaya dengan negeri tetangga yang ras-nya memang masih serumpun itu. Dasar!

Hm, semangaatt banget yahhh, soalnya hampir tanggal 17 Agustus sih…. he3

Selain sejumlah ketertinggalan di atas, Indonesia masih mempunyai segudang prestasi lohhh… antara lain dibidang Olahraga (Olimpiade, Catur, dll), Olah Vokal (Grand Champion di World Choir 2008, bahkan tahun2 sebelumnya juga menang), Sains (Olimpiade Physics, Math, Biology, Chemistry, dll), dan masih banyak lagi prestasi lainnya… dan yang mungkin akan semakin bertambah banyak seiring dengan bertambahnya usia kemerdekaan Republik Indonesia (jawi:mokso). Ha3.

Menyinggung dikit tentang Olimpiade Beijing tahun ini…. ada beberapa hal yang spesial. Pertama, Opening Ceremony diselenggarakan pada tanggal 08-08-2008 yang diyakini sebagai hari keberuntungan oleh bangsa China, karena mengandung angka 8. Bahkan, di Indonesia sendiri ada perusahan yang bergerak dibidang properti yang memulai penjualan propertinya pada tanggal tersebut. Tapi, ada juga sebagian dari mereka yang percaya pada angka 7 sebagai angka keberuntungan. Kedua dan terakhir, tim bulutangkis tunggal putri, Maria Kristin, berhasil masuk ke babak semi final setelah menundukkan lawan mainnya Nehwal dari India. Maria Kristin menjadi putri Indonesia yang ketiga setelah Susi Susanti dan Mia Audina yang berhasil masuk ke semi final Olimpiade. Hebat khan… Tapi, di babak semi final, dia akan menghadapi unggulan kedua China, Zhang Ning. Moga-moga bisa menang, walopun kecil sekali kemungkinannya….

Ayo Indonesia, Kamu Pasti Bisa!!!!!!!!!!!!!!

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.

Untuk kesempatan ini, saya akan membahas tentang framework iBatis. Bagi sebagian orang mungkin topik yang saya angkat ini sudah usang atau basi, tapi bagi saya masih layak/menarik untuk dipelajari dan didalami. Selain itu, saya mempelajari iBatis dengan tujuan untuk membandingkan iBatis dengan persistence framework lainnya seperti Hibernate dan Java Persistence API (JPA).

So, apa yang dimaksud dengan iBatis?

iBatis merupakan sebuah persistence framework yang dapat digunakan untuk memetakan query SQL ke Plain Old Java Objects (POJOs). Class POJO berisi sejumlah variabel beserta method setter() dan getter(). Query SQL bersifat decoupled terhadap aplikasi yang dikembangkan, sebab ditempatkan pada file-file XML. Jadi, kita bebas mengganti query yang akan digunakan. Oleh karena iBatis menggunakan query SQL, bukannya menggunakan query language yang baru, maka iBatis lebih portable terhadap database yang berbeda jika dibandingkan dengan Hibernate yang menggunakan Hibernate Query Language (HQL).

Selain itu, penggunaan SQL di iBatis juga meyakinkan kita bahwa hasil query yang akan diperoleh merupakan hasil yang dinginkan. Jika menggunakan Hibernate Query Language (HQL), query yang kita tulis akan dikonversi lagi oleh converter engine, yang telah disediakan Hibernate, menjadi query SQL. Nah, query SQL hasil proses konversi ini yang menimbulkan keraguan walaupun mungkin Hibernate sudah men-generate query SQL dengan metode atau algoritma yang dapat diandalkan. Tetapi, tetap saja kita tidak benar-benar yakin akan hasil query yang dikembalikan.

Infrastruktur dan konfigurasi iBatis seperti apa?

iBatis mempunyai 2 macam file konfigurasi, yaitu :

  • File XML yang berisi deklarasi dari domain object seperti pemetaan nama kolom-kolom di tabel dengan pasangannya masing-masing di domain object atau class POJO. Selain itu, query-query SQL yang sekiranya akan digunakan dalam aplikasi dapat ditempatkan juga pada file ini atau dapat juga ditambahkan dalam proses development nantinya.

Contoh :

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”no”?>

<!DOCTYPE sqlMap PUBLIC “-//iBATIS.com//DTD SQL Map 2.0//EN”

http://www.ibatis.com/dtd/sql-map-2.dtd”&gt;

<sqlMap>

<typeAlias type=”com.goglo.ibatis.Item” alias=”item”/>

<resultMap class=”item” id=”result”>

<result property=”NItemId” column=”n_item_id”/>

<result property=”VNmItem” column=”v_nm_item”/>

<result property=”DCreate” column=”d_create”/>

</resultMap>

<select id=”getAllItems” resultMap=”result”>

select * from Item

</select>

</sqlMap>

  • File sentral yang berisi informasi lokasi dari masing-masing file konfigurasi yang pertama disebutkan di atas.

    Contoh :

<?xml version=”1.0″ encoding=”UTF-8″ ?>

<!DOCTYPE sqlMapConfig

PUBLIC “-//iBATIS.com//DTD SQL Map Config 2.0//EN”

http://www.ibatis.com/dtd/sql-map-config-2.dtd”&gt;

<sqlMapConfig>

<sqlMap resource=”Coba.xml” />

</sqlMapConfig>


Tags:

I get this article from this link : http://blogs.techrepublic.com.com

Programmers enjoy a reputation for being peculiar people. In fact, even within the development community, there are certain programmer archetypes that other programmers find strange. Here are 10 types of programmers you are likely to run across. Can you think of any more?

Note: This information is also available as a PDF download.

#1: Gandalf

This programmer type looks like a short-list candidate to play Gandalf in The Lord of the Rings. He (or even she!) has a beard halfway to his knees, a goofy looking hat, and may wear a cape or a cloak in the winter. Luckily for the team, this person is just as adept at working magic as Gandalf. Unluckily for the team, they will need to endure hours of stories from Gandalf about how he or she to walk uphill both ways in the snow to drop off the punch cards at the computer room. The Gandalf type is your heaviest hitter, but you try to leave them in the rear and call them up only in times of desperation.

Luckily for the team, this person is just as adept at working magic as Gandalf. Pretty cool!

#2: The Martyr

In any other profession, The Martyr is simply a “workaholic.” But in the development field, The Martyr goes beyond that and into another dimension. Workaholics at least go home to shower and sleep. The Martyr takes pride in sleeping at the desk amidst empty pizza boxes. The problem is, no one ever asked The Martyr to work like this. And he or she tries to guilt-trip the rest of the team with phrases like, “Yeah, go home and enjoy dinner. I’ll finish up the next three week’s worth of code tonight.”

No way, i don’t wanna be like this one

#3: Fanboy

Watch out for Fanboy. If he or she corners you, you’re in for a three-hour lecture about the superiority of Dragonball Z compared to Gundam Wing, or why the Playstation 3 is better than the XB 360. Fanboy’s workspace is filled with posters, action figures, and other knick-knacks related to some obsession, most likely imported from Japan. Not only are Fanboys obnoxious to deal with, they often put so much time into the obsession (both in and out of the office) that they have no clue when it comes to doing what they were hired to do.

Not me 😉

#4: Vince Neil

This 40-something is a throwback to 1984 in all of the wrong ways. Sporting big hair, ripped stonewashed jeans, and a bandana here or there, Vince sits in the office humming Bon Jovi and Def Leppard tunes throughout the workday. This would not be so bad if “Pour Some Sugar on Me” was not so darned infectious.

Vince is generally a fun person to work with, and actually has a ton of experience, but just never grew up. But Vince becomes a hassle when he or she tries living the rock ‘n roll lifestyle to go with the hair and hi-tops. It’s fairly hard to work with someone who carries a hangover to work every day.

Not cool!

#5: The Ninja

The Ninja is your team’s MVP, and no one knows it. Like the legendary assassins, you do not know that The Ninja is even in the building or working, but you discover the evidence in the morning. You fire up the source control system and see that at 4 AM, The Ninja checked in code that addresses the problem you planned to spend all week working on, and you did not even know that The Ninja was aware of the project! See, while you were in Yet Another Meeting, The Ninja was working.

Ninjas are so stealthy, you might not even know their name, but you know that every project they’re on seems to go much more smoothly. Tread carefully, though. The Ninja is a lone warrior; don’t try to force him or her to work with rank and file.

Real, i wanna be like this one ;

#6: The Theoretician

The Theoretician knows everything there is to know about programming. He or she can spend four hours lecturing about the history of an obscure programming language or providing a proof of how the code you wrote is less than perfectly optimal and may take an extra three nanoseconds to run. The problem is, The Theoretician does not know a thing about software development. When The Theoretician writes code, it is so “elegant” that mere mortals cannot make sense of it. His or her favorite technique is recursion, and every block of code is tweaked to the max, at the expense of timelines and readability.

The Theoretician is also easily distracted. A simple task that should take an hour takes Theoreticians three months, since they decide that the existing tools are not sufficient and they must build new tools to build new libraries to build a whole new system that meets their high standards. The Theoretician can be turned into one of your best players, if you can get him or her to play within the boundaries of the project itself and stop spending time working on The Ultimate Sorting Algorithm.

Theory is kind of challenging stuff till it hurts.

#7: The Code Cowboy

The Code Cowboy is a force of nature that cannot be stopped. He or she is almost always a great programmer and can do work two or three times faster than anyone else. The problem is, at least half of that speed comes by cutting corners. The Code Cowboy feels that checking code into source control takes too long, storing configuration data outside of the code itself takes too long, communicating with anyone else takes too long… you get the idea.

The Code Cowboy’s code is a spaghetti code mess, because he or she was working so quickly that the needed refactoring never happened. Chances are, seven pages’ worth of core functionality looks like the “don’t do this” example of a programming textbook, but it magically works. The Code Cowboy definitely does not play well with others. And if you put two Code Cowboys on the same project, it is guaranteed to fail, as they trample on each other’s changes and shoot each other in the foot.

Put a Code Cowboy on a project where hitting the deadline is more important than doing it right, and the code will be done just before deadline every time. The Code Cowboy is really just a loud, boisterous version of The Ninja. While The Ninja executes with surgical precision, The Code Cowboy is a raging bull and will gore anything that gets in the way.

I want fast and clean code

#8: The Paratrooper

You know those movies where a sole commando is air-dropped deep behind enemy lines and comes out with the secret battle plans? That person in a software development shop is The Paratrooper. The Paratrooper is the last resort programmer you send in to save a dying project. Paratroopers lack the patience to work on a long-term assignment, but their best asset is an uncanny ability to learn an unfamiliar codebase and work within it. Other programmers might take weeks or months to learn enough about a project to effectively work on it; The Paratrooper takes hours or days. Paratroopers might not learn enough to work on the core of the code, but the lack of ramp-up time means that they can succeed where an entire team might fail.

Awesome!

#9: Mediocre Man

“Good enough” is the best you will ever get from Mediocre Man. Don’t let the name fool you; there are female varieties of Mediocre Man too. And he or she always takes longer to produce worse code than anyone else on the team. “Slow and steady barely finishes the race” could describe Mediocre Man’s projects. But Mediocre Man is always just “good enough” to remain employed.

When you interview this type, they can tell you a lot about the projects they’ve been involved with but not much about their actual involvement. Filtering out the Mediocre Man type is fairly easy: Ask for actual details of the work they’ve done, and they suddenly get a case of amnesia. Let them into your organization, though, and it might take years to get rid of them.

Never!

#10: The Evangelist

No matter what kind of environment you have, The Evangelist insists that it can be improved by throwing away all of your tools and processes and replacing them with something else. The Evangelist is actually the opposite of The Theoretician. The Evangelist is outspoken, knows an awful lot about software development, but performs very little actual programming.

The Evangelist is secretly a project manager or department manager at heart but lacks the knowledge or experience to make the jump. So until The Evangelist is able to get into a purely managerial role, everyone else needs to put up with his or her attempts to revolutionize the workplace.

Not good

I don’t wanna be one of them …

I wanna be myself by absorbing the best quality, each of them ^_^

Shortcut apa lagi ya? … 😀

Dalam IDE Eclipse sebenarnya banyak sekali shortcut yang bisa dimanfaatkan untuk mempercepat pengembangan project yang sedang dikerjakan.

  1. Ctrl + O : dipakai untuk mencari letak suatu method dalam class yang sedang di-edit. Kita dapat memasukkan sebagian atau seluruh nama method sebagai kriteria pencariannya.
  2. Ctrl + I : dipakai untuk meratakan coding yang dipilih agar lebih mudah dibaca.
  3. Ctrl + / : menambahkan toggle comment, //, pada baris coding yang dipilih.
  4. Ctrl + Shift + / : menambahkan block comment, /* … */, pada coding yang dipilih.
  5. Ctrl + \ : membatalkan toggle comment.
  6. Ctrl + Shift + \ : membatalkan block comment.
  7. Ctrl + Shift + M : menambahkan import class yang diperlukan pada coding yang pilih.
  8. Ctrl + Shift + O : menambahkan import class yang diperlukan pada classyang sedang di-edit.

Segitu dulu ya, nanti disambung lagi.

To be continued…