Nyebut nama micxxxoft di venue kayak gini adalah recipe for humiliation :P 2008/12/18 Adelwin Handoyo <adel...@gmail.com>
> Yah... > Tau lah situ jago... > Tapi comment nya jangan yang "keliru", "salah" ,"gak ada" gitu doang dong.. > Jelasin juga dong alasan nya.. > Namanya juga diskusi mas... > Kalo interface gak di perkenalkan sama Microsoft lalu sama sapa? > With citation kalo perlu... > > > Adelwin Handoyo > COTS (DS) Consultant, Financial Services Industry > NCS Pte. Ltd. > (Reg. No. 198101793G) > A member of the Singapore Telecom Group > 5 Ang Mo Kio St 62, NCS Hub, Singapore (569141) > DID : (65) 6556 6785 Fax: (65) 6483 5420 > Email ID : ahand...@ncs.com.sg <ahandoyo%40ncs.com.sg> > Website: http://www.ncs.com.sg > **** DISCLAIMER ***** > This e-mail and any attachments thereto are intended for the sole use of > the recipient(s) > named above and may contain information that is confidential and/or > proprietary to the NCS > Group. Any use of the information contained herein (including, but not > limited to, total > or partial reproduction, communication, or dissemination in any form) by > persons other > than the intended recipient(s) is prohibited. If you have received this > e-mail in error, > please notify the sender immediately and delete it. > **** NCS Pte. Ltd. - Reg. No. 198101793G **** > > -----Original Message----- > From: jug-indonesia@yahoogroups.com <jug-indonesia%40yahoogroups.com>[mailto: > jug-indonesia@yahoogroups.com <jug-indonesia%40yahoogroups.com>] On Behalf > Of > Arif Rachim > Sent: Thursday, December 18, 2008 12:21 PM > To: jug-indonesia@yahoogroups.com <jug-indonesia%40yahoogroups.com> > Subject: Re: [JUG-Indonesia] mengapa interface? > > > Hi All, > > Mo ikutan diskusi nich. > > Konsep interface pertama kali diperkenalkan oleh Microsoft saat Microsoft > > memperkenalkan konsep COM. > > Tujuannya pada waktu itu adalah untuk memberikan sebuah layer of > > indirectness dari aplikasi thd implementasi dari sebuah COM object. > Tujuan > > dari konsep COM sendiri adalah untuk memberikan reusability thus > modularity > > pada level binary dan bukan pada level source code. Interface tsb pada > > gilirannya mendefinisikan behaviour yg akan diterima oleh penggunanya > dengan > > mendefinisikan behaviour signature tanpa perlu mengetahui detil > implementasi > > dari behaviour tsb. > > Keliru, interface bukan diperkenalkan sama Microsoft. > > > > > Sepanjang yg saya ketahui konsep itu kemudian diadopsi oleh bahasa2 lain > > maupun berbagai framework seperti java (Spring) dengan tujuan yg kurang > > lebih sama yang itu memberikan layer of indirectness pada aplikasi shg > > meningkatkan modularity dan meningkatkan reusability pada level binary. > > Keliru, Spring tidak mengadopsi interface, interface adalah bagian > dari bahasa seperti bahasa yg support OOP even sebelum java. > > > Inheritance + ploymorhism biasanya digunakan untuk mengambil manfaat dari > > sebagian behaviour pada parent classes (inheritance) dan mengubah > sebagian > > behaviour tsb (polymorhism) serta menciptakan behaviour baru dgn > menggunakan > > behaviour yg diwariskan. > > Dari sudut pandang tsb, implementasi beberapa interface oleh sebuah class > > bukanlah sebuah inheritance apalagi multi-inheritance +polymorphism > karena > > tidak ada behaviour yg diwariskan, hanya signature dari behaviour tsb. > > Behaviour tsb harus didefiniskan dalam class itu sendiri. > > Maksdunya yg mau dijelasin itu Encapsulation ya. > > > > > Java memberikan fitur single inheritance bagi class unutk menghindari > > kompleksitas yang mungkin muncul akibat property dan behaviour yg > diturunkan > > dan polymorphims yg mungkin terjadi, namun memberikan fitur multiple > > inheritance bagi interface karena pada dasarnya yg diwariskan hanya > > signature dari behaviournya dan bukan behaviour itu sendiri. > > Tidak ada yang namanya "multiple inheritance bagi interface" ini > keliru. Sebab memang tidak ada yg di inherit. Yang lebih tepat adalah > "multiple implementation dari interface". > > > > > Java juga memberikan fitur abstract class dan abstract function yg sampai > > titik tertentu penggunaannya hampir mirip dengan penggunaan interface. > Jadi > > pakai yg mana ? Yg pasti adalah interface hanya mendefinisikan signature > > dari sebuah behaviour dan tidak dapat mendefinisikan behaviour itu > sendiri > > maupun mendefinisikan property/member dari interface tsb. Sebuah class > cukup > > memiliki 1 abstract function utk dapat disebut abstract class. Di luar > itu, > > class tsb dapat mendefinisikan member, dan mendefinisikan behaviour > fungsi2 > > yg lain termasuk yg menggunakan abstract function tsb. Behaviour tsb > dapat > > menjadi default behaviour dari class yg diturunkan dari abstract class > tsb. > > Ini keliru, interface dan abstract class itu beda. Yang satu adalah > untuk Encapsulation, satunya lagi untuk Template. Jadi keduanya tidak > ada hubungannya secara langsung. > > PS : Mau tau gunanya interface ?? Coba aja pelajari apa artinya > "Encapsulation". > > Best Regards, > > ------------------------------------ > > Kalau mau keluar dari mailing list ini, caranya kirim sebuah email ke > jug-indonesia-unsubscr...@yahoogroups.com<jug-indonesia-unsubscribe%40yahoogroups.com> > . > > Jangan lupa, website JUG Indonesia adalah http://www.jug.or.id > > Yahoo! Groups Links > > >