2008/11/9 Yohanes Nugroho <[EMAIL PROTECTED]>:
>
> Sekalian tanya deh kalau lint yang bagus untuk C++ yang free ada nggak
> ya? yang sudah saya coba biasanya lint-nya menjadi "bingung" jika
> kodenya terlalu banyak menggunakan feature C++ (terutama template).
>
Lint yang saya selalu pakai adalah PC-Lint, dari Gimpel. Yang free saya belum
belum pernah coba.
Yang lebih bagus sebetulnya Coverity. Coverity tidak invasive, jadi
kita tidak perlu
mengganti code supaya pass linting-nya. Cuma sayang harganya mahal, jadi
kita jalankan di build-server saja.

> Mengenai Symbian, ini bukan masalah menjalankan di target atau host.
> Masalahnya symbian ini dulu adalah turunan dari EPOC sejak jaman g++
> belum mendukung exception. Mereka akhirnya membuat exception handling
> system sendiri menggunakan aneka macro dan konvensi mereka. Selain itu
> juga mereka memiliki banyak sekali kelas string yang berbeda-beda
> sifatnya. Setiap kelas membedakan string yang panjangnya statik dan
> dinamik, const dan non cost, di heap dan stack, unicode dengan byte.
> misalnya HBufC16 adalah string di heap, panjangnya tetap, unicode.
> Dulu implementasi STL juga belum ada dan libc-nya sangat terbatas.
>
Tapi dengan simulasi, bukankah kita bisa membatasi program kita supaya tidak
menggunakan feature-feature yang tidak di-support oleh target? Dengan simulasi,
berarti kita mau agar code yang jalan di simulasi bisa jalan juga
di-target dengan
perubahan seminim mungkin.

Hati-hati juga dengan C++ exception. Saya biasanya tidak menggunakan exception
in general, karena handle memory leak pada waktu exception throw jauh
lebih sulit.

> Kalau sudah begini, biasanya saya bergantung pada unit test.
>
> Sekarang ini sih keadaan sudah lebih baik (sejak Symbian 9). Mereka
> akhirnya punya libc yang lengkap, dan sudah ada implementasi STL.
> Tools untuk pemeriksaan kesalahan khusus untuk Symbian juga sudah
> tersedia.
>
Sekarang dunia embedded sudah jauh lebih baik, terutama setelah ada Linux.
Moga-moga saja Android bisa lebih populer di dunia mobile.

Agak menyimpang, FYI, gcc 4.4 mendukung lambda dan auto. Combined with STL,
it's gonna be interesting.


KOkon.

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

Kirim email ke