‘objekt-orienteeritud’ sildiga artiklid

7

Sept

Võtame kaalust alla

Marek Tihkan Kommenteeri

PeterPaulRubensPeter Paul Rubensile meeldisid lopsakad naised ja ta maalis neist ilusaid pilte. Kalduvus tüsedusele ei ole tervislik nii elus eneses kui ka objekt-orienteeritud programmeerimises, mistõttu on praegune mood alakaalulisusele. Tihti näeme liideseid, kus pole ühtegi meetodit ja neid võime nimetada tähisteks või alakaalulisteks.

Vastupidine lähenemine on problemaatiline, sest liiga suured meetodi kogumid peidavad endas mitmeid võimalusi muutumiseks, mis teeb ka väljalubatud liidese kergemini purunevaks. Hea näide on .NET raamistikus MembershipProvider, mis näeb välja selline:

Loe edasi »

  • Share/Bookmark

KATEGOORIAD » Arendus

SILDID » , , , ,

LOE EDASI »

Järgmine objekt-orienteeritud printsiip, mida arvestada võiks on

Open/Closed Prinsiple (OCP)
Avatud laiendustele, kinni muudatustele

Seda võiks kirjeldada nii, et enamasti tuleb kirjutada uut koodi, et rakenduse võimalusi laiendada, mitte muuta vana. Paljude disaini mustritega tuleb kaasa selle printsiibi võlud. Selle suur eelis on see, et olemasolevat koodi on veidi riskantsem muuta kui uut koodi juurde kirjutada. Loe edasi »

  • Share/Bookmark

KATEGOORIAD » Analüüs/Arhitektuur,Arendus

SILDID » , , , , ,

LOE EDASI »

Nii mõnegi programmeerija jaoks lõppeb objekt-orienteeritud disain vastava keelekonstruktsioonide kasutamisega. Mõnede jaoks on isegi partial sõna .NET raamistikus väärtuslik disainivõte (genereeritud koodi jaoks küll, kuid mitte erinevate kihtide loomiseks). Siinkohal seletangi ühte lihtsat printsiipi lahti, mis lõpetab selliste ulakuste teostamise (kui seda ka jälgida).

Single Responsibility Principle
Objektil peaks olema ainult üks põhjus muutumiseks.

Tundub küllaltki lihtsa printsiibina, kuid tihtipeale rikutakse seda liiga palju.

Objekt-orienteeritud raamatutes võib näha märksõnu nagu low coupling (madal sidestus) ja high cohesion (kõrge sidusus, kohesioon, mu arvates võiks seda nimetada tiheduseks) ning viimast neist võib viia kokku selle printsiibiga. See tähendab, et printsiip suunab fookuse objekti konkreetsusele ja tihedus näitab kui palju objekti atribuutidest (meetoditest, väljadest jne) on omavahel põimunud. Loe edasi »

  • Share/Bookmark

KATEGOORIAD » Arendus

SILDID » , , ,

LOE EDASI »

Kui anekdooti rääkida esimest korda, siis arvatavasti on see naljakas, teisel korral juba on pool võlu kadunud, kolmandat korda kuuldes ei pruugi isegi muie enam näole tulla. Samamoodi on ka tarkavara arenduses – kui kolmandat korda ühte ja sama koodilõiku kirjutada, siis kaob muie näolt ja tuleb mõtlema hakata, kuidas struktuuri parandada. Seda eirates läheb kood hapuks ja anekdoodivestjast koomikut ei saa.

IT juht läheb ülemuse jutule ja ütleb: “Meil oleks vaja uut serverit.” Ülemus seepeale uudishimulikult küsib: “Millist?” IT juht teeb suured silmad ette ja vastab: “Kahe millist.”

Loe edasi »

  • Share/Bookmark

KATEGOORIAD » Arendus

SILDID » , ,

LOE EDASI »