Путь к ООП
От: jeeist  
Дата: 22.09.09 08:58
Оценка: :))) :)))
Извиняюсь, опять не смог ничего найти, хотя наверно
такая тема уже где-то была.

Заинтересовал вопрос: как лучше освоить ООП?
Точнее — что следует освоить перед этим.

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

И программист должен в первую очередь освоить
основы и только потом, если хочет, может добавить ООП.
А если начинать с ООП, ничего хорошего не получится.

22.09.09 15:29: Перенесено из 'О работе'
Re: Путь к ООП
От: sunsquirel США  
Дата: 22.09.09 09:08
Оценка: :))
Здравствуйте, jeeist, Вы писали:

J>Заинтересовал вопрос: как лучше освоить ООП?

J>Точнее — что следует освоить перед этим.

Любая книга по программированию на объектно-ориентированных языках, начинается с основ — типы, идентификаторы, функции и т.п., и только потом идет ООП. Так что надо начинать читать книжки с начала
А насчет того, что в жизни "все не по ООП" — это какая-то странная теория... Мне кажется тот, кто понял ООП, думает как раз противоположным образом.
Re: Путь к ООП
От: Baudolino  
Дата: 22.09.09 09:18
Оценка:
В жизни всё по ООП. Этим ещё Дарвин пользовался, когда изучал происхождение видов.
Re: Путь к ООП
От: Хвост  
Дата: 22.09.09 09:22
Оценка:
Здравствуйте, jeeist, Вы писали:

J>Заинтересовал вопрос: как лучше освоить ООП?

J>Точнее — что следует освоить перед этим.

всё зависит от того, что ты уже освоил.
Что знаешь/умеешь?
People write code, programming languages don't.
Re: Путь к ООП
От: michael_isu Беларусь  
Дата: 22.09.09 09:27
Оценка:
Здравствуйте, jeeist, Вы писали:

J>Извиняюсь, опять не смог ничего найти, хотя наверно

J>такая тема уже где-то была.

J>Заинтересовал вопрос: как лучше освоить ООП?

J>Точнее — что следует освоить перед этим.

J>Почему-то мне кажется, что в реальной жизни

J>все устроено "не по ООП", а объекты могут быть
J>(или не быть) добавлены к этому.

J>И программист должен в первую очередь освоить

J>основы и только потом, если хочет, может добавить ООП.
J>А если начинать с ООП, ничего хорошего не получится.

Набор заблуждений. ООП во всей красе себя проявляет на больших проектах, поэтому путь только один — начать их разрабатывать. Либо юниором устроиться в большую контору, либо в опен-сорсе к какому-то проекту присоединиться.
Re[2]: Путь к ООП
От: jeeist  
Дата: 22.09.09 09:32
Оценка:
Здравствуйте, Baudolino, Вы писали:

B>В жизни всё по ООП. Этим ещё Дарвин пользовался, когда изучал происхождение видов.

В жизни, да. Но в компьютерах — нет, там только единицы и нолики,
которые процессор переключает

Конечно, ООП — это красиво, объекты, функции, вызовы функций.

Но, по-моему, пока человек не представляет, как объекты
расположены в памяти и как процессор "шагает" по этим объектам,
ему трудно будет написать что-то эффективное.

Я это называю "не-ООП".
Re[2]: Путь к ООП
От: jeeist  
Дата: 22.09.09 09:49
Оценка: :)
Здравствуйте, sunsquirel, Вы писали:

S>Любая книга по программированию на объектно-ориентированных языках, начинается с основ — типы, идентификаторы, функции и т.п., и только потом идет ООП. Так что надо начинать читать книжки с начала

S>А насчет того, что в жизни "все не по ООП" — это какая-то странная теория... Мне кажется тот, кто понял ООП, думает как раз противоположным образом.

Мне кажется, что понимать ООП — это означает понимать,
что под ООП стоит основа, которая не является "ОО"

Просто я пытаюсь сделать веб-сайт с использованием ООП,
но так чтобы я понимал, как этот сайт работает.

Не сразу получается.
Re[2]: Путь к ООП
От: white_znake  
Дата: 22.09.09 09:54
Оценка: +1
Здравствуйте, Baudolino, Вы писали:

B>В жизни всё по ООП. Этим ещё Дарвин пользовался, когда изучал происхождение видов.


Да ну? Дарвин точно не думал, что пользуется ООП
А вообще есть хороший фильм — "23" — там главный герой начинает верить в магию цифр и начинает видеть в своей жизни только цифры 2 и 3.
Думаю не стоит уподобляться этому герою и видеть в мире только ООП — ведь есть и другие парадигмы, которые когда надо применять при необходимости
Re[2]: Путь к ООП
От: jeeist  
Дата: 22.09.09 09:59
Оценка:
Здравствуйте, Хвост, Вы писали:

Х>всё зависит от того, что ты уже освоил.

Х>Что знаешь/умеешь?

Сначала я научился решить простую проблему,
написав через ж запутанную программу с использованием ООП.

Потом научился решить простую проблему,
написав простую программу без ООП.

Теперь пытаюсь научиться использовать ООП по назначению.
Re: Путь к ООП
От: vl690001x Россия  
Дата: 22.09.09 10:02
Оценка: :)
Здравствуйте, jeeist, Вы писали:

J>Заинтересовал вопрос: как лучше освоить ООП?

J>Точнее — что следует освоить перед этим.

Прочитай книгу Гради Буча "Объектно-ориентированный анализ и проектирование". Она есть в электронном виде, но такие книги лучше иметь в бумажном варианте. Собственно, даже не знаю, что нужно знать перед ООП, но однозначно, для этого надо быть в какой-то степени личностью, организованной по принципам ООП). Вообще, изучить ООП нелегко, это большая работа, но легких путей не бывает. НЕ БЫВАЕТ, советую еще раз перечитать эти слова.
Re[2]: Путь к ООП
От: TimurSPB Интернет  
Дата: 22.09.09 10:05
Оценка:
Я на первом курсе читал Гради Буча, тогда воспринималось как китайская грамота. Но прочитать надо.
Make flame.politics Great Again!
Re: Путь к ООП
От: Vladek Россия Github
Дата: 22.09.09 10:25
Оценка:
Здравствуйте, jeeist, Вы писали:

J>Извиняюсь, опять не смог ничего найти, хотя наверно

J>такая тема уже где-то была.

J>Заинтересовал вопрос: как лучше освоить ООП?

J>Точнее — что следует освоить перед этим.

Гради Буч, "Объектно-ориентированный анализ и проектирование".

J>Почему-то мне кажется, что в реальной жизни

J>все устроено "не по ООП", а объекты могут быть
J>(или не быть) добавлены к этому.

В ООП объекты выполняют операции после запроса субъекта, который должен сам справляться об их состоянии, в жизни субъект напрямую оперирует объектами и испытывает их воздействие на него.

J>И программист должен в первую очередь освоить

J>основы и только потом, если хочет, может добавить ООП.
J>А если начинать с ООП, ничего хорошего не получится.

Да. Математики и философии будет достаточно.
Everything is an object.
http://files.rsdn.org/43395/hr-kyle-theisen-04.png
Re[2]: Путь к ООП
От: jeeist  
Дата: 22.09.09 10:35
Оценка:
Здравствуйте, vl690001x, Вы писали:

V>Прочитай книгу Гради Буча "Объектно-ориентированный анализ и проектирование". Она есть в электронном виде, но такие книги лучше иметь в бумажном варианте. Собственно, даже не знаю, что нужно знать перед ООП, но однозначно, для этого надо быть в какой-то степени личностью, организованной по принципам ООП). Вообще, изучить ООП нелегко, это большая работа, но легких путей не бывает. НЕ БЫВАЕТ, советую еще раз перечитать эти слова.


Я тоже прочел, понял, книга понравилась, наверно являлся ООП-личностью. И стал вовсю использовать.
Только получилось что-то ужасное.

Т.е. личностью, написать что-то простое, не являлся Чего-то не хватало...
Re[3]: Путь к ООП
От: Хвост  
Дата: 22.09.09 10:52
Оценка:
Здравствуйте, jeeist, Вы писали:

Буч ето жестоко, прочитай лучше вот это:
http://www.intuit.ru/department/se/oopbases/
People write code, programming languages don't.
Re[2]: Путь к ООП
От: denisko http://sdeniskos.blogspot.com/
Дата: 22.09.09 10:55
Оценка: 16 (4) +7 :))) :))) :)))
Здравствуйте, vl690001x, Вы писали:

V>Вообще, изучить ООП нелегко, это большая работа, но легких путей не бывает. НЕ БЫВАЕТ, советую еще раз перечитать эти слова.

Советую перестать дрочить на ООП, ПЕРЕСТАТЬ ДРОЧИТЬ, запомните эти слова.
<Подпись удалена модератором>
Re[2]: Путь к ООП
От: jeeist  
Дата: 22.09.09 11:10
Оценка: :)
Здравствуйте, Vladek, Вы писали:

V>В ООП объекты выполняют операции после запроса субъекта, который должен сам справляться об их состоянии, в жизни субъект напрямую оперирует объектами и испытывает их воздействие на него.


Да, но ООП — это про объекты, а не субъекты Это слово там
не упоминается

А если серьезно, то к объектам предметной области
надо добавить объекты ГУИ, веб-сервера, итд. Иначе будут
красивые картинки и ужасные программы.
Re: Путь к ООП
От: eaa Украина  
Дата: 22.09.09 11:12
Оценка:
Здравствуйте, jeeist, Вы писали:

J>Заинтересовал вопрос: как лучше освоить ООП?


Взять нормальный объектный (это не С++ подобный и тем более не язык поддерживающий несколько парадигм) язык и попрограмировать на нём. Рекомендую SmallTalk.

J>Точнее — что следует освоить перед этим.


Ничего это независимая парадигма и не требует спец знаний для использования.


J>Почему-то мне кажется, что в реальной жизни

J>все устроено "не по ООП", а объекты могут быть
J>(или не быть) добавлены к этому.

Ну иерархии не в ту сторону
В програмировании иерархия расширяет функциоанльность в реальном мире уточняет.

Это как класический вопрос как относятся между собой квадрат и прямоугольник

J>И программист должен в первую очередь освоить

J>основы и только потом, если хочет, может добавить ООП.

Основы это ассемблер? да это основа сех процедурных языков програмирования.
Но к объектоному это не имеет ниикакого отношения. Тут скорее нужно забыть что внутри, что бы писать красивые программы в объектом стиле.


J>А если начинать с ООП, ничего хорошего не получится.


Если считать что человек думающий иначе чем ты заведомо думает хуже, то да.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Путь к ООП
От: Vladek Россия Github
Дата: 22.09.09 11:26
Оценка:
Здравствуйте, jeeist, Вы писали:

J>Здравствуйте, Vladek, Вы писали:


V>>В ООП объекты выполняют операции после запроса субъекта, который должен сам справляться об их состоянии, в жизни субъект напрямую оперирует объектами и испытывает их воздействие на него.


J>Да, но ООП — это про объекты, а не субъекты Это слово там

J>не упоминается

Субъектом является сама программа. Или один объект по отношению к другому.

J>А если серьезно, то к объектам предметной области

J>надо добавить объекты ГУИ, веб-сервера, итд. Иначе будут
J>красивые картинки и ужасные программы.

Чего? Предметная область моделируется в программе ровно до той степени, в которой это необходимо для решения задачи. В чём вообще проблема? КУод не так элегантен как хотелось? Рефакторьте. Грамотно спроектированная система сама подсказывает где что надо исправить. Пишите тесты, формируйте удобный API к коду, затем пишите сам код, что API стал проходить тесты.

Вот вам тест на ООП: сколько программистов требуется, чтобы ввернуть лампочку?
I see dead pixels...
http://files.rsdn.org/43395/hr-kyle-theisen-04.png
Re: Путь к ООП
От: jeeist  
Дата: 22.09.09 11:27
Оценка:
J>Почему-то мне кажется, что в реальной жизни
J>все устроено "не по ООП", а объекты могут быть
J>(или не быть) добавлены к этому.

"В реальной жизни" — имелось ввиду то, что _реально_
происходит на уровне аппаратуры или ОС, в отличии от
уровня языка программирования, среды разработки.
Re[4]: Путь к ООП
От: FR  
Дата: 22.09.09 12:35
Оценка:
Здравствуйте, Хвост, Вы писали:

Х>Буч ето жестоко, прочитай лучше вот это:

Х>http://www.intuit.ru/department/se/oopbases/

Или это http://www.ozon.ru/context/detail/id/136821/
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.