Patterns

23 отговора 911 прегледа
#1

Patterns

Добре де, много се приказва, много се 'разбира'.
Нека който ги използва активно си вдигне ръката.

Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Отговор
в отговор на Rincewind #2

Re: Patterns

какво значи активно? брои ли се ако си чел GoF?

иначе чак се изненадах, когато скоро едни неща се получиха доста елегантно с един singleton и composite. factories и factory methods не ги броя -- който е виждал малко COM, Java или .NET вече без да иска се е сблъсквал (а дали го знае? )

безспорно patterns са красиво нещо, но какво повече му остава на човек, освен да се потупа сам по рамото като му се удаде възможност да ги ползва? и не ти ли се убива радостта, когато дойде колега и те пита "какви са тия пируети тук и тва защо е така?"
ти казваш -- Observer,
той казва -- Кво?

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #3

Re: Patterns

Ами само да си чел GoF май не се брои :)
Имам предвид наистина това - където е възможно си ги пишеш pattern-и както трябва и си ги документираш като такива, а не да си ги направил по случайност :)

Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Отговор
в отговор на Rincewind #4

Re: Patterns

Тва звучи доста странно - как се пишат паттерни както трябва? Наблъскваш 10 класа с 20 патерна? :)
Имаше 1 статия от авторите на JUnit - patterni има много на едно място предимно в универсални frameworks, и обикновено се слагат за доразвиване и изчистване на вече готов първоначален design...

Отговор
в отговор на M. Kocмaтa #5

Re: Patterns

Ето ти цитат от Ecyclopedia Britanica:
'patterns както трябва' - Обикновенно в съременното програмиране с езици от високо ниво се използва ОО (за справка раздел 'ОО както трябва').
'patterns' - предтавляват best practices при ОО дизайн в различни ситуации
'както трябва' - да е така, а не инак, при инак == грешно.
т.е. 'patterns както трябва' - означава да прилагаш best practices при ОО програмиране.
За допълнителна информация погледнете 'Programming както трябва' и 'Philosophy'.

Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Отговор
в отговор на M. Kocмaтa #6

Re: Patterns

10 класа и 20 pattern-а?
Струва ми се нормално.

>>patterni има много на едно място предимно в универсални frameworks, и >>обикновено се слагат за доразвиване и изчистване на вече готов >>първоначален design

pattern е част от ОО дизайна който може да се открои като отделна част/идеа/концепция.
Т.е. ако програмираш ОО няма начин да не ги използваш.

Не исках да се правя на Martin Fowler а да разбера останалите guys колко ги използват.

Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Отговор
в отговор на Rincewind #7

Re: Patterns

майна, май четем едни и същи книги
пробвал ли си XP или TDD (test driven develpment)?

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #8

Re: Patterns

XP не съм пробвал, но съм чел.
А иначе Unit Tests съм писал за три свои проекта, обаче не могат да се нарекат Test Driven Development защото не съм писал тестове за всичко.
Но мисля да зачестя използването им в бъдеще.

Go on, prove me wrong. Destroy the fabric of the universe. See if I care.
Отговор
в отговор на Rincewind #9

Re: Patterns

ами то нали идеята не е да пишеш тестове за всичко. все пак не всичко може да се тества ( уи-то например ).

аз отскоро експериментирам с TDD и съм много доволен -- вярно, хаби се време за писането на тестовете, но като почти няма дебъг мисля, че в крайна сметка се печели
да не забравяме, че писането на теста е време за обмисляне на структурата на "модула" и изобщо не трябва да се брои за изгубено!

мога да сведа всичко до едно просто сравнение:
1) преди (без тестове) -- мислиш с ръцете ( тоя израз е брутално откраднат от Пратчет (Дидактилос от "Малки богове") ) и после с главата оправяш грешките на ръцете. хората дето са чели Стив Макконъл биха го нарекли code-and-fix development
2) след (с тестове) -- главата твори и дефектите са ЗНАЧИТЕЛНО по-малко

все пак, експеримента продължава с хората на работата се опитваме да направим и нещо подобно на XP, като минем първата итерация може да напиша нещо.

ein heller Schein am Firmament
Отговор
в отговор на Rincewind #10

Re: Patterns

Всеки ги ползва, дори да не е чел GoF и да не знае как се казват :) Всички patterns описани там са толкова прости, че всеки средно разбиращ програмист ще ги преоткрие ако му потрябват.

Отговор
в отговор на | #11

Re: Patterns

>>Всеки ги ползва, дори да не е чел GoF и да не знае как се казват :)
книжката е доста лесен и приятен начин да откриеш нещата. защо трябва да минаваме по трудния път и да преоткриваме топлата вода?

>>Всички patterns описани там са толкова прости, че всеки средно разбиращ >>програмист ще ги преоткрие ако му потрябват.
връзката май трябва да е обратна. книгата трябва да се чете от начинаещите, за да не откриват нещата наново. щеше ми се да я бях чел преди сблъсъците ми с разни frameworks (на тва как му се вика на български? едва ли е рамка.) сигурно се сещаш колко лесно можеш да обясниш за какво е един coclass в COM на човек, който е чел GoF. тук също блясва друго достойнство на класификацията на т.нар. patterns -- бърз и лесен начин да комуникираш дизайна на другарчето си. недостатъка на един такъв "език" е, че за да е полезен трябва да се владее от всички участници в комуникацията.

да обобщя: електронната версия на книгата я има на фрий.техно-линк.ком -- за бога, братя, четете! името е Design Patterns и напълно заслужено трябва да влезе в списъка от книги, които всеки програмист трябва да е чел.

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #12

Re: Patterns

Ами когато някои от нас преоткриваха топлата вода, книгата още не беше написана.

Аз лично не я харесвам -- избора на pattern-ите описани в нея ми се струва много хаотичен.

Ни иначе си прав, че много помага за комуникацията и това е наи-голямото и предимство.

Отговор
в отговор на | #13

Re: Patterns

хъм, то вярно, че се нароиха доста такива книги...

знаеш ли някоя по-добра, или по-пълна, или поне допълваща?

в тоя ред на мисли -- някъде чух (по-скоро видях (рядко ми говорят от уеба)) изказване от някакъв дето се бил занимавал много години със C++ и Java, но бил осъзнал и научил обектното програмиране чак след като прочел Smalltalk Patterns: Best Practices на Кент Бек.

за жалост не ми е попадала въпросната книжка и не мога да кажа какво толкова има в нея

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #14

Re: Patterns

> списъка от книги, които всеки програмист трябва да е чел.
Takyv spisyk nyama i ne moje da ima.

Отговор
в отговор на Potencialen emigrant #15

Re: Patterns

хехе, чакай сега да те изкормят около 50 полуидиота и да те погребат с копия на Кнутовото "Исскуство програмирования"
тва така и не го прочетох, мале ужас.

иначе може и да си прав, но все пак как по-лесно да определиш базата от знания в областта?

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #16

а има ли я TDD някъде free?

а има ли я TDD някъде free?
поне аз не я намерих из BG free site-овете?
ако някой я има като e-book, да свирка...

най-често умните хора са и лоши
Отговор
в отговор на Meндeлeeв #17

nai-dobrata kniga po taia tema

Spored mene nai-dobrata kniga po taia tema e "Applying UML and Patterns" na Craig Larman.

Preporychva se goreshto ot Martin Fowler, koito e svetilo v software engineerig-a i OO. Vsichki patterns sa obiasneni strahotno s podhodiashti primeri.

Edinstveniat problem za niakoi mozhe da e tova, che primerite sa na Java.

Ne znam dali ia ima prevedena na bulgarski... A kyde ia ima li? Ami v Amazon

Отговор
в отговор на RodeOrm #18

Mozhe i da vjarno, no naj-goljamoto svetilo e:

Saint Ignucius:


Iz apokrifnata GNU biblia:






To err is human
To stderr is inhuman
Отговор
в отговор на vroom #19

Re: а има ли я TDD някъде free?

predpolagam govorish za Test Driven Development by Example na Kent Beck.
edinstvenoto, koeto namerih e draft ot predi publikaciata. ima treski za dialane, no se chete :)

mozhesh da ia drypnesh ot files sekciata na extremeprogramming grupata ot yahoo groups. ima njakolko versii na faila, drypni si gi vsichkite i cheti toia s naj-mnogoto stranici. btw grupata e dobra -- samia kent beck pishe tam, da ne govorim za edni italianci deto takova XP vyrtiat che sviat da ti se zavie.

ein heller Schein am Firmament
Отговор
в отговор на Meндeлeeв #20

Re: Patterns

Ami problemyt e, che oblastta e prekaleno prostranna, i naistina ima tolkova mnogo specializacii, che sys sigurnost syshtestvuvat dve ot tyah, koito imat tolkova malko obshto, che izobshto ne moje da se govori za zadyljitelni za vsichki knigi.
Kato prochetoh postinga ti, prosto se zamislih kakvo li bih slojil na pyrvo myasto v podoben spisyk predi 12-ina godini... Mi "Sistemnoto" na Voynikov. Ama togava nito az, nito syuchenicite mi byahme vijdali neshto razlichno ot DOS. Ey go na, za 12 godini - vsichko se e promenilo.
Knut i az ne sym go chel. Ne, che ne mi tryabvat takiva neshta v rabotata, ama nyamam izlishno vreme - nali 5 godini kibichih v universitet za taya rabota :-) A ima mnogo vidove specializacii, za koito Knut shte si e chista zaguba na vreme. Ta dori i toy spored men ne bi mogyl da se sloji v takyv spisyk.

Отговор