2008/11/9 Yohanes Nugroho <[EMAIL PROTECTED]>:
>
> Di Symbian (apalagi versi awal), memorinya sangat terbatas dan tidak
> ada paging. Jadi mereka "mewajibkan" program untuk menangani eksepsi
> dalam  alokasi memori (karena kemungkinan gagalnya sangat tinggi).
> Mereka punya idiom khusus (2 stage constructor) untuk menangani
> eksepsi pada saat penciptaan objek. API milik symbian juga sebagian
> besar melempar exception.
>
Exception memang diperlukan seandainya kita melakukan fungsi yang mungkin gagal
di constructor. Tapi kita bisa workaround, dengan melakukan operasi yang pasti
berhasil di constructor. Sedangkan yang tidak pasti, bisa dipindahkan
ke "init" function.

Google juga punya special restriction untuk penggunaan exception di
semua C++ code-nya.
http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Doing_Work_in_Constructors

> Yah intinya sih: kalo tidak percaya, coba deh mengembangkan aplikasi
> Symbian s60 1st/2nd edition atau UIQ 2. Itu adalah lingkungan
> pengembangan yang paling saya benci. Walau demikian saya punya proyek
> open source pembaca Alkitab untuk Symbian sejak 2003 dan sudah saya
> porting ke hampir semua versi Symbian yang ada
> (http://compactbyte.com/symbianbible).
>

Percaya, saya percaya :)
Untungnya saya tidak bekerja di mobile device. Embedded yang saya
kerjakan biasanya
untuk transport atau access optical, jadi memory-nya tidak terlalu terbatas.

Kadang kalau dipikir, kontras sekali pembuatan program di embedded dan aplikasi.
Kebetulan saya bekerja di 2 startup, pagi di optical transport,
network processor, malam-nya
web, large-scale data warehouse.

Aplikasi web sama sekali tidak pusing dengan urusan memory. Yang
mereka pentingkan adalah
scale-out, pemisahan proses ke multi computer. Lebih murah buat kita
untuk menambah
jumlah PC daripada optimize byte-code atau memory. Jadi design-nya
harus memperhitungkan
bagaimana agar penambahan jumlah PC tidak memerlukan perubahan besar
di dalam software-nya.



KOkon.

-- 
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke