Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: класс ооп для подключения к бд. [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Описание: правильный класс или все таки процедурным языком написал ?
esterio
Отправлено: 01 Июля, 2013 - 10:34:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




есть такое выражение. думать нужно не реализацией, а интерфейсами
 
 Top
Tugai
Отправлено: 11 Июля, 2013 - 11:17:49
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2013  


Помог: 0 раз(а)




voskan пишет:
[PHP]
хочу понять я хоть как то пишу в стиле ооп или процедурный, просто хочу начать понимать ооп. вот и хочу вашего совета. просто есть люди создают классы и внутри процедурным программируют так как не понимают вот и я такой же. в таком стиле правильно продолжать улучшать класс ?


Тут нужно вот что понимать:
До появления объектно-орентированного программирования, использовлось два основных подхода при разработке.
1. Система моделировалась исходя из данных которые нужно было обрабатывать.
Т.е. чтобы решить задачу вначале нужно было описать все структуру данных с которыми предстоит работать и когда данные были описаны для них писались фуункци по их обработке. Например Windows API, в котором определено много структур данных и функции которые с ними работаают. В Windows API такие струкутуры данных как процесс, окно, различные сообщения - это суть системы.

2. Функциональный подход, решение задачи проектруется исходя из функций которые
необходимо выполнять. Когда функции определены, смотрим какие нам нужны для этого данные. Пример, библиотека mysql_.

Суть должна быть ясна, в так обзываемом "процедурном стиле" при проектирование и построении системы ведущая роль или у данных или у функций.

Естествено, когда система разрастается оба подхода используются.

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

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

Что же такое теперь будет "писать в стиле ооп" ? Это проектировать и программировать с использованием объектов, разбираясь в том что же у нас за объекты, какие между ними связи, каким образом объекты создаются, какие у них роли и т.д.

Разрабатывая один единственный конкретный класс, опуская синтаксис, нет разницы с "процедурным стилем". Но если вести речь о системе в целом, то ооп дало терминологию, средства и инструментарий который в процедурном подходе был просто невозможен.
И позволило сделать открытия, которые сегодня зафиксированны в шаблонах и методиках
программирования.

Книга обязательна к прочтению:
Мэтт Зандстра - PHP. Объекты, шаблоны и методики программирования.

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

(Отредактировано автором: 11 Июля, 2013 - 11:20:10)

 
 Top
caballero
Отправлено: 11 Июля, 2013 - 11:56:30
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




зачем тупо копипастить книгу особенно если сам не понимаешь что там написано


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Tugai
Отправлено: 11 Июля, 2013 - 13:23:41
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2013  


Помог: 0 раз(а)




caballero пишет:
зачем тупо копипастить книгу особенно если сам не понимаешь что там написано


Ну давай поговорим, что же я скопипастил и откуда ?
С чем ты несогласен ?
Стиль изложения конечно вышел у меня менторский, но по смыслу что не так ?
Улыбка
 
 Top
DeepVarvar Супермодератор
Отправлено: 12 Июля, 2013 - 15:51:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Tugai пишет:
что не так ?

1:
Tugai пишет:
Часто при разработке с использованием объекто-орентированной парадигмы получаются объекты в которых оба подхода смешиваются, что приводит к проблемам, основаная из которых формулируется чаще всего как нет гибкости из-за сильной связанности. Т.е. функции настолько вплетены в данные, в котрые им вплетаться вовсе не надо было. И тогда существует процесс рефакторинга, где эти проблемы устраняются.
Сказал - как в лужу ...
2:
Tugai пишет:
Разрабатывая один единственный конкретный класс, опуская синтаксис, нет разницы с "процедурным стилем"
процедурным стилем чего?
3:
Tugai пишет:
ооп дало терминологию, средства и инструментарий который в процедурном подходе был просто невозможен.
напрмер?
4:
Tugai пишет:
И позволило сделать открытия, которые сегодня зафиксированны в шаблонах и методиках
программирования.
Пойду-ка и я свой паттерн придумаю.
5:
Tugai пишет:
То что эти подходы, после того как они были найдены можно реализовать и процедурно по старинке без ооп, значит ровно то что да можно. Но без ооп их просто бы не появилось
Ну да, ато на сях в 70-80-е без крестов писать нереально было, вот и не написали ни одной ОС и ни одного приложения..
6:
Tugai пишет:
Часто при разработке с использованием объекто-орентированной парадигмы получаются объекты в которых оба подхода смешиваются
Импосибл
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB