Masih berhubungan dengan gundukan ide di tulisan yang ini, kemarin seharian di rumah saya sempat membaca buku tentang AOP (Aspect Oriented Programming). Dari buku yang saya baca, dijelaskan bahwa kunci AOP terletak pada dua hal :

  • introduction, yaitu menyisipkan properti baru ke dalam suatu modul/kelas/dst.
  • advice, yaitu menyisipkan method ke dalam suatu modul/kelas pada daerah yang telah disepakati.

Persoalan utama yang saya pahami adalah mengenai Cross-cutting concern yang merupakan faktor yang signifikan dalam rangka memuluskan evolusi perangkat lunak. Pada dasarnya AOP dapat diimplementasi ke paradigma yang ada saat ini (OOP atau prosedural) dengan mengimplementasi pola pikir seperti di atas (advice dan introduction).

Saya baru sadar kalau DMR dikembangkan dengan cara ini (at some extent) sehingga penambahan fitur baru atau perbaikan bug tidak mengganggu kestabilan sistem yang sudah berjalan. Hal ini selain memudahkan dalam pengelolaan pertumbuhan perangkat lunak, juga bisa menjaga kerahasiaan kode utama. Seharusnya pekerjaan pengembangan perangkat lunak secara kolaboratif (open-source misalnya) menggunakan cara ini juga yah? supaya waktu yang lama ketika kickoff bisa dikurangi.

Kalau dipikir-pikir, AOP sepertinya cukup memenuhi kriteria untuk ide bahasa pemrograman yang sedang saya kerjakan. hanya saja, untuk saat ini AOP masih membawa dosa bahasa pemrograman umum karena AOP diterapkan di atas bahasa yang ada sekarang sehingga bukannya mempermudah (bagi semua orang), AOP malah membingungkan (bagi yang baru mulai mempelajari OOP misalnya), walaupun bagi orang-orang yang sudah terkena racunnya OOP, AOP jadi tampak seperti obat. Jadi untuk saat ini, saya akan men-comot ide dari AOP.



No Responses Yet to “On Aspect Orientation”  

  1. No Comments Yet

Leave a Reply