Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: ООП - как правильно спроектировать
 
 автор: Roma   (19.01.2009 в 13:52)   письмо автору
 
 

Добрый день. Понимаю, что эта тема уже всем надоела.
Пересмотрел много информации на этом форуме и на других источниках, но в основном везде только описывается что такое ООП, как создавать классы и все такое, поэтому, решил написать.
По книгам Кузнецова и Симдянова научился создавать классы, работать с ними.
Решил попробовать написать сайт новостей с использованием ООП и шаблонов.
И тут я растерялся: не знаю с чего начать!
Создал класс mysql, в нем объявил методы select,insert,delete,update.
Далее создал шаблон вывода списка новостей(заголовок и тело сообщения) - newsList.tpl

<?php
        
foreach ($news_list as $key=>$val){
    
?>        
            <div style="border:1px #eeeeee solid;width:300px">
                <div style="height:30px">
                    <div style="float:left;width:200px;background-color:#eeeeee;"><a href="?p=4&id=<?php echo $val['id']?>"><?php echo $val['title'];?></a></div> 
                    <div style="float:right;width:100px;background-color:#cccccc;"><a href='?p=3&id=<?php echo $val['id']?>'>Удалить</a></div>
                </div>
                <div><?php echo $val['msg'];?></div>
            </div><br>
    <?php ?>


Попробовал сделать примерно так:

$db=new mysql();
$db->select("select id,title,msg from news");
$news_list=$db->getData();//взял все записи в массив
include"newsList.tpl";

Все работает.
Далее решил создать класс news, только вот как - не знаю.
Натолкните пожалуйста на мысль. Как правильно будет вывести список новостей с использованием шаблонов.
Заранее спасибо

  Ответить  
 
 автор: cheops   (19.01.2009 в 14:41)   письмо автору
 
   для: Roma   (19.01.2009 в 13:52)
 

>Создал класс mysql, в нем объявил методы select,insert,delete,update.
А зачем дублировать логику SQL - если вы все-равно используете язык запросов SQL?

1) Классы лучше не использовать лишь ради использования - угрохоете больше времени и
2) Классы лучше не использовать без исключений (иначе обработка ошибок превратиться в каторгу)
3) Перед созданием класса спросите себя, потребуется ли вам потом унаследовать от этого класса какие-то ещё классы? Если ответ положительный - создавайте класс, если отрицательный - лучше откажитесь от этой идеи.

  Ответить  
 
 автор: Roma   (19.01.2009 в 17:22)   письмо автору
 
   для: cheops   (19.01.2009 в 14:41)
 

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования