BG Development


Страници: (5) 1 [2] 3 4 ... последна »  ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Наследяване в C++
Дон Реба
Публикувано на: 05-02-2024, 14:26
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 10496
Регистриран на: 11.11.06



дай някакъв пример че май не схващам какво те тревожи
PM
Top
WizardKing
Публикувано на: 05-02-2024, 15:58
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 528
Регистриран на: 12.08.23



QUOTE (BIGBUGEX @ 05-02-2024, 06:39)
Ако под контракти визираш интерфейси, ако се замислиш, това са класове без имплементация. От което следва, че в С++ можеш да наследяваш "интерфейси" с частична или дори цялостна имплементация. За пример да дам сорса на сайта който правих, където се ползва множествено наследяване на интерфейси с частична имплементация.

Точно визирам интерфейси, реално са договори за функционалност.
Не ми се рови из целия код - дай линк за това, което говориш. То в ц++ имаше и понятия за чисто виртуална и само виртуална функция нещо като празен клас без нищо дето реално е интерфейс и празен клас с поне едно нещо.


--------------------
Screw You Guys, I'm Going Home!
PMEmail Poster
Top
WizardKing
Публикувано на: 05-02-2024, 15:59
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 528
Регистриран на: 12.08.23



QUOTE (dvader @ 05-02-2024, 07:02)
QUOTE (WizardKing @ 05-02-2024, 05:01)
Ромбоида винаги води до глава в бюрото.

IUnknown гледа неразбиращо...

Не съм пипал тоя език повече от 15 години, но помня, че старейшините говориха, че създава проблеми.


--------------------
Screw You Guys, I'm Going Home!
PMEmail Poster
Top
WizardKing
Публикувано на: 05-02-2024, 16:01
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 528
Регистриран на: 12.08.23



QUOTE (Дон Реба @ 05-02-2024, 10:35)
QUOTE (WizardKing @ 05-02-2024, 05:01)
Каква ви е реалната файда в ц++ от наследяване на повече от един клас? Сумати езици го изхвърлиха това като опция - стига ви един конкретен/абстрактен за база и множество контракти. Ромбоида винаги води до глава в бюрото.

никаква, но в живота понякога е така и трябва да избираме - или красотата или истината. аз ромбоид само веднъж в живота съм удрял, но като се наложи няма как, така всъщност научих че имало виртуално наследяване. тогава обаче бях ООП фенбойче, сега ако ми се наложи вероятно ще го фонтирам по някакъв елегантен начин, който би накарал ООП феновете да вият от ярост и да цъкат върху "репорт" бутона до кръв под ноктите.

Вместо да наследиш 5 парцала, ООП хардкор феновете ползват декоратор (не е гей организатор на сватби) : https://refactoring.guru/design-patterns/de.../csharp/example.


--------------------
Screw You Guys, I'm Going Home!
PMEmail Poster
Top
SuN
Публикувано на: 05-02-2024, 16:54
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 13463
Регистриран на: 27.01.05



Тия декори не са ли антипатърн за господните обекти? Понякога е по-удобно всичко да става в един клас, което пък премахва нуждата от преобразуване на типа за аргументите (но най-лесно е разбира се да се направи един глобален обект и да се ползва от всички).

Това мнение е било редактирано от SuN на 05-02-2024, 16:55


--------------------
Само аз не троля.
Всички коментари са плод на художествена измислица и нямат общо с действителни и недействителни лица, събития и факти.
PMEmail Poster
Top
WizardKing
Публикувано на: 05-02-2024, 21:19
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 528
Регистриран на: 12.08.23



QUOTE (SuN @ 05-02-2024, 16:54)
Тия декори не са ли антипатърн за господните обекти? Понякога е по-удобно всичко да става в един клас, което пък премахва нуждата от преобразуване на типа за аргументите (но най-лесно е разбира се да се направи един глобален обект и да се ползва от всички).

Тц, ей тоя каун го е обяснил що-годе прилично : https://softwareengineering.stackexchange.c...reaking-the-isp



--------------------
Screw You Guys, I'm Going Home!
PMEmail Poster
Top
SuN
Публикувано на: 06-02-2024, 01:19
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 13463
Регистриран на: 27.01.05



Човек ще си каже, че ви плащат на брой патърни... "По 5 на обект" icon_lol.gif


--------------------
Само аз не троля.
Всички коментари са плод на художествена измислица и нямат общо с действителни и недействителни лица, събития и факти.
PMEmail Poster
Top
WizardKing
Публикувано на: 06-02-2024, 04:05
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 528
Регистриран на: 12.08.23



QUOTE (SuN @ 06-02-2024, 01:19)
Човек ще си каже, че ви плащат на брой патърни... "По 5 на обект" icon_lol.gif

Ако бях от колегите ми, които са известни, ходят по конференции, лъжат хората как се коди добре с еди какви си патерни или инструменти - сигурно затова им плащат. Но за разлика от форуми, в коденето съм скромна личност - ползвам SimpleInjector, който има вградена функционалност да регистрира в контейнера си декоратори на даден интерфейс.

Това мнение е било редактирано от WizardKing на 06-02-2024, 04:06


--------------------
Screw You Guys, I'm Going Home!
PMEmail Poster
Top
Дон Реба
Публикувано на: 06-02-2024, 09:03
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 10496
Регистриран на: 11.11.06



мен отдавна ми е през кура за сякакви патерни матерни и ооп богоугодни техники. ооп феновете губят 90% от времето си да мислят как да не влязат в ерес, а останалите 10% спорят с други ооп фенове дали няква практика е ерес или е богопомазана. ако ми кажат имаш право на ЕДНО нещо от С++ без колебание вземам деструкторите, заради RAII. всичко останало там унаследявания, виртуални функции и ала бала се прави, ама виж RAII не можеш да си направиш по никакъв начин ако нямаш деструктори.
PM
Top
ici
Публикувано на: 06-02-2024, 10:01
Quote Post


Group Icon
Име: Ивайло Илчев
Група: VIP
Ранг: Почетен член

Мнения: 19077
Регистриран на: 06.06.04



Аз пък пиша ембедед, а там в рънтайма няма поддръжка на изключения. Ако нещо се преебе се стига до функция _exit(), която обикновено е безкраен цикъл, аз обаче рестартирам процесора, а след рестарт можеш да прочетеш от бутлога - "*** Изцепшън ***" и това е всичко.


--------------------
Facebook is a bit like checking your underwear after a fart.
Most likely there's nothing new and if there is it's probably shit.
PMEmail PosterUsers Website
Top
0 потребители преглеждат тази тема в момента (0 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (5) 1 [2] 3 4 ... последна » Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0