jump to navigation

Memilih antara Property atau Method 16 Mei 2008

Posted by firstyuyu in Misc.
add a comment

Ketika mendesain member dari sebuah tipe data, salah satu tantangan yang harus dihadapi seorang desainer framework adalah memilih apakah sebuah member harus berupa property atau method. Ada dua jenis desain API dalam hubungannya dengan penggunaan property dan method. Dalam method-heavy API, sebuah method mempunyai banyak parameter dan tipe data tersebut hanya mempunyai sedikit property seperti tampak pada contoh berikut:   (lebih…)

Framework Design Guidelines Bagian 08 – Prinsip #5: Aggregate Component 15 Mei 2008

Posted by firstyuyu in Prinsip Dasar.
1 comment so far

Aggregate Component menggabungkan berbagai macam entity pada level yang lebih rendah menjadi sebuah komponen yang mempunyai abstraksi lebih tinggi untuk mendukung skenario utama. Sebagai contoh adalah komponen email yang menggabungkan SMTP, socket, encoding, dll. Poin utamanya adalah sebuah aggregate component menyediakan level abstraksi yang lebih tinggi, bukan sekedar cara lain mengerjakan sesuatu. (lebih…)

Component-Oriented Design 15 Mei 2008

Posted by firstyuyu in Misc.
add a comment

Component-Oriented Design adalah sebuah desain dimana API diwujudkan dalam sebuah tipe yang mempunyai konstruktor, property, method, dan event. Cara penggunaan pada component-oriented design mengikuti sebuah pola, yaitu menginstansiasi sebuah tipe dengan default konstruktor atau konstruktor berparameter yang cukup sederhana, memberikan nilai kepada beberapa property, kemudian memanggil method yang sederhana. Pola ini disebut dengan Create-Set-Call pattern. (lebih…)

Factored Type 15 Mei 2008

Posted by firstyuyu in Misc.
add a comment

Sebagaimana dijelaskan di sini, aggregate component menyediakan shortcut untuk operasi high level pada skenario utama dan biasanya diimplementasikan sebagai facade terhadap entity-entity low level yang lebih kompleks. Entity low level ini disebut factored type. (lebih…)

Tipe-Tipe Developer 14 Mei 2008

Posted by firstyuyu in Misc.
add a comment

Sebagai pembuat framework, konsumen kita adalah developer. Karena itu, untuk bisa membuat framework yang sukses di pasaran, kita harus mengenal tipe atau profil dari developer yang akan menggunakan framework kita. Setidaknya ada tiga tipe developer yang berbeda dalam hal cara mereka menggunakan sebuah framework: (lebih…)

Framework Design Guidelines Bagian 07 – Prinsip #4: Layered Architecture 12 Mei 2008

Posted by firstyuyu in Prinsip Dasar.
add a comment

Masing-masing developer mempunyai masalahnya sendiri-sendiri yang harus diselesaikan. Mereka masing-masing membutuhkan level abstraksi serta kontrol dari framework yang berbeda-beda sesuai dengan masalah yang dihadapi. Developer yang biasanya menggunakan C++ atau C# pada umumnya menginginkan low level API yang tangguh dan ekspresif. Sementara developer yang biasanya menggunakan C# atau VB.NET pada umumnya menginginkan high level API yang dioptimasi untuk kesederhanaan penggunaan serta peningkatan produktivitas. (lebih…)

Framework Design Guidelines Bagian 06 – Prinsip #3: Self-Documenting API 12 Mei 2008

Posted by firstyuyu in Prinsip Dasar.
add a comment

Pada umumnya sebuah framework terdiri dari ratusan kalau tidak ribuan entity dan tentu saja jauh lebih banyak lagi jumlah member dan parameter yang terdapat di dalamnya. Developer yang menggunakan framework tersebut membutuhkan panduan yang menyeluruh serta harus ada sesuatu yang bisa selalu mengingatkan mereka tentang tujuan serta cara penggunaannya. Dokumentasi API reference tidaklah menyelesaikan masalah. Jika developer harus selalu merujuk ke dokumentasi untuk sekedar menjawab pertanyaan yang sangat sederhana, maka hal itu akan sangat memakan waktu dan mengurangi produktivitas developer. (lebih…)

Framework Design Guidelines Bagian 05 – Prinsip #2: Low Barrier To Entry 9 Mei 2008

Posted by firstyuyu in Prinsip Dasar.
3 comments

Tren yang terjadi saat ini adalah sering kali seorang developer diharuskan mempelajari sebuah framework baru dengan cepat. Untuk mencapai hal ini, akan lebih mudah bagi mereka jika mereka bisa mulai menggunakan framework baru tersebut dengan cara bereksperiment (mencoba-coba) sesuai kebutuhan dan baru benar-benar mempelajari arsitekurnya secara keseluruhan jika memang itu benar-benar dibutuhkan. Misalnya ketika mereka harus berpindah dari skenario yang sederhana menuju ke skenario penggunaan yang lebih rumit. (lebih…)

Framework Design Guidelines Bagian 04 – Prinsip #1: Scenario-Driven Design 9 Mei 2008

Posted by firstyuyu in Prinsip Dasar.
1 comment so far

Pada umumnya, sebuah framework terdiri dari kumpulan API yang sangat banyak. Hal ini disebabkan karena sebuah framework harus bisa mengakomodasi berbagai macam skenario penggunaan, dari yang paling sederhana hingga yang paling kompleks. Namun faktanya, sebagian besar developer hanya menggunakan sebagian kecil saja dari skenario yang ditawarkan sehingga sebenarnya hanya sebagian kecil saja dari framework yang sering digunakan. Untuk memaksimalkan produktivitas developer yang menggunakan framework kita, maka sangat penting bagi kita sebagai desainer framework untuk menginvestasikan sebagian besar waktu kita untuk merancang API bagi sebagian kecil skenario yang sering digunakan ini. (lebih…)

Notasi Pemanggilan Konstruktor Berantai di Java dan C# 9 Mei 2008

Posted by firstyuyu in Java vs C#.
2 comments

Di Java, jika kita ingin melakukan pemanggilan konstruktor dari dalam sebuah konstruktor (pemanggilan berantai), kita bisa melakukannya dengan menggunakan method khusus yaitu this dan super. Method this digunakan untuk memanggil konstruktor yang berada di kelas yang sama. Sementara method super digunakan untuk memanggil konstruktor yang berada di base class. (lebih…)