цель
Чтобы реализовать правильную и эффективную архитектуру представления для моего проекта (с максимальным повторным использованием повторяющихся единиц)
О моем проекте
Мой проект включает занятия, проводимые преподавателями и пакетами, опубликованными преподавателями. Никакая структура не использовалась, но объектная ориентация и иерархии классов присутствуют для модели, части контроллера.
У меня есть следующие модули –
Студенческая комната-> Список классов – Список классов, приобретенных студентом
Search-> Class Details – подробная страница класса в модуле поиска
и аналогично для пакетов –
Студенческая комната-> Пакетные списки – Список пакетов, приобретенных студентом.
Поиск-> Сведения о пакете – Страница сведений о пакете в модуле поиска
Мой текущий план
Я планирую иметь такие классы:
Class Name Contents commonListingDisplay paginationHtml() smallRatingHtml() commonDetailsDisplay commentsHtml() largeRatingHtml() commonClassPackListingDisplay extends commonListingDisplay abbreviatedDetailsHtml() (abbreviated class/pack details html (class/pack details ending with ... and a link to the Class/pack details page). commonClassPackDetailsDisplay extends commonDetailsDisplay currently empty commonClassDisplay classDateTimeHtml() classReminderHtml() classDetails extends commonClassPackDetailsDisplay,commonClassDisplay
Теперь, взяв пример модуля – В Search-> Class details- – В файле search_class_details.controller.php инициируйте объект класса ClassDetails, чтобы все доступные функции были доступны. – Передайте все переменные и объект classDetails в class_details.view.php (который является файлом представления модуля class_details). Файл будет выглядеть примерно так:
<div class="class_details"> <h2><?php echo $className ?></h2> <div><?php echo $classDetails ?></div> <?php $classDetailsObj->largeRatingHtml($ratingValue) ?> <?php $classDetailsObj->commentsHtml($commentsArray) ?> </div>
Как выглядит подход? Предложения от опытных людей хотели.
благодаря