Могучий ООП, проблемы реализации

lionheart

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

netmac

Новичок
Позвольте в конце выразирть свое мнение. Возможно оно еще чуть поможет Toxic_Cat. Все остальные и так все хорошо представляют.

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

Во времена студенчества я писал на диплом модель сложной системы передачи и обработки информации по теме спутникового теле вещания. Там производилось моделирование различных аппаратных блоков, которые обрабатывали и передавали друг другу информацию в целом моделируя работу целой системы.
Хорошо что я сразу тогда понял что если буду использовать процедурный подход то нифига у меня не получится. По крайней мере было бы гораздо сложнее. С ООП все получилось очень просто и наглядно. Каждый класс моделировал отдельное устройство. Классы получились переносимые т.к. имели строго определенные интерфейсы (как и устройства в жизни). Отладка тоже намного проще.

Сейчас программируя на PHP пока не разу не использовал объектно ориентированный подход, т.к. нет необходимости.
Моделировать, описывать какие-то заоблачные структуры мне здесь пока не приходилось.
А чтобы понять логику скрипта годечной давности пиши больше комментариев. Я комментрирую чуть ли не каждую строку, потому что знаю что через месяц запарюсь вспоминать.

>в пятой версии PHP сделали так много нововведений ...
и правильно, ООП это очень мощный ИСТРУМЕНТ при разработке сложных систем в которых УДОБНО использовать соответствующие принципы (инкапсуляция, полиморфизм ...)
и его надо развивать.

Удачи...
 

_RVK_

Новичок
>в программировании сайтов это довольно редкая вещь

Заблуждаешься.

>не использовал объектно ориентированный подход

Как ты тогда можешь судить?

>т.к. нет необходимости

Ты её просто не видишь

>Я комментрирую чуть ли не каждую строку

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

netmac

Новичок
>>в программировании сайтов это довольно редкая вещь

>Заблуждаешься.

Ну... тут у каждого свой взгяд

>>не использовал объектно ориентированный подход

не использовал в PHP т.к. не вижу необходимости создавать классы на пустом месте. Мои задачи довольно просты. Я не пишу CMS

>Как ты тогда можешь судить?

А я и не сужу

>>т.к. нет необходимости

>Ты её просто не видишь

Ну... Возможно А это очень плохо? :confused:

>>Я комментрирую чуть ли не каждую строку

>Это показывает что твой код сложен для понимания, не
>более. В комментариях нужно знать меру.

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

Toxic_Cat

Новичок
Автор оригинала: whirlwind
> хорошая дескуссия на вечную тему

Кстати, зря. Из этого топика можно вывести одно очень важную штуку: код и данные не должны смешиваться. Это значит, что в коде функции или метода не должны использоваться явно-определенные данные. При проектировании функции необходимо следовать правилу - все операции выполняются над абстрактными данными. Как только вы отделите данные от кода, вы сможете разложить данные по полочкам. Эти полочки и будут прототипами объектов, классы которых необходимо реализовать в вашем проекте.
Пожалуйста читайте внимательно чужые посты, хотя конечно не исключенно то я неправильно выразился... ;)
 

[Gisma]

Новичок
1. совершенно не следует путать понятие namespace и class
2. опять же к ООП, опять же путаница, никогда не следует путать данные и представление (не путайте с выражение "пхп код отдельно и хтмл код отдельно)
 

moxnatiy

Новичок
Господа у вас флуд ни о чем.
Всегда были и будут поклонники ооп и функционального программирования.

Каждый решает за себя (или контора в которой он пишет код).

Любую задачу можно решить и так , и так.

Причем оба подхода могут быть грамотными, а могут быть удалением гланд через анальное отверстие.

Любые споры на эту тему бессмыслены.
 

_RVK_

Новичок
moxnatiy
А кито тут спорил? Ты полностю прав. Я вообще грамотного не ООП кода не встречал пока. Причем и ООП тоже встречал очень мало :) Склоняюсь к мнению, что это вообще фантастика....
 

sakon

П..и.н..ок
_RVK_
>Я вообще грамотного не ООП кода не встречал пока
Разрешите несогласиться
PHP:
<?php echo 'Hello World!'; ?>
Раскритикуете как неграмотный?
 

Toxic_Cat

Новичок
Автор оригинала: moxnatiy
Господа у вас флуд ни о чем.
Всегда были и будут поклонники ооп и функционального программирования.

Каждый решает за себя (или контора в которой он пишет код).

Любую задачу можно решить и так , и так.

Причем оба подхода могут быть грамотными, а могут быть удалением гланд через анальное отверстие.

Любые споры на эту тему бессмыслены.
Конечно, основное в PHP это написание грамотного кода. Будь то ООП или процедурное программирование главное чтобы код был понятным и правильным. Чтобы правильно использовались функции и т.д.

Удаление гланд через анальное отверстие это жестоко :)
 

itprog

Cruftsman
sakon
Код не будет работать 100% на всех серверах с PHP, т.к. short_open_tag может быть в off.
 

Toxic_Cat

Новичок
Автор оригинала: admin
Тогда лучше сразу застрелиться :)
Так погиб один "начинающий" веб программист :)

Сорри за флуд.

Я уже понял что Курепин не должен быть мне кумиром. Его листовки(распечатки сайта) я забросил в дальний угол на черный день :p
 

_RVK_

Новичок
sakon

хе... php добавил значит :) А зачем точка с запятой? Даже в таком коротком коде уже 2 недочета :))))))

-~{}~ 14.12.05 23:34:

И запятую забыл! Это "обращение", оно выделяется запытыми :)
 

sakon

П..и.н..ок
Начнем с конца. Ну типа с последний претензии :)
В данном случае это "восклицание".
short_open_tag - угу
Последня ; не является ошибкой...
 

_RVK_

Новичок
Ошибкой не является, но в таком коротком коде, ужи извини, и цена придирок растет :) А представь что будет в какой нибудь супернавороченной CMS, если даже в 22 символах (без пробелов) 2 недочета? Жуть....

-~{}~ 15.12.05 00:10:

Я уж молчу о форматировании! Написать весь код в одну строку! Вы тока подумайте! :)
 

_RVK_

Новичок
Ой, в мане я еще и к двойным кавычкам придерусь. Ну нафиг они, если переменных в строке нет! :) хе, нет в мире совершенства!
 
Сверху