Blog
Skip to end of metadata
Go to start of metadata

Megfontolásra érdemes vita kerekedett ki a Thinking In Java blogon. A vita alapja, hogy egy elnevezési konvenció szerint az interfész osztályokat akár IFoo néven illethetjük, mint Interface Foo. A blog vitaindító cikke szerint ez egy elavult és rossz dolog (lásd még Hungarian notation). A cikkre természetesen jött egy ellenkező tartalmu válasz, amely igen éles vitát generált... ebben az első reakcióban a lényeg az, hogy ha az interfész neve Foo, és az implementáció neve FooImpl az miért rosszabb, mint az IFoo és a Foo név...

Mindenki döntse el maga... :)

      
      
Page viewed times

4 Comments

  1. Talán IFooImplSpi! De általában nem szoktam Foo-nak nevezni egy interfészt. Inkább *able, *tor stb. Pl. legutóbb csináltam egy interfészt "Persistence" néven, és hozzá két referencia implementációt DbPersistence, FilePersistence. A C#-ban gyakori, pl. IEnumerable, vagy Delphi-ben az IUnknown, IInterface stb.

    Viszont engem rendkívül idegesít az ilyen Impl végü implementációk. Pl. a DocumentBuilderFactoryImpl.Talán azért, mert egyszer találkoztam egy ilyen nevű interfésszel!

  2. Egyébként a jó öreg "Hungarian Notation" a második űrhajósunk, Charles Simonyi nevéhez fűződik.

  3. Latom, megint sikerult a lenyeget megfogni. Javaslom kovetkezo vitapontnak Duke orra szinet. Maradjon piros, vagy legyen inkabb kek? Barcsak en is ennyire unatkozhatnek.

  4. Nálam inkább Foo - FooImpl szokott lenni, de általában csak addig, amíg csak egy implementáció van. Ha több, akkor inkább átnevezem DefaultFoo -ra aztán a többi implementációnak meg valami beszédesebb *Foo -t találok ki. Persze ez se biztos, hogy jó így (smile)

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))