Irina’s Weblog

6/10/2008

Øàáëîíèòå è äåòàéëèòå

Filed under: Computers — Izida @ 10:08 pm

The architect Christopher Alexander – father of patterns and pattern language … views the craftsmanship of fine structure to be the sole purview of the architect; the larger forms can be left to patterns and their application by the inhabitants.

James O. Coplien

Êàçàíî èíà÷å – àðõèòåêòúò Êðèñòîôúð Àëåêñàíäúð, áàùàòà íà øàáëîíèòå çà äèçàéí, ñìÿòà, ÷å ðîëÿòà íà àðõèòåêòà å äà “èçïèïà” äåòàéëèòå. Ñàìèòå øàáëîíè ìîæå è êëèåíòà äà ñè ãè ïîäáåðå!

Èçòî÷íèê : Clean Code Foreword.

5 Comments »

  1. Äîáðå å äà ñïîìåíåø, ÷å Êðèñòîôúð Àëåêñàíäúð å àðõèòåêò (èñòèíñêè, ïîñòðîèë å ìíîãî ñãðàäè) è òîâà òâúðäåíèå ìîæå äà íå å âÿðíî çà Design Patterns in Computer Science.
    Ìèñëÿ, ÷å òîé å èìàë ïðåäâèä – êëèåíòà ñàì äà ïîäáåðå êàê äà èçãëåæäà íåãîâàòà êúùà, à ñâúðçâàíåòî íà øàáëîíèòå è èñòèíñêàòà àðõèòåêòóðíà ÷àñò å ðàáîòà íà ñàìèÿ àðõèòåêò.

    Comment by Niko — 20/10/2008 @ 11:54 am

  2. Íåùî íå áåøå íàðåä â èçðå÷åíèåòî “Êàçàíî èíà÷å… ” è ñå ÷óäåõ êàêâî.  “ìåòàôîðàòà”, êîÿòî Coplien èçïîëçâà “inhabitants” çà ïîñòðîéêàòà íå ñúîòâåòñòâà íà êëèåíòè çà ñîôòóåðà, à íà ïðîãðàìèñòè. Ïðîãðàìèñòèòå ñà òåçè, êîèòî “íàñåëÿâàò” ñîôòóåðà, à íå êðàéíèòå ïîòðåáèòåëè.

    Comment by Êàìåí — 20/10/2008 @ 8:59 pm

  3. Äîáàâèõ èçòî÷íèêà â ñòàòèÿòà, çàùîòî ìèñëÿ, ÷å èçíåñåíî îò öÿëîòî ñå ãóáè ñìèñúëà. Íî è íèùî íå ïðå÷è äà èìàìå ðàçëè÷íî òúëêóâàíèå âñå ïàê 😉 Ëè÷íî àç ùå ãî ïðî÷åòà îùå âåäíúæ çà äà ìîãà äà ïðåîñìèñëÿ ïàê íàïèñàíîòî.

    Comment by Izida — 21/10/2008 @ 9:19 am

  4. As every homeowner knows, such care and ongoing refinement never come to an end.

    Òàêà çàïî÷âà àáçàöà – êëèåíòúò, êîéòî èçáèðà øàáëîíèòå îò öèòàòà â ñòàòèÿòà, å ñîáñòâåíèêà íà äîìà, à íå èçïúëíèòåëÿ /ñòðîèòåëÿ/. Òîé èñêà âåðàíäà ïðåä êúùàòà ñè (øàáëîí), äîêàòî àðõèòåêòúò ùå òðÿáâà äà èç÷èñòè âñè÷êè äåòàéëè è èçïúëíèòåëÿò äà ãè ðåàëèçèðà.

    Àêî ïðîäúëæèì àíàëîãèÿòà ñ ðàçðàáîòêàòà íà ñîôòóåð – îòíîâî èìàìå àðõèòåêò, èçïúëíèòåëè /ïðîãðàìèñòè/ è êëèåíòè. Êëèåíòúò èñêà ïðèëîæåíèåòî äà ãî óâåäîìÿâà ÷ðåç èçïðàùàíå íà ïèñìî äî ìåíèäæúðà íà åêèï çà âñÿêà íîâîïîëó÷åíà ïîðú÷êà (øàáëîí ñëóøàòåë), àðõèòåêòúò è ïðîãðàìèñòúò ùå òðÿáâà äà ðåàëèçèðàò òîçè øàáëîí êàòî íàïèøàò êðàñèâ, ëåñíî ÷åòÿù ñå è ëåñíî ïîääúðæàù ñå êîä. Ìàëêî å ðàçìèòà ðàçëèêàòà àðõèòåêò/ïðîãðàìèñò – íî âñå ïàê êîíêðåòíèÿ òåêñò å ïðåäãîâîð çà êíèãà, îñíîâàâàùà ñå íà ãúâêàâèòå ìåòîäîëîãèè çà ðàçðàáîòêà è Test Driven Development. À ïðè òÿõ äèçàéí è êîä ñà òÿñíî ñâúðçàíè – ñ÷èòà ñå, ÷å êîäúò å íàé-òî÷íîòî îïèñàíèå íà ñàìèÿ äèçàéí.

    Comment by Izida — 21/10/2008 @ 9:30 am

  5. Ìèñëÿ ÷å ðàçáèðàì îòêúäå èäâà îáúðêâàíåòî.
     àðõèòåêòóðàòà øàáëîíè å òî÷íî òîâà çà êîåòî ãîâîðèø – ”èñêàì âåðàíäà ïðåä êúùàòà ñè èëè èñêàì êúùà ïîñòðîåíà â åäè êàêúâ ñè ñòèë”.
     ïðîãðàìèðàíåòî øàáëîíà ñå èçïîëçâà êàòî åäíà èëè íÿêîëêî ðåàëèçàöèè (äîñòà øàáëîíè èìàò ïîâå÷å îò åäíà ðåàëèçàöèÿ) íà îïðåäåëåí ïðîáëåì.  òîçè ñëó÷àé íå êëèåíòà à àðõèòåêòà/ïðîãðàìèñòà èçáèðà øàáëîíà.

     ïúðâèÿ ñëó÷àé èìàìå èçáîð íà ôóíêöèîíàëíîñò (êàê äà èçãëåæäà êúùàòà ìè), à âúâ âòîðèÿ ñëó÷àé èìàìå èçáîð íà ðåàëèçàöèÿ íà ôóíêöèîíàëíîñò èëè ïðîáëåì. Çà ìåí òîâà ñà äâå ðàçëè÷íè íåùà.

    À íåðàçáèðàíåòî áåøå çàðàäè ñëåäíèÿ öèòàò „Ñàìèòå øàáëîíè ìîæå è êëèåíòà äà ñè ãè ïîäáåðå!”.
    Ïðèåìà óòî÷íåíèåòî òè, ÷å „Ïðîãðàìèñòèòå ñà òåçè, êîèòî “íàñåëÿâàò” ñîôòóåðà”, íî â òîçè ñëó÷àé ñå ïîëó÷àâà ÷å òå ñà êëèåíòèòå ñïîðåä ìåòàôîðàòà (çàùîòî òå ïîäáèðàò øàáëîíà).
    ×åñòíî êàçàíî òàçè àíàëîãèÿ ìè å äîñòà ñòðàííà è ìàé íåùî êóöà.
    Ìîæå áè çàùîòî „ãúâêàâèòå ìåòîäîëîãèè” íåïðåêúñíàòî ïðàâÿò àíàëîãèè ñúñ ñòðîèòåëñòâîòî êîèòî íå âèíàãè ñà òî÷íè èëè âåðíè è ñå ïðîáâàò äà äåëåãèðàò ïîâå÷å îòãîâîðíîñòè íà êðàéíèÿ êëèåíò (ïîäáîð íà øàáëîíè), à òîé îáèêíîâåíî íå å ãîòîâ çà òÿõ è îòêàçâà äà ãè ïðèåìå.

    Ïîíå òîâà å ìîåòî ìíåíèå.

    Comment by Niko — 21/10/2008 @ 10:06 am

RSS feed for comments on this post. TrackBack URI

Leave a comment