Модераторы: Aliance, skyboy, MoLeX, ksnk

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Движок сайта, что это такое? Как написать... 
:(
    Опции темы
ManiaK
Дата 2.8.2005, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



PARROT Я тогда сразу статейкой оформлю, завтра-послезавтра выложу.
PM MAIL WWW   Вверх
Mal Hack
Дата 2.8.2005, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Кхе-Кхе... Маньяк, не соглашусь с тобой, подход ИМХО не правильный.

1. Надо определиться с функционалом, т.е. Добавление, удаление, редактирование категорий и т.п.
2. Разбиваем этот функционал на модули и ядро системы.
3. Писать надо на ООП все-таки ;) (лирическое отступление)
4. Продумываем, нужно ли нам разграничение пользователей в клиентской части или админке. Если да, то описываем для чего гнужны права и т.п.
5. Строим функциональную схему.
6. Строим Структурную схему.
7. Проектируем БД.
Пока ты не будешь 100% уверена в базе, не продмаешь ее головой писать нельзя.

Теперь пишем, начиная с админки.
Добавлено @ 13:10
ManiaK можешь не парится, есть целый ISO стандарт по проектированию smile
PM ICQ   Вверх
ManiaK
Дата 2.8.2005, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



Mal Hack не понял, где у меня что-то, что противоречит твоим пунктам? Ты просто написал вообщем, а я чуть-чуть конкретней.
Добавлено @ 13:12
Цитата(Mal @ 2.8.2005, 14:09)
можешь не парится, есть целый ISO стандарт по проектированию

Ссылочку не подкинешь? smile
PM MAIL WWW   Вверх
Mal Hack
Дата 2.8.2005, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(ManiaK @ 2.8.2005, 14:12)
Ты просто написал вообщем, а я чуть-чуть конкретней.

А имхо, как раз наоборот smile
У тебя написано со стороны порльзователя, как он будет видеть, а работать надо как администратор...

Цитата(ManiaK @ 2.8.2005, 14:12)
Ссылочку не подкинешь? smile

Платный, английский 150 $...
Обещали мне на халяву, да так пока никак smile
PM ICQ   Вверх
ManiaK
Дата 2.8.2005, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



Цитата(Mal @ 2.8.2005, 14:20)
Платный, английский 150 $...

Буржуи блин... smile

Цитата(Mal @ 2.8.2005, 14:20)
У тебя написано со стороны порльзователя, как он будет видеть, а работать надо как администратор...

Во! Именно так я и писал! Почему? Потому что так, как мне кажется, проще понять что вообще такое движок.
PM MAIL WWW   Вверх
Mal Hack
Дата 2.8.2005, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



ManiaK когда ты будешь движок для игры (обычной) писать, ты будешь думаьт как там фигуры выглядеть будут или как они двигаться должны?
PM ICQ   Вверх
ManiaK
Дата 2.8.2005, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



Mal Hack новичёк не пишет сразу движок, для этого ему сначала понять что вообще это такое smile
PM MAIL WWW   Вверх
ManiaK
Дата 2.8.2005, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



Цитата(Mal @ 2.8.2005, 14:09)
можешь не парится, есть целый ISO стандарт по проектированию


Цитата(Mal @ 2.8.2005, 14:20)
Платный, английский 150 $...
Обещали мне на халяву, да так пока никак


Дык я не понял, писать дальше али как?..
PM MAIL WWW   Вверх
PARROT
Дата 2.8.2005, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: нет
Всего: 50



ManiaK, конечно писать smile
Много вариантов не помешает. Пока что я только еще больше запуталась. Куда и чего подключать надо... зачем smile
При чем, чем будет больше вариантов, тем лучше. smile


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Mal Hack
Дата 2.8.2005, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



PARROT рано еще подключать, сначала определись что тебе нужно:

Цитата(Mal @ 2.8.2005, 14:09)
1. Надо определиться с функционалом, т.е. Добавление, удаление, редактирование категорий и т.п.
2. Разбиваем этот функционал на модули и ядро системы.
3. Писать надо на ООП все-таки ;) (лирическое отступление)
4. Продумываем, нужно ли нам разграничение пользователей в клиентской части или админке. Если да, то описываем для чего гнужны права и т.п.
5. Строим функциональную схему.
6. Строим Структурную схему.
7. Проектируем БД.
Пока ты не будешь 100% уверена в базе, не продмаешь ее головой писать нельзя.


PM ICQ   Вверх
PARROT
Дата 2.8.2005, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: нет
Всего: 50



Ничего что я сейчас буду задавать глупые вопросы:
1) Что такое функционал?



--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Mal Hack
Дата 2.8.2005, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(PARROT @ 2.8.2005, 18:54)
1) Что такое функционал?

То, что тебе надо от движка:

Цитата(Mal @ 2.8.2005, 14:09)
т.е. Добавление, удаление, редактирование категорий и т.п.


PM ICQ   Вверх
ManiaK
Дата 10.8.2005, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



WEB-ДВИЖОК.

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

Что заставляет человека двигаться, не стоять на месте, изучать новые области жизни, развиваться? Необходимость. Вы мне, конечно, скажете, что иногда нужно делать совершенно бессмысленные действия, только для того, чтобы что-то делать. На это я вам отвечу: раз вы их делаете, они вам необходимы. Для чего это? а для того, чтобы заставить задуматься тех людей, которые хотят "сделать движок", но не знают для чего он нужен. Да, он есть почти на каждом сайте (а если брать более широкое понятие - на всех без исключения сайтах), но это ещё не повод бездумно следовать за стадом. Нужно сначала понять, что из себя этот движок представляет и для чего он нужен остальным, а уж потом решать нужен ли он нам.

Знаете в чём самая главная хитрость в жизни? чтобы наиболее эффективно развиваться, нужно в любой момент времени знать конечную точку развития (цель). Иначе: всему должна быть причина. Поэтому сначала определимся: какова наша цель? - сделать сайт (заметьте - просто сайт). Далее: для чего нам нужен этот сайт? - (пример) нам нужно сделать web-представительство неинформационной фирмы, чтобы привлечь в неё дополнительных клиентов. Неинформационную фирму в качестве примера я выбрал потому, что информационные обычно значительно сложнее и для примера новичкам не годятся. Допустим мы работаем в заборостроительной фирме; шеф дал задание: "создать сайт". Встаём мысленно на место разработчика сайта и вперёд!..

Что мы хотим дать пользователям? какую информацию мы им предоставим, какие услуги? Во-первых, не плохо было бы рассказать пользователям о фирме: чем она занимается, в каком году основана, кем и пр. пр. пр. Оббуквиваем страницу как "О фирме" - один пунктик есть, ставь птичку...

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

Кроме того, нужно составить каталог товара с описанием, с фотографиями и ещё бог знает чем. Причём ассортимент выпускаемой продукции может расширяться, а потому необходимо делать легко расширяемый каталог; в идеале нужно просто заполнить несколько полей текстом, да дать ссылку на фотографию и всё. Вот третий пунктик...

И последнее - обратная связь "потребитель-производитель". Для этого можно просто создать страничку со списком почтовых адресов (как обычных, так и электронных), но лучше помимо этого дать возможность моментально размещать сообщения прямо на сайте - эдакая электронная книжа жалоб и предложений.

Итого - 4 пункта, 4 независимых модуля. Уже сейчас можно создать мысленно/реально каталог с проектом и в нём - 4 папочки. Теперь с каждым модулем отдельно.

а) Страница "О фирме". Если страницу не нужно часто обновлять, что можно её сделать статической (простой HTML-файл). Но в некоторых случаях этого мало - иногда необходимо быстро и довольно регулярно менять информацию на этой странице. Вот у нас уже определились две функции: изменение текста страницы "О фирме" и чтение этого текста. Возникает вопрос: где хранить этот текст? И вот тут пришло время познакомиться со способами хранения информации.

Способ 1. Хранить в файле прямо на сайте. Тогда при открытии пользователем страницы мы читаем этот файл и вставляем в нужное место шаблона. Да, про шаблоны два слова: оформление всех страниц сайта принято делать схожим, чтобы не возникало ощущения, что мы ходим по разным сайтам. Сразу навязывается вопрос: а можно ли отделить оформление от содержимого; оформление сделать одним для всего сайта, а содержимое просто вставлять в этот оформление (в шаблон). Можно! и даже просто! для этого нужно лишь знание одного из языков вроде PHP, Java, Perl и т.п. Тогда мы делаем, к примеру, HTML шаблон для всего сайта, записываем его на сайте как main.tpl, а всё содержание храним где-нибудь в другом файле (ах). В этом шаблоне помечаем специальными словами места, куда надо вставлять содержание (контент) и при открытии пользователем страницы просто заменяем эти спец. слова на нужные данные. Так вот, сохраняем, к примеру, текст страницы "О фирме" в файле info.txt. Дальше пишем скрипт в котором определяем два действия над этим файлом: прочитать из него данные и записать в него данные. Всё, при открытии указываем на чтение или на запись мы открываем (по умолчанию - на чтение, чтобы простому пользователю было проще) и первый модуль готов. Это один способ хранения контента, но не единственный.

Способ 2. Второй способ заключается в использовании Баз Данных (БД). Данный способ лучше в том случае, если вы используете большой объём информации - операции с базами данных происходят быстрее. Способ от первого отличается только тем, что вам не нужно создавать файл на сайте, вы просто направляете специальные запросы к БД и получаете/кладёте от туда/туда данные.

б) С каталогом сложнее. Особенно если использовать первый способ хранения информации - ведь тут надо будет добавлять новые записи (товары) в список, а потому либо придётся создавать какой-то свой формат хранения списка товаров в одном файле, либо для каждого товара выделять свой файл. И то и другое муторно, а потому рассматривать я этот способ не буду. Перейдём сразу ко второму.

При использовании БД каталог организовать значительно проще. Мы лишь создаём таблицу и определяем поля, которые будут описывать товар (наименование, код, описание, цена, есть/нет в наличии на складе и пр.). Далее мы просто добавляем/читаем/изменяем/удаляем записи в этой таблице. Кстати, Excel - тоже БД. Представьте, что запись в какой-нибудь MySQL (одна из самых популярных БД) - это строка в экселе и всё станет понятно. Вот мы и получили 4 действия над каталогом. К ним ещё можно добавить поиск по каталогу при заданном фильтре - при большом ассортименте товаров это бывает необходимо. Точно также нам не нужно уже писать интерфейс на HTML, мы просто загружаем же готовый шаблон main.tpl и отрисовываем всё в нём.

в), г) Аналогично определяем, что нам нужно для новостей (добавление/изменение/удаление новости, чтение) и гостевой книги (добавление/изменение/удаление/чтение сообщений).

В итоге у нас получилось нечто вроде такой архитектуры:
Цитата

/site/ - корневой каталог
  /site/index/ - модуль главной страницы ("О фирме")
      /site/index/view.php - скрипт для просмотра содержимого
      /site/index/admin.php - скрипт для редактирования содержимого
  /site/news/ - новостной модуль
      /site/news/view.php
      /site/news/admin.php
  /site/catalog/ - модуль каталога товаров
      /site/catalog/view.php
      /site/catalog/admin.php
  /site/gb/ - модуль гостевой книги
      /site/catalog/view.php
      /site/gb/admin.php
  /site/sup/main.tpl - шаблон интерфейса
  /size/index.php - через этот скрипт загружаются все модули, к нему обращается пользователь
  /size/admin.php - тоже самое, но для администрирования


Всё это, разумеется, только пример. Лично я считаю такую организацию достаточно удобной, но это не значит, что всё, что сделано не так - не движок. Движок - это программа (скрипт), которая связывает пользователя сайта с информацией. Можно весь движок написать в одном файле и он будет в сто раз круче и навороченей этого - это тоже будет движок, но как искать ошибки в таком многокилобайтном файле и как добавлять в него новые функции?..
PM MAIL WWW   Вверх
Mal Hack
Дата 10.8.2005, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 1
Всего: 261



Цитата(ManiaK @ 10.8.2005, 16:31)
В итоге у нас получилось нечто вроде такой архитектуры:

smile Без обид, ничего удобного в этом нет. Уж как минимум то, что все админские скрипты в КМСах всегда выносятся в отдельные каталоги.

Цитата(ManiaK @ 10.8.2005, 16:31)
Поэтому сначала определимся: какова наша цель? - сделать сайт

CMS создается для автоматизации ведения сайта, а не для того чтобы его сделать ;)

И потом. Ты рссматриваешь вопрос на конкретных модулях, а так делать нельзя яркий пример этот форум. Тут порядка 14-15 модулей.
PM ICQ   Вверх
ManiaK
Дата 10.8.2005, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 1
Всего: 29



Mal Hack Не одна критика, предложения smile
PM MAIL WWW   Вверх
Страницы: (4) Все 1 [2] 3 4 
Закрытая темаСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Избранное | Следующая тема »


 




[ Время генерации скрипта: 0.1669 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.