11:42 pm - Refactoring C++ to reduce dependencies
Nesen pārlasīju ko Phil Goodwin rakstīja par atkarību samazināšanu C++ kodā. Lielākoties atbilst manai pieredzei.
Šodien pazuda kādas 400 rindiņas C++ koda no kādas klases un kādas 600 vēl palika. Kompilējās kā prieks, jo interfeiss tagad satur tikai 2 privātās metodes.
Ja labi piekopj augstākminēto, nevaru iedomāties daudz praktiskus projektus, kur būtu nepieciešamas abstraktas virsklases (sauktas arī par interfeisiem) vai leieri, leieri, leieri.
| From: | misame |
Date: | February 11th, 2004 - 08:30 am |
---|
| | | (Link) |
|
bet no otras puses, vai vērts pārveidot jau strādājošu uzrakstītu kodu? paruna it kā saka "never touch a running system" :)
Man bija, ir un būs jāpievieno funkcionalitāte. Un jāuzlabo esošā.
Drošības sajūtu dod testi, C++ kompilators un tas, ka izmetot nelietoto kodu es labāk saprotu, ko atlikušais dara :-)
| From: | misame |
Date: | February 11th, 2004 - 08:44 am |
---|
| | | (Link) |
|
ā, tad es vienkārši mazliet nesapratos.
es bij sapratis, ka Tu tā aiz neko darīt tur ņemies ap to kodu :)
From: | mulders |
Date: | February 11th, 2004 - 10:56 am |
---|
| | | (Link) |
|
a es C++ nezinu, maz ko no taa texta sapratu :(
duraks veel iru!
Nu principi jau tie paši.
- maksimāli pārredzams kods
- low coupling, high cohesion
.. it īpaši neveidojam cikliskās atkarības ārpus noslēgtām vienībām
- lietas, ko reti mainām, sakompilējam vienreiz
a pārējais valodspecifisks- pieļauju headerus var aizstāt ar interfeisiem;
From: | mulders |
Date: | February 11th, 2004 - 02:46 pm |
---|
| | | (Link) |
|
prosta ieintereseeja tas kaa var bez interfeisiem iztikt! un kaapeec tas ir lab?
vienkārši iemet piemēru - tad redzēs.
From: | mulders |
Date: | February 11th, 2004 - 02:52 pm |
---|
| | | (Link) |
|
kaut vai vecais labais Runnable interfeiss ieksh JAVA. tb ja kaads objekts jamo implementee, tad shamo var palaist atsevishkjaa tredaa!!
nu es saprotu, ka teorijaa var to apiet, bet kaapeec no taa jaavairaas?
vai arii - uzraxtaam interfeisus un tad kaadu layeri kas shos interfeisus izmanto... taalaak tev atliek tikai savu interfeisu implementaaciju ieshkjiebt tam freimworkam, ij shamais ruuc kaa labi ieeljots traktors!
tb uz interfeisiem var taisiit layerus bez pashu interfeisu implementaacijas!
Tu runā par freimworku rakstīšanu. Tas ir labi un kruti un notiek pats no sevis. Man reti. (reizi gadā). Ja Tev bieži, tad pastāsti kāda ir tā specifika.
"uz interfeisiem var taisiit layerus bez pashu interfeisu implementaacijas" ir kautkas, kam es neticu. :) Nav implementācijas - nav funkcionalitātes.
From: | mulders |
Date: | February 11th, 2004 - 03:44 pm |
---|
| | | (Link) |
|
Nu pag!
Freimworki jau paarsvaraa no vieniem interfeisiem vien sastaav!
Redz... ir taadi patterni kaa "proxy" ar shamiem "noemulee" funkcionalitaati!
Tb rezultaataa jau tev nav gala produkts, bet driizaak skeletons kuru tu piekjeezii ar to funkcionalitaati!
Taa teikt - uzraxti layoutu, bet datus tajos iebaazh cits!
Tas ir kruta. Vai tas Tev ir aktuāli? Moš arī ir.
Tagad došos gulēt. Būtu labi tādās debatēs iemest kādu reālu koda piemēru.
From: | mulders |
Date: | February 11th, 2004 - 04:51 pm |
---|
| | | (Link) |
|
man tas visu laiku ir aktuaali - drausmiigi churaaju kepjatoku par freimworkiem !!!
visa java uz jamiem staav!