идеи для простых объектов для повседневного использования web-dev? - PullRequest
3 голосов
/ 15 мая 2010

Черт, я знаю, что это субъективный вопрос, поэтому, вероятно, его загрузят / заблокируют, но я все равно попробую, потому что не знаю, где еще спросить (не стесняйтесь, чтобы указать мне лучшее место, чтобы спросить это!)

Я просто опускаю голову на PHP, но я до сих пор не использую фреймворки или что-то еще.

Я хотел бы создать несколько небольших простых объектов, которые я мог бы использовать на своих сайтах, чтобы лучше их почувствовать.

Кто-нибудь может порекомендовать список или ресурс, который мог бы указать мне, чтобы сказать 10 повседневных объектов, которые люди будут использовать на основных веб-сайтах?

Причина, по которой я спрашиваю, в том, что я немного запутываюсь. Например, я думал об объекте «соединение с базой данных», но потом я просто думаю, что это просто функция, а не действительно «объект» ??

Итак, вопрос:

Какие примеры объектов используются в основных веб-сайтах PHP (не включая веб-сайты типа «корзина»)

Спасибо!

Ответы [ 3 ]

4 голосов
/ 15 мая 2010

Вот несколько основных объектов многократного использования, которые вы можете иметь:

  • Сеанс (идентифицируется с помощью cookie, на стороне сервера)
  • Пользователь (имя пользователя, пароль и т. Д.)
  • DBConnection (да, это может быть объект)
  • Комментарий (позволяет пользователям комментировать вещи)

Звучит так, будто вы хотите начать создавать свою собственную веб-среду, которая является достойным способом обучения. Не изобретай колесо, хотя. Для производственного сайта вам, вероятно, лучше использовать существующий фреймворк.

3 голосов
/ 15 мая 2010

Поскольку вы сказали, что не хотите снова склеивать HTML и CSS, вы не пытаетесь это сделать:

  • Создать класс WebForm. Этот класс является контейнером элементов формы. У него есть методы для добавления и удаления элементов формы. У него есть метод getHTML (), который записывает форму, чтобы пользователь мог вводить данные. Тот же объект, когда производится POST. У него есть метод для проверки ввода пользователя; он делегирует валидацию каждому элементу формы, а затем выполняет какую-то глобальную валидацию. У него есть метод процесса, который обрабатывает форму. Он является окончательным и проверяет, прошла ли проверка. Если он прошел, он вызывает абстрактный защищенный метод, который фактически выполняет специфичную для формы обработку (например, вставляет строки в БД). Форма может быть сохранена в сохраненном в сеансе или может быть перестроена каждый раз (если она сохраняется в сеансе, проще создавать многостраничные формы).
  • Создайте BaseFormElement, а затем несколько дочерних классов, таких как EmailElement, PhoneElement и т. Д. У них также есть метод getHTML (), который вызывается WebForm :: getHTML () и который печатает конкретный элемент. У них есть метод validate (), который вызывается методом WebForm :: validate (), и метод getData (), который возвращает правильно проверенные и обработанные данные этого элемента.

Это всего лишь некоторые идеи. Некоторые вещи могут не иметь смысла: p

1 голос
/ 17 мая 2010

Я бы сказал, что доступ к базе данных будет первым наиболее вероятным объектом - инкапсулируйте ваши самые распространенные SQL-запросы в один класс. Если вы сделаете их достаточно абстрактными, вы можете использовать их для самых разных ситуаций доступа к данным.

Способ думать о дизайне / использовании класса - думать об ответственности класса. Вы должны быть в состоянии описать назначение класса в коротком предложении (короче, чем это ...), т.е. для объекта доступа к базе данных, вы можете сказать:

"предоставляет API для общих задач доступа к данным"

Если какой-либо из методов в вашем классе доступа к данным делает что-то другое, то вы знаете, что они принадлежат где-то еще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...