ООП ерес
69 отговора
0 прегледа
Re: ООП ерес
Хайде да го направим по-интересно?
Дай пример за готин прайвит метод :)
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Дай пример за готин прайвит метод :)
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Re: ООП ерес
Ама не, ти предлагаш промяна. Обясни с думи прости какво ще да е по-добро от настоящото. Аз не се бутам за гений в тая област, поне докато не прочета цялата теория. Много съм далеч до края.
Re: ООП ерес
Напротив. Линус е фен на разбиването на проблем на подходящите структури данни плюс набор от подходящите функции, действащи върху тези данни.
Можеш да си дръпнеш сорса, ако не ми вярваш :)
Тази идея (така наречената функционална декомпозиция е по-стара от ООП между другото)
Пример дадох - защо ще ме караш да правя обект за сметка Фаренхайт/Целзий - ето ти чиста функция.
Сега приеми, че съм олигофрен (тва е лесно :) и се налага да ми обясниш ползата от прайвит методите.
Как точно ще се срути небето, ако нямаме прайвит методи?
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Можеш да си дръпнеш сорса, ако не ми вярваш :)
Тази идея (така наречената функционална декомпозиция е по-стара от ООП между другото)
Пример дадох - защо ще ме караш да правя обект за сметка Фаренхайт/Целзий - ето ти чиста функция.
Сега приеми, че съм олигофрен (тва е лесно :) и се налага да ми обясниш ползата от прайвит методите.
Как точно ще се срути небето, ако нямаме прайвит методи?
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Re: ООП ерес
Я кажи как ще стане функция на жава или .нет. Там абсолютно всичко е обект.
Re: ООП ерес
Можеш по-добре 
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Re: ООП ерес
Пример дадох - защо ще ме караш да правя обект за сметка Фаренхайт/Целзий - ето ти чиста функция.
Кажи как става на функция, питам прости и ясни неща.
Кажи как става на функция, питам прости и ясни неща.
Редактирано от rabin на
Re: ООП ерес
Баце, не ни измъчвай повече.
Сам си го каза:
Допускане 1 - допускаме, че пишем прайвит методи, които пипат прайвит стейт без да им го подаваме като параметър.
Отговор 1 - Не го прави това! Ако това е минуса ти по отношение на прайвит методите - окей, ама това е минус на лош дизайн, не е в резултат на използване на прайвит методите.Точка.
Допускане 2 - всичките прайвит методи стрикно си ги пишем да бачкат върху параметри (влкючително части от стейта го подаваме така) и да връщат резултат. Добре - що не го направим това глобална (али пропърли неймспейсната) функция?
Отговор 2 - А защо да го правим глобален метод при положение, че ни се предоставя възможност за прайвит такъв? За да може rabin да го използва, овърайдва и да го шиба ли? Тука друг допълнителен плюс може ли да предоставиш по отношение на Допускане 2
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Сам си го каза:
Допускане 1 - допускаме, че пишем прайвит методи, които пипат прайвит стейт без да им го подаваме като параметър.
Отговор 1 - Не го прави това! Ако това е минуса ти по отношение на прайвит методите - окей, ама това е минус на лош дизайн, не е в резултат на използване на прайвит методите.Точка.
Допускане 2 - всичките прайвит методи стрикно си ги пишем да бачкат върху параметри (влкючително части от стейта го подаваме така) и да връщат резултат. Добре - що не го направим това глобална (али пропърли неймспейсната) функция?
Отговор 2 - А защо да го правим глобален метод при положение, че ни се предоставя възможност за прайвит такъв? За да може rabin да го използва, овърайдва и да го шиба ли? Тука друг допълнителен плюс може ли да предоставиш по отношение на Допускане 2
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Re: ООП ерес
Или па минуса на праивит методите е TDD-то? А? А?
Как се юнит тестват праивит методи?
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Как се юнит тестват праивит методи?
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Re: ООП ерес
Щото ако няма стейт замесен - тестван код е блисс.
Само параметри и ретурн. Дето се вика - на курвата се плаща да си _тръгне_, нали? Кур за стейта.
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Само параметри и ретурн. Дето се вика - на курвата се плаща да си _тръгне_, нали? Кур за стейта.
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Re: ООП ерес
Окей - съгласих се - Джава и До диез нямат начин да пишеш код, различен от инстанцииране на обекти.
Пийс Батка :)
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Пийс Батка :)
I have sold less books on sex than Stephen Hawking has on physics -- Madonna
Re: ООП ерес
Насилих се и ти прочетох мисловните теории, понеже Аронеца ги болдна. Още в първи курс ни дърпаха ушите заради глобална променлива. Много по-трудно се дебъгва такова нещо.
Окей - съгласих се - Джава и До диез нямат начин да пишеш код, различен от инстанцииране на обекти.
А, можело значи! Со кротце, со благо, со дровце - по главо! Айде сега и GRASP погледни, на 3 странички са. И ще разбереш защо трябва чукча първо да стане читател.
JSF като качиш в/у JBoss Seam - щеш нещеш правиш атрибути, т.е. глобална променлива. Aма технологията иска setter/getter, ако и през view да се достъпва директно чрез EL.
Окей - съгласих се - Джава и До диез нямат начин да пишеш код, различен от инстанцииране на обекти.
А, можело значи! Со кротце, со благо, со дровце - по главо! Айде сега и GRASP погледни, на 3 странички са. И ще разбереш защо трябва чукча първо да стане читател.
JSF като качиш в/у JBoss Seam - щеш нещеш правиш атрибути, т.е. глобална променлива. Aма технологията иска setter/getter, ако и през view да се достъпва директно чрез EL.
Редактирано от rabin на
Re: ООП ерес
Щото ако няма стейт замесен - тестван код е блисс.
Глупости си говорим в момента баце.
Напиши ми Unit Test срещу прайвит метод и ше си говорим за курвите в друга тема.ОК?
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Глупости си говорим в момента баце.
Напиши ми Unit Test срещу прайвит метод и ше си говорим за курвите в друга тема.ОК?
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Re: ООП ерес
може, що да не може. друг е въпросът къв е смисълът от това.
Al: A Bundy never wins, but a Bundy never quits.
Al: A Bundy never wins, but a Bundy never quits.
Re: ООП ерес
Не, не можеш.Точка.
Тръгнеш ли да юнит-тестваш прайвит методи - яко сме загазили баце.
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Тръгнеш ли да юнит-тестваш прайвит методи - яко сме загазили баце.
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Re: ООП ерес
нещо не се разбрахме - аз казвам, че технически е възможно, не че трябва да се прави. в ц-диез без проблеми с рефлексия, в джава не знам още, не ми се е налагало да го правя.
Al: A Bundy never wins, but a Bundy never quits.
Al: A Bundy never wins, but a Bundy never quits.
Re: ООП ерес
Батка, технически всичко е възможно, нали?
На пратктика обаче, TDD-то е друга бира.
Това TDD предполага още преди да си написал метода/функцията да си написал първо тетста. Това му е силата на TDD-то.
Ако ше трябва с рифлекшън (ривърс инджиниъринг) да ми пишеш юнит тестове...Заеби го тва.
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
На пратктика обаче, TDD-то е друга бира.
Това TDD предполага още преди да си написал метода/функцията да си написал първо тетста. Това му е силата на TDD-то.
Ако ше трябва с рифлекшън (ривърс инджиниъринг) да ми пишеш юнит тестове...Заеби го тва.
Мавена бърника в мозъка на Еклипс, и става мазало.--rabin
Re: ООП ерес
както казах - говорили сме за различни неща.
Al: A Bundy never wins, but a Bundy never quits.
Al: A Bundy never wins, but a Bundy never quits.
Re: ООП ерес
Ах! на едно мнение сме! Да не си станал Питонджия и ти?
Да! "Споделянето на общото" е полезно нещо да се прави в програмирането. Въобще не ми липсва "прайвит", даже напротив...
повръщам като видя грамаден клас НАДРОБЕН като салата с публиц: правит: публик: прайвит или пък някое монолитно парче което прилича на Форт Нокс охранявано от някакви си звервове :)
Cheers, на един акъл сме.
Знаеш ли какво забелязах в себе си и колегите си след като аз минах изцяло на питон? Човече няма майтап... СПОДЕЛЯМЕ информация повече, и по-често! Можеш ли да ми повярваш, ама туй public/private/blabla деление в КОДА имам чувството че се пренася в човешки контекст като stay and глей!
Аз сега например виж какво правя:
(Логическо деление на "модул":
Данни/Формат:
Няколко класа САМО публик (никво прайвит! Все едно СТРУКТ копеле)
Лист от Функции (интерфейс на модула който пиша):
Лист от Функции с разширено независимо ползване (unit? atomic? yes)
Детайли: (екс, private/protected bullshit)
На човека ДАВАШ само Лист от функции като го разделяш на две половини:
Функции които горе долу зависят от други функции за изчисление ("кармични?"
)
Функции които са си просто като добавка или не, но важното е че са АТОМИЧНИ КОПЕ'УЕ
Кратък преамбъл от Data/Format структурни класове които се занимават САМО със формати, със себе си и нищо друго ("stay out of the INTERFACE motherfuckers"
)
Туй то! хехе
Айде остани си със здраве, ти си един от малкото пичове тук... "Кефиш ме щ'и звънна"
Ки, пет, и ти
Да! "Споделянето на общото" е полезно нещо да се прави в програмирането. Въобще не ми липсва "прайвит", даже напротив...
повръщам като видя грамаден клас НАДРОБЕН като салата с публиц: правит: публик: прайвит или пък някое монолитно парче което прилича на Форт Нокс охранявано от някакви си звервове :)
Cheers, на един акъл сме.
Знаеш ли какво забелязах в себе си и колегите си след като аз минах изцяло на питон? Човече няма майтап... СПОДЕЛЯМЕ информация повече, и по-често! Можеш ли да ми повярваш, ама туй public/private/blabla деление в КОДА имам чувството че се пренася в човешки контекст като stay and глей!
Аз сега например виж какво правя:
(Логическо деление на "модул":
Данни/Формат:
Няколко класа САМО публик (никво прайвит! Все едно СТРУКТ копеле)
Лист от Функции (интерфейс на модула който пиша):
Лист от Функции с разширено независимо ползване (unit? atomic? yes)
Детайли: (екс, private/protected bullshit)
На човека ДАВАШ само Лист от функции като го разделяш на две половини:
Функции които горе долу зависят от други функции за изчисление ("кармични?"
Функции които са си просто като добавка или не, но важното е че са АТОМИЧНИ КОПЕ'УЕ
Кратък преамбъл от Data/Format структурни класове които се занимават САМО със формати, със себе си и нищо друго ("stay out of the INTERFACE motherfuckers"
Туй то! хехе
Айде остани си със здраве, ти си един от малкото пичове тук... "Кефиш ме щ'и звънна"
Ки, пет, и ти
Re: ООП ерес
Хубу де, аз като не искам да гледам helper-methods на колегите по класовете нагоре? Кво правим? Като чукна точката на IDE-то, искам да ми излизат само подсказки за методи, които мога да ползвам. Другото не ме интересува, спам.
Като ми изгърми нещо - лога не може да се събере на няколко страници, само класовете, които са над мен. Не мога да си представя, ако трябва да гледам и вътрешните им методи, и така ми е предостатъчно.
Като ми изгърми нещо - лога не може да се събере на няколко страници, само класовете, които са над мен. Не мога да си представя, ако трябва да гледам и вътрешните им методи, и така ми е предостатъчно.
Re: ООП ерес
ти много клиентски мислиш дагоеба - всичко може. требва да може да се казва "уй за вас" понякога с убедителен тон.