Здравствуйте!
Есть задача - написать сайт и одновременно интернет магазин. Опыт программмирования на PHP не большой. Раньше приходилось писать только отдельные кусочки кода. Не могу решить что использовать - старндартный подход или ООП, раньше с ООП никогда не сталкивался. Почитал информацию по ООП, немного понял суть, но не понимаю, чем такой подход может мне помоч, есть ли смысл мучиться. Честно говоря никогда не приходилось писать интернет магазин, поэтому возникает вопрос, как лучше зделать, чтоб в дальнейшем было как можно проще масштабировать проект, ведь пишу для организации в которой работаю, - хочется на совесть.
И, если не тяжело, привидите пример, как можно использовать ООП для моей цели, к примеру, для отображения товара на странице сайта и сравнение товаров.
1. Артком - 09 Июля, 2010 - 15:33:54 - перейти к сообщению
2. JustUserR - 10 Июля, 2010 - 04:07:10 - перейти к сообщению
Артком пишет:
Можете для примеру посмотреть исходные PHP-коды каких-нибудь CMS интернет-магазинов которые основываются на ООП-подходе или работают без него - в таком случае вы можете увидить практическое различие между ними и оценить удобство для себя Учтите что ООП это вовсе не чистое использование классов свойств и методов заместо переменных и функций - и хотя это позволяет использовать пространства имен в PHP но не является настоящим PHP-подходом
Почитал информацию по ООП, немного понял суть, но не понимаю, чем такой подход может мне помоч, есть ли смысл мучиться
3. Артком - 10 Июля, 2010 - 15:06:29 - перейти к сообщению
Да в том то и дело, что не хочу передирать у кого то, просто интересует мнение людей, которые, вероятно, с этим ранее сталкивались.
Принцыпиальных отличий между ООП и классикой не вижу, наверно потому, что еще слабо знаком с ООП. Вот и надеялся услышать доводы в ту или другую степь, все ведь сразу не продумать.
Принцыпиальных отличий между ООП и классикой не вижу, наверно потому, что еще слабо знаком с ООП. Вот и надеялся услышать доводы в ту или другую степь, все ведь сразу не продумать.
4. ALEN - 10 Июля, 2010 - 16:02:32 - перейти к сообщению
Артком
Скорее маленький опыт работы. Вообще в крупных проектах без ООП ни как, но нужно понимать где он нужен, а где нет.
Скорее маленький опыт работы. Вообще в крупных проектах без ООП ни как, но нужно понимать где он нужен, а где нет.
5. Артком - 10 Июля, 2010 - 17:18:21 - перейти к сообщению
ALEN пишет:
Артком
Скорее маленький опыт работы. Вообще в крупных проектах без ООП ни как, но нужно понимать где он нужен, а где нет.
Скорее маленький опыт работы. Вообще в крупных проектах без ООП ни как, но нужно понимать где он нужен, а где нет.
Собственно, по этому и поднята тема.
6. ALEN - 10 Июля, 2010 - 17:35:09 - перейти к сообщению
Артком
Ну это вы должны решать использовать или нет, т.к. я раньше писал так, что мне не нужно было использование ООП вообще, сейчас задача усложнилась + решил упростить отслеживание кода и т.д.
Вот например присоединяем конфигурационные файлы...
Раньше я не использовал например кэширование, а сейчас использую, вот например логика:
Сначала проверяем нужно и возможно ли кэшировать данные:
- если да, то проверяем есть ли в кэше и выводим если есть, если нет вычисляем и кэшируем
- если нет, то просто вычисляем
Логика думаю ясна, 2 раза возможно описания вычислений однихи тех же данных, для этого выносим в класс.
Конечно можно и функцией обойтись, но бывает момент, что функция не удобна для использования.
Приведу примитивный пример:
Ну это вы должны решать использовать или нет, т.к. я раньше писал так, что мне не нужно было использование ООП вообще, сейчас задача усложнилась + решил упростить отслеживание кода и т.д.
Вот например присоединяем конфигурационные файлы...
Раньше я не использовал например кэширование, а сейчас использую, вот например логика:
Сначала проверяем нужно и возможно ли кэшировать данные:
- если да, то проверяем есть ли в кэше и выводим если есть, если нет вычисляем и кэшируем
- если нет, то просто вычисляем
Логика думаю ясна, 2 раза возможно описания вычислений однихи тех же данных, для этого выносим в класс.
Конечно можно и функцией обойтись, но бывает момент, что функция не удобна для использования.
Приведу примитивный пример:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- $cached_on='1'; // можно ли кешировать
- if($cached_on=='1'){
- $array=cached(); // получаем данные из кэша
- $array[1]=123;
- $array[2]=123;
- $array[3]=123;
- $array[4]=123;
- $array[5]=123;
- $array[6]=123;
- тут запишем в кэш
- }
- } else {
- $array[1]=123;
- $array[2]=123;
- $array[3]=123;
- $array[4]=123;
- $array[5]=123;
- $array[6]=123;
- }
- ?>
представим что функция это наш ооп:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- function arrays(){
- $array[1]=123;
- $array[2]=123;
- $array[3]=123;
- $array[4]=123;
- $array[5]=123;
- $array[6]=123;
- return $array;
- }
- $cached_on='1'; // можно ли кешировать
- if($cached_on=='1'){
- $array=cached(); // получаем данные из кэша
- $array=arrays();
- тут запишем в кэш
- }
- } else {
- $array=arrays();
- }
- ?>
Думаю логика понятна. особенно если обработка очень сложная!