![]() |
ООП
Расскажите про ооп в пхп.
Что-то я не вижу особой надобности переходить на ООП. ЧТо это даёт? |
вечный спор
нужен или нет ООП... решать прийдётся тебе... потому что всё, что ты можешь услышать, это предвзятое мнение моё мнение: очень редко когда действительно оправдано создание класса... ОЧЕНЬ РЕДКО 95% всех ныне существующих классов стоило бы переписать в линейный код... |
nagash, помоему то что ты понимаешь под словом "линейный код" не совсем то чем он является на самом деле. Наверное ты за то что-бы перевести 95% классов в структурированный стиль. Если это так то я очень даже за =)
О линейном программирование можно ознакомиться здесь :) |
Мне тоже кажется, что лучше структурированный стиль.
|
Весь вопрос ведь в том для чего сделано ООП... Оно ведь сделано только для удобства программиста, чтобы он не держал всё в голове. Так что если большой проект, то ООП - однозначно, независимо от языка. Иначе потом заколебёшься ошибки исправлять.
|
ООП как средство борьбы с ошибками...
а можно пример? |
Примера у меня нет, но по своему опыту скажу, что когда делаешь на ООП, то легче всё выходит. ООП помогает создать чёткую структуру проекта, а без этого никак.
Кстати в PHP нету ООП. PHP - объектно-основанный язык, т.е. там нет наследования, абстрактных классов, интерфейсов. Короче всего, что помогает "поставить на конвейер" работу программера. |
Цитата:
http://www.php.net/zend-engine-2.php ну ничего... прочитаешь, веселее станет =) |
А блин, есть же ещё этот пхп 5. Про него то я и забыл.
Ну так ведь даже лучше... |
Да-да-да.... Зенд-2 и всё такое... А на практике - глюкаво до безобразия. Опять таки - в теории ООП - рулит, а на практике возможностей PHP4 не хватает для нормального обджект-ориентинг, а на пятый я лично решусь перейти не раньше чем через год. В лучшем случае... Когда устаканится вся эта бодяга.
|
Цитата:
считаю, что дает - удобство в первую очередь. опять же все аканчивается на логике девелопера. |
Вялотекущий не кому не нужный тУпик.
Пардон, топик. Веселее, ребята, щелкайте своей эрудицией. |
по поводу удобства пятёрочки...
такие вещи как DOM - написанный полностью по стандарту w3c - меня лично очень радует... очень... есть строгий стандарт... есть строгое ему соответствие... работать с XML это вообще не проблема нынче... __autoload ну а это вообще сказка какая-то... тут даже не знаю что комментировать... жир... =) |
щелк, щелк!
ООП это хорошо. если у тебя под рукой язык, в котором возможно, или рекомендования использовано ООП - тебе повезло. Потому, что ты поймешь этот мир. Ведь оглянись вокруг! вокруг - люди. Длина, ширина, площадь, расстояние, напряжение, человек, животное, насекомое - то, что измеряет то, что находится вокруго того, на что ты смотришь. Вот оно - ООП. Объектная модель. Стереотипы, эдакие классы жизни, на основе которых существуют тысячи, миллионы объектов. Представить с помощью классов можно все. Уши, сердце, движения, поступки. Наследствуя классы один за одним, создавая новые галактики. Вот оно будущее - Объектная модель. Если ты - рассматриваешь все с высоты объектов, отбрасыавая в сторону призму структур и последовательных вычислений, ты - будущее! Ты - не кто иной! Да здраствует ООП. щелк, щекл. |
ага, но вы мне все говорите образно только.
скажите что я получу имея класс а не например файл с функциями? |
из личного опыта - будет тормознутей работать
|
В сущности, ели тебе нужен просто набор функций - ты можешь написать класс-холдер, описать в нём статические функции.
А на самом деле - объектно-ориентированное программирование предоставляет огромную гибкость приложений. Каждое из приложений, в свою очередь, может БЕЗ ДОРАБОТКИ использоваться для разработки других приложений как целиком, так и частями. Хотя, имхо, на словах это объяснить невозможно. Это нужно прочувствовать. Хорошо написанный класс - это нечто совершенно самодостаточное. Есть в XP(это не виндоус) такое понятие - "строительство с крыши" - это когда СНАЧАЛА создаётся приложение целиком, а только после этого пишутся его модули. Грубо говоря, сначала ты строишь каркас приложения, а потом - дописываешь классы, составляющие суть. В общем-то, разница между процедурным программированием и ООП - как между строительством крупнопанельного и кирпичного домов. |
Цитата:
|
а вот и нифига!
руки у меня даже очень прямые :D |
Цитата:
|
Цитата:
|
Да, и ещё, чуть не забыл. Если ты нормально освоишь один объектно-ориентированный язык - как нефиг делать выучишь в комплект к непу ещё пару десятков, потому как самое сложное здесь -концепция и приёмы построения классов вообще.
Короче, выучишь один язык - в остальных придётся только учить синтаксис. |
Цитата:
|
Вообще-то, про яву... Но многое из этого и в php5 вроде как есть..
|
Цитата:
|
гы-гы-гы
:D:p:D |
хыхыхы...
можно мне тоже поглядеть? =) |
Цитата:
|
Не "является по умолчанию", а "в Java модификатор abstract может быть применен в описании интерфейса, однако не оказывает никакого влияния на результат".
Желающим предоставляется уникальная возможность: определить по приведенным ниже дампам байткода, который интерфейс является абстрактным, а какой "конкретным": Код:
00000000: CA FE BA BE 00 00 00 2E | 00 09 07 00 07 07 00 08Код:
00000000: CA FE BA BE 00 00 00 2E | 00 09 07 00 07 07 00 08Код:
public abstract interface AbsInt {Вообще, в Java модификатор abstract для сущностей уровня классов означает, что данный класс нельзя инстанциировать и то, что в нем могуо быть методы, не имеющие реализации. Инстанциировать интерфейсы нельзя никогда, а реализации в них в принципе не бывает. Посему "абстрактный интерфейс" есть "масло масляное". |
ага, но насколько я понимаю в 4 пхп с ООП было плоховато? а что нового появилось в пятой версии?
|
Цитата:
|
Crazy, зачем столько байткода? Я же так и сказал : интерфейсы по умолчанию (собственно "по жизни") абстрактны пытаясь доказать только тот факт что они все-же существуют и их не мало -- они (интерфейсы) Все абстрактные.
Кстати, в каких еденицах ооп измеряется? Я тоже хочу :confused: :rolleyes: |
Цитата:
Цитата:
1. Попугаях. 2. Мартышках 3. Удавах 4. Слоненках. Длинее всего -- в попугаях. :) |
по поводу нового в пятёрке
http://www.php.net/zend-engine-2.php |
| Часовой пояс GMT +4, время: 18:18. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.