реклама на сайте
подробности

 
 
> ООП. мелкие вопросы.
Marto
сообщение May 7 2012, 06:41
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 103
Регистрация: 17-05-09
Из: Ижевск
Пользователь №: 49 190



Собственно, обращаюсь к знающим людям, поскольку еще на первых порах с С++ не могу понять краеугольные камни ООП.
И так, допустим, имеем базовый класс :
Код
class base
{
private:
   int priv;
protected:
   int prot;
public:
   int pub;
};

выводим из него производный класс:
Код
class derived:public base
{
private:
  priv_de;
protected:
  prot_de;
public:
  pub_de;
};

А теперь внимание вопросы:
1.имеется ли доступ к private-членам базового класса из производного?
2.если производный класс наследуется как private, то public-члены базового становятся недоступными для производного и становятся его public членами? например член priv (тот, что в секции private объявлен базового класса) в классе derived будет приравнен к его public-членам и будет виден в дальнейшей иерархии классов?
3.Доступ к protected-членам имеется во всей иерархии классов (допустим base->derived1->derived3->derivedN, в этом самом N я могу использовать protected члены базового класса?)?


4. Правильно ли я понимаю, что в методах производного класса могу использовать методы базового класса?
прим:
Код
class base
{
public:
   void method_base(void){cout << "Fuck it!";};
};


clase derived:public base
{
public:
   void show_fuck_it(void){method_base();};
};


--------------------
Шизоидный холерик
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Marto
сообщение May 7 2012, 07:15
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 103
Регистрация: 17-05-09
Из: Ижевск
Пользователь №: 49 190



Спасибо. rolleyes.gif


--------------------
Шизоидный холерик
Go to the top of the page
 
+Quote Post
kolobok0
сообщение May 11 2012, 09:12
Сообщение #3


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(Marto @ May 7 2012, 11:15) *
Спасибо....


только к ООП это имеет мягко говоря слаааааабое отношение...

ООП - Объектно Ориентированное Проектирование. Заметьте, проектирование. Т.е. до программирования как до китая ползком на карачках вперёд попой... на каком языке реализовывать - дело двадцать пятое. Более того скажу - если Вы воспринимаете решение задач как абстрактные рассуждения о классах - то это тупик. Рекомендую почитать одного из основоположников данной технологии решения задач - Гради Буча. Всё доходчиво, и понятно. Именно отвечает на впрос "как перейти от задачи к программированию".

удачи вам
(круглый)
Go to the top of the page
 
+Quote Post
dxp
сообщение May 11 2012, 13:12
Сообщение #4


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (kolobok0 @ May 11 2012, 16:12) *
только к ООП это имеет мягко говоря слаааааабое отношение...

ООП - Объектно Ориентированное Проектирование. Заметьте, проектирование. Т.е. до программирования как до китая ползком на карачках вперёд попой...

Спросил у гугла. Ни одного слова "проектирование" на странице нету.

Ну, и далее. ООП - самое что ни на есть натуральное программирование. Проектирование тоже сюда входит, но это более узкое понятие.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
_Артём_
сообщение May 11 2012, 13:18
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(dxp @ May 11 2012, 16:12) *
Ну, и далее. ООП - самое что ни на есть натуральное программирование.

А если без далее:ООП.
Термин О.О. проектирование тоже существует...

Go to the top of the page
 
+Quote Post
dxp
сообщение May 12 2012, 03:32
Сообщение #6


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (_Артём_ @ May 11 2012, 20:18) *
А если без далее:ООП.
Термин О.О. проектирование тоже существует...

ООП - устоявшийся термин и в 99% случаев однозначно определяет именно программирование. Объектно-ориентированное проектирование тоже имеет место (как часть процесса программирования), но никогда нигде не встречал, чтобы его обозначали аббревиатурой ООП.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
kolobok0
сообщение May 12 2012, 10:01
Сообщение #7


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(dxp @ May 12 2012, 07:32) *
ООП - устоявшийся термин и в 99% случаев однозначно определяет...


(устало) Вы наверное и ООА не в курсе что это такое???

устоялось у кого? У людей которые никогда книги основоположников ОбъектноОриентированной методики не читали? да это повсеместно есть к сожалению. это как в забытые времена всё что связывалось по сети обзывалось клиент-серверным sm.gif)) типа, хорошая клиент-серверная программа питер нортон. Замечательно юзает файловую службу сервиса.. ага... sm.gif))


удачи вам
(круглый)
ЗЫ
Собственно бох с ними с терминами. Главное желание бы ло бы докапыватся до истины... sm.gif))


Цитата(dxp @ May 11 2012, 17:12) *
...Спросил у гугла...Ни одного слова "проектирование" на странице нету....



Вы просто не умеете их готовить...

Гради Буч


Это собственно один из основателей. Рекомендую почитать, и стэп бай стэп хоть ОДИН раз применить. Особенно очень актуально , если разработка ведётся более чем одним разработчиком. Эта методика единственная на сегоднешний момент времени(поправте если есть у вас другая инфа) которая даёт ответ на вопрос, а как собственно перейти от конкретной задаче к коду. Вот именно это она и описывает. А какой язык применять после всего этого - дело двадцать пятое. я например частенько юзаю и азм в частности. могу и си бимоль, могу и плас-плас или скажем фортран..смотря по задаче собственно говоря... Если Вы видите связь ОО только с наследием, полиморфностью и иже терминами - то увы это ОЧЕНЬ маааааааленькая часть всего пирога...


удачи вам
(круглый)

Сообщение отредактировал kolobok0 - May 12 2012, 10:05
Go to the top of the page
 
+Quote Post
dxp
сообщение May 12 2012, 11:25
Сообщение #8


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (kolobok0 @ May 12 2012, 17:01) *
(устало) Вы наверное и ООА не в курсе что это такое???

Ещё какие термины знаете, не относящиеся к делу? А устали - отдохните.

QUOTE (kolobok0 @ May 12 2012, 17:01) *
устоялось у кого? У людей которые никогда книги основоположников ОбъектноОриентированной методики не читали?

Читали, читали, не вы один грамотный.


QUOTE (kolobok0 @ May 12 2012, 17:01) *
это как в забытые времена всё что связывалось по сети обзывалось клиент-серверным sm.gif)) типа, хорошая клиент-серверная программа питер нортон. Замечательно юзает файловую службу сервиса.. ага... sm.gif))

А это-то тут причём? Поток сознания какой-то, извините.

QUOTE (kolobok0 @ May 12 2012, 17:01) *
Вы просто не умеете их готовить...

Да, никто не умеет, один вы являетесь, судя по всему, уникальным носителем сакральных знаний.

QUOTE (kolobok0 @ May 12 2012, 17:01) *
Это собственно один из основателей.

К Бучу не надо отсылать, этот источник был изучен ещё лет 12 назад. Объектно-ориентированное программирование и средства его поддержки появились задолго до этого труда Г.Буча. Собственно, заслуга Г.Буча в том, что он изложил тему с акцентом на этап проектирования, показал методологию. И анализ, и проектирование являются составной частью процесса программирования, которое помимо этого включает в себя и другие части (другие парадигмы, кодирование и т.п.).


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
kolobok0
сообщение May 12 2012, 11:50
Сообщение #9


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(dxp @ May 12 2012, 15:25) *
Ещё какие термины знаете, не относящиеся к делу?...


"к делу" оно (ООА) относится наипервейшим образом. потому как всегда впереди на лихом коне. потому как Анализ. Возможно вы не так это понимаете, но хотите вы этого или нет - перед тем как приступить к программированию ВСЕГДА идёт анализ. Он может быть молнеиносным (типа о! знаю как. особенно если в одной голове). Он может быть по уму (например в группе единомышленников - создаются сущности и проигрываются их роли, взаимодействия и т.д. и т.п.). Это может быть по глупому - а нахрена тут думать - пилить надо. Хватить фигнёй страдать!!! Ну и когда челолвек десять потом чертыхаясь: ну и кто эту фигню писал?! как вызвать у парента метод гав? давайте всё начнём заново! или я не буду это юзать, потому как!!! и т.д. (проблемы которые усиливаются при этом - много. можем кстати и про поговорить, если хотите).. Это кстати практически во всех конторах есть. и к сожалению лично я видел единицы фирм по производству софта. всем остальным при случае говорил мягко - это не ваш бизнес... не мучьте ся и пользователей... а пользователей, лично мне очень жалко кстати.. они просто не видят хорошего софта зачастую...оно конечно же даёт бонусы - не привередлив клиент, но как в том мультике: везение, везением - но надо жешь и уметь!

Цитата(dxp @ May 12 2012, 15:25) *
Да, никто не умеет, один вы являетесь, судя по всему, уникальным носителем сакральных знаний.

да бох с вами. я с удовольствием расскажу, покажу если есть желание. более того - готов всегда! (як пионэр) sm.gif к диалогу. к любому...

Цитата(dxp @ May 12 2012, 15:25) *
...Собственно, заслуга Г.Буча в том,...показал методологию...

вот вы же принципиально со мной согласны если так говорите! или очепятались? кстати он один из авторов(возможно и только он - щас уже не помню) - UML. Рэйшенел Роуз думаю знаете... sm.gif

удачи вам
(круглый)
Go to the top of the page
 
+Quote Post
dxp
сообщение May 12 2012, 12:21
Сообщение #10


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (kolobok0 @ May 12 2012, 18:50) *
вот вы же принципиально со мной согласны если так говорите! или очепятались?

Я возражал лишь против того, что термин ООП обозначает проектирование, а не программирование. Мой опыт и вся окружающая информация на эту тему (про этот термин) утверждают, что ООП - это таки программирование. И ещё, повторяю, ПМСМ, анализ и проектирование являются составными неотъемлемыми частями [процесса] программирования, поэтому, в частности, тоже входят в ООП, хотя это не делает ООП [только лишь] проектированием.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 02:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.015 секунд с 7
ELECTRONIX ©2004-2016