Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ООП да или нет? ваше мнение!? 
:(
    Опции темы
Цербер
Дата 21.5.2008, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 21.11.2007

Репутация: нет
Всего: 1



Доброе время суток!!!
Я пишу на php но ООП впринципе никогда не использовал, ну если только когда учил php и ООП немного, самые азы подучил, и если почитать посидеть, то вспомню синтаксис, но не в этом суть!
Меня больше интересует в каких случаях актуально использовать ООП?
Актуально ли использовать ООП при написании админки к сайту!
Вообщем меня больше интересует +/- и направления использования ООП по вашему мнению, но только как можно более полное описание почему да или почему нет!
Заранее благодарю, не сочтите за боян!
PM MAIL ICQ   Вверх
MoLeX
  Дата 21.5.2008, 08:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цербер, если память не изменяет на форуме уже обсуждались подобные темы. 

ИМХО: как привык так и программируй  smile 


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
krundetz
Дата 21.5.2008, 09:11 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 20
Всего: 69



ООП очень хорошее подспорье когда много народа сидит над одним проектом. Да и когда сидишь один на нескольких проектах ООП позволяет использовать модули из одного с минимальными переделками в другом. Проверено собственным опытом.
Цитата

как привык так и программируй

Странное мнение. Если человек привык без комментариев писать код, если он у него плохо структурирован если часто повторяющиеся вещи не выносятся в отдельные блоки и т.д. и т.п. Программировать нужно грамотно так чтобы и самому по прошествии определенного времени было комфортно разбирать код и человеку который возможно придет в твою команду. ОПП как раз направлен на решение этих проблем. 

Цербер Решать использовать или нет конечно твоё дело, но за ним будущее.


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Atlete
Дата 21.5.2008, 09:24 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



При написании больших проектов позволяет очень гибко структурировать код. Применение паттернов в последвиии очень положительно влияют на структуру программы. Четкие +\- выделить не могу, но удобство  и последующее модифицирование блока программ не оспаримый факт. 

P.S. Использование ООП в проекте это положительный момент, но надол так же учесть если проект представляет собой что то по типу аналога "Hello world!" то городить может и нестоит. Хотя это мое личное мнение.
PM MAIL ICQ   Вверх
Feldmarschall
Дата 21.5.2008, 09:26 (ссылка) |  (голосов:6) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Цербер, 98% людей, пишущих на пхп с использованием ООП, делают это механически, не понимая ни смысла ООП, ни преимуществ. А просто потому, что это "правильно" и "круто". Не уподобляйся им. 

Дискретный и клиент-серверный характер выполнения программ на пхп очень больно ударяет по классической схеме объектного программирования, когда все данные и функции их обработки для одной сущности (пользователя, например) засовываются в один объект. К примеру, по хорошему, в объекте user должны быть методы по его редактированию и удалению. Но какой смысл тягать эти функции каждый из тысячи раз, когда он обращается к сайту?
Отсюда начинают изобретаться костыли. Неочевидные.

Мой тебе совет.
Пиши, как пишешь. Параллельно попробуй изучать ООП и пытаться понять его принципы. плоняв - пытайся потихоньку применять их на практике. Если получится - хорошо. Ключевое слово здесь - самостоятельно. Никакой дядя тебе смысл и достоинства ООП не расскажет. Их можно понять только самостоятельно. а уж на примере пхп, когда вся программа умещается в 500 строчек, это и того сложнее.

Добавлено через 2 минуты и 13 секунд
Наблюдение из практики.
Когда мне приходится поддерживать проект, сделанный на ООП я матерюсь и копаюсь в коде часами - найти концы совершенно нереально.
Когда приходится поддерживать элементарную лапшу-овнокод, нужное место находится практически сразу =)
PM   Вверх
Цербер
Дата 21.5.2008, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 21.11.2007

Репутация: нет
Всего: 1



Feldmarschall 
Цитата

Когда мне приходится поддерживать проект, сделанный на ООП я матерюсь и копаюсь в коде часами - найти концы совершенно нереально.
Когда приходится поддерживать элементарную лапшу-овнокод, нужное место находится практически сразу =)

у меня тоже такой момент возник, человек написал проект на ООП а я сейчас сижу и фигею из под него=)

но ведь сколько программистов столько и мнений=) интересно было бы услышать как можно больше мнений!
тема не закрыта, буду признателен если последуют и остальные мнения!


Это сообщение отредактировал(а) Цербер - 21.5.2008, 12:05
PM MAIL ICQ   Вверх
QryStaL
Дата 21.5.2008, 13:40 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 1
Всего: 32



Все зависит от сложности системы, которая моделируется, ее масштабности и подверженности изменениям. Для простых проектов ООП не раскроет всю свою мощь, поэтому такие вопросы и возникают. А в больших проектах со сложной бизнес-логикой без него трудно обойтись.


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
webevt
Дата 21.5.2008, 14:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 5.5.2005

Репутация: нет
Всего: 3



Цитата(Цербер @  21.5.2008,  11:47 Найти цитируемый пост)
человек написал проект на ООП а я сейчас сижу и фигею из под него=)

Имхо для больших проектов нужно писать мануалы и как можно больше ЦЕННЫХ комментариев. Это поможет не только другим разобраться в твоём коде, но и тебе самому через несколько месяцев, ибо рано или поздно ты забудешь, что ты имел ввиду когда писал ту или иную функцию\объект. Да, писать комментарии не очень хочется, но надо. Лень - страшный порок smile
PM MAIL   Вверх
krundetz
Дата 21.5.2008, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 20
Всего: 69



Цитата

Имхо для больших проектов нужно писать мануалы и как можно больше ЦЕННЫХ комментариев. Это поможет не только другим разобраться в твоём коде, но и тебе самому через несколько месяцев, ибо рано или поздно ты забудешь, что ты имел ввиду когда писал ту или иную функцию\объект. Да, писать комментарии не очень хочется, но надо. Лень - страшный порок 

+1
Цитата

А в больших проектах со сложной бизнес-логикой без него трудно обойтись.

Он и возник как реакция на то что программы стали слишком трудны в разработке. И обойтись без него практически нереально. Люди которые так делают в конечном итоге моделируют объектную модель самостоятельно примеры Windows, GTK.
Цитата

Когда мне приходится поддерживать проект, сделанный на ООП я матерюсь и копаюсь в коде часами - найти концы совершенно нереально.

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

вся программа умещается в 500 строчек

Эх везет вам не так давно менял работу с одной на другую и увидел код на ПХП из кучи файлов каждый из которых по 5000 - 10000 строк причем сделаный так что хер разбирешься. Куча функций повторяющих действия самих себя куча лишенего кода который выполняется но нигде не используется. Два класса типа внедрение ООП. Ноль коментариев. Вобщем с удовольствием бы предшествиникам руки оторвал. Боюсь что если такие люди будут использовать хоть ООП хоть функициональный подход будет только беда.
Вывод. Главное не как и на чем, главное качественно.
P.S. Но ООП изучай пригодиться.

Это сообщение отредактировал(а) krundetz - 21.5.2008, 14:53


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
source777
Дата 21.5.2008, 15:01 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Цитата(krundetz @  21.5.2008,  09:11 Найти цитируемый пост)
Решать использовать или нет конечно твоё дело, но за ним будущее. 
За ООП настоящее, сложно даже представить себе компанию, которая бы наняла программиста без понимания ООП... А будущее, имхо, за сплавом аспектно-ориентированного и функционального программирования...

Цитата(webevt @  21.5.2008,  14:27 Найти цитируемый пост)
Лень - страшный порок smile 
Не ври, лень - это двигатель прогресса. Именно самые ленивые программисты пишут подробные и ясные комментарии, а те, которым не лень десятки раз вникать в один и тот же кусок кода, не пишут комментариев...


Цитата(MoLeX @  21.5.2008,  08:40 Найти цитируемый пост)
как привык так и программируй 

Цитата(Feldmarschall @  21.5.2008,  09:26 Найти цитируемый пост)
Пиши, как пишешь.
Вы сговорились что ли? Что за дурацкий совет. Пусть лучше Макконнелла почитает...
Писать код нужно так, чтобы его было удобно читать, а не лишь бы работал.

Цитата(Цербер @  21.5.2008,  08:36 Найти цитируемый пост)
Актуально ли использовать ООП при написании админки к сайту!
ООП вообще актуально для создания крупных сайтов, так что если область твоих интересов не ограничивается домашними страничками, то читай про MVC, вооружайся ООП, и тогда у тебя появится шанс написать сайт уровня портала с управлением содержимым...

Добавлено через 4 минуты и 10 секунд
Цитата(krundetz @  21.5.2008,  14:51 Найти цитируемый пост)
Как раз скорее всего этот код написан горе программистами которые понятие не имеют что такое ООП понимая под ним то что если ты все делаешь через классы то это уже ООП. Только вот ООП и наличие классов неравнозанчны. ООП как раз должна облегчит вам жизнь в понимание кода так как компоненты должны быть с максимально независимыми.
+1. 
ООП - это образ мышления, а не синтаксическая возможность языка... Более того, есть прецеденты удачного использования ООП в языках программирования, которые синтаксически его даже не поддерживают в классическом понимании.



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
bobik02
Дата 21.5.2008, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 26.11.2007

Репутация: 2
Всего: 14



Актуальная тема  smile  (Автор молодец что затронул тему! Для новичков вроде меня это познавательно!)

Интересно было услышать ваши мнения   smile и еще побольше  подискутируйте  smile  

З.Ы. Из жизни: У моего бати образ мышления не ООП,  он старая гвардия, но пишет на структурно-функциональном очень сложные проекты - "звери" в одиночку  smile 
 (т.е.  я имею виду что даже большие широкие проекты можно писать, да конечно возможно код на ООП в разы был бы лучше, но все таки его ПО работает отлично, конечному пользователю не интересно как построен код, на ОПП или вообще "лапша" ему главное быстродейсвия,функциоанльность и т.п. короче говоря результат ... ) Логика рулит !



--------------------
Have a nice day
PM   Вверх
skyboy
Дата 21.5.2008, 16:01 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(source777 @  21.5.2008,  14:01 Найти цитируемый пост)
ООП - это образ мышления

вот-вот. 
ООП - это вообще много чего может пониматься.
проектирование - когда система моделируется с учетом того, что в реальности все - объекты со своими свойствами и методами. реализовываться может вполне при помощи набора функций, но сами переменные будут ассоциативными(аналог полей объекта), а в функциях может проверяться адекватность принимаемых переменных(friend-функции).
программирование - ну, это понятно. классы и объекты, new и this, и т.д.. Если проектировалось без ОО-подхода, то это будет практически набор функций, собранных в один класс бит знает по каким признакам. или же наоборот - получится отлично сделанный "черный ящик"(здравствуй, инкапсуляция!), для работы с которым надо будет инициализировать пару полей и использовать с пяток методов(сильные связи внутри и слабые внешние связи - как и надо).
в любом случае, ОО может быть как внешним, так и "по сути". Все равно, главное - чтоб читалось понятно, чтоб работало без сбоев, и чтоб отладка не была мукой. И тогда будет все равно, вызывается ли $some->do() или do($some); 
Цитата(source777 @  21.5.2008,  14:01 Найти цитируемый пост)
Не ври

ну, что за ....? человек высказал свое мнение, ты - свое... Это что, задача у которой только один истинный ответ, а остальные варианты - попытка обмануть? 

PM MAIL   Вверх
Feldmarschall
Дата 21.5.2008, 16:13 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Цитата(source777 @  21.5.2008,  15:01 Найти цитируемый пост)
Пусть лучше Макконнелла почитает...

source777, зачем ты споришь? Я говорю о том, что писать, а ты - о том, что читать  smile  smile 

На самом деле, я просто хочу сказать, что ООП не "помогает писать админку". Это не инструмент, а образ мышления. Не всем, кстати, доступный. Писать на ООП ради ООП - получится лажа. 
А вот с тем, что надо читать - я полностью согласен. Об это же и писал: "Параллельно попробуй изучать ООП и пытаться понять". то есть, мы говорим об одном и том же. Я же просто добавляю, что резкий переход к ООП никаких преимуществ не даст. Это не волшебная палочка, которая сделает скрипты понятными удобными и производительными.

Продумать объектную модель сайта - проблема даже для матерого профессионала. Вдумайтесь в это. А когда она появляется ,продуманная - объем её начинает исчисляться сотнями килобайт. "А теперь мы попробуем со всей этой фигней взлететь" (с) анекдот про стюардессу.
Рассказывая о том, что ООП помогает лучше понимать написанное, вы все, как один, забываете, что при этом должно быть знание объектной модели. Знаешь фреймфорк, на котором сай1т построен - разберешься в потрохах. Не знаешь - только запутаешься.

Да, за ООП будущее. Или настоящее. Вот только опять же - никто не принимает в расчет дискретный порядок выполнения пхп скриптов. windows, говорите? Была бы винда такой, как сейчас, если бы после каждого нажатия кнопки пользователем ей приходилось бы перезагружаться? А?

PM   Вверх
krundetz
Дата 21.5.2008, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 20
Всего: 69



Цитата(source777 @ 21.5.2008,  15:01)
За ООП настоящее, сложно даже представить себе компанию, которая бы наняла программиста без понимания ООП... А будущее, имхо, за сплавом аспектно-ориентированного и функционального программирования...

ИМХО. Для Java настояшее, а для PHP будушее. Есть такие компании которые нанимают программистов которые и функциональный подход плохо знают, а про ООП слышали только что там есть классы.
Цитата(source777 @ 21.5.2008,  15:01)

Не ври, лень - это двигатель прогресса. Именно самые ленивые программисты пишут подробные и ясные комментарии, а те, которым не лень десятки раз вникать в один и тот же кусок кода, не пишут комментариев...

Ну лень тоже бывает разная есть такие люди которые даже если на них будет подать что нить тяжелое ни сойдут с места из-за лени. Вы описываете случай рационального человека которому жаль тратить время на лишнии итерации. А вообше полностью цитату приводите, дословно не помню своими словами вот: "Лень двигатель прогресса только вот прогресс двигают не лентяи а те кто использует их лень".
Цитата(source777 @ 21.5.2008,  15:01)

Вы сговорились что ли? Что за дурацкий совет. Пусть лучше Макконнелла почитает...
Писать код нужно так, чтобы его было удобно читать, а не лишь бы работал.

+1
Цитата(Feldmarschall)

На самом деле, я просто хочу сказать, что ООП не "помогает писать админку"

Это почему?


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Feldmarschall
Дата 21.5.2008, 16:36 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



образ мышления не помогает писать. Он помогает думать.
PM   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0651 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.