Forum Webscript.Ru

Программирование => Perl => Тема начата: Bum от 22 Июля 2001, 15:53:06

Название: Как оформить древовидную структуру?
Отправлено: Bum от 22 Июля 2001, 15:53:06
Как лучше оформить древовидную структуру например дерево сайта в хеш или массив?
Название: Как оформить древовидную структуру?
Отправлено: Realtor from Moscow от 23 Июля 2001, 04:59:34
А зачем ???
Спроси конкретнее 8)
Название: Как оформить древовидную структуру?
Отправлено: vlad от 23 Июля 2001, 15:51:16
Дело вкуса. Можеш посмотреть у меня ( на JavaScript ) :
http://www.deltacom.co.il/freeware/treeeditor/treeedit.htm
Пример:
http://www.deltacom.co.il/nv/main.pl?r,main_r,inc_r,inks_r

Вообще можно использвать стек для хранения данных и для разбора дерева.
При разборе так-же можеш использвать рекурсию.
Название: Как оформить древовидную структуру?
Отправлено: Bum от 23 Июля 2001, 17:00:17
Цитировать
Realtor from Moscow (23-07-2001 04:59):
А зачем ???
Спроси конкретнее 8)

Например сайт имеет структуру, разделы,
подразделы. У каждого элемента такой структуры есть набор свойств (название, дата создания и т.п.)
Так  нужно с этой структурой на Перле работать (изменять свойства, удалять элементы...)
Название: Как оформить древовидную структуру?
Отправлено: Realtor from Moscow от 23 Июля 2001, 18:20:49
На самом деле, советую тебе подумать: надо это делать или нет?
Писать админскую прогу для сайта довольно долго (ну с учетом полной правильности работы и полноты функциональности). Лучше заняться обдумыванием правильного и интересного для народа (ведь они читают 8) ) наполнения. У меня на сайте около 2500 страниц, написанных исключительно в notepad. И управлять ими проще всего или из FAR, или из WinCommander.
Хочу предугадать твою мысль - хочешь сделать менюшку на Перле? Забей на это. Обычный народ в Сеть ходит по диалапу, и скорость небольшая. Такой скрипт будет долго грузиться. Для примера: примерно около 1000 файлов новостей, лежащих в древовидной структуре файлов типа ГОД/МЕСЯЦ/ДЕНЬ/ФАЙЛ_НОВОСТИ, у меня индексируется секунд за 20-30. Я потом индексы пихаю в MySQL, для последующей быстроты. Перл ведь все делает на стороне сервера и каждый клик по узлу дерева означает полную перезагрузку скрипта. Все дерево конечно можно передать POST\'ом, но какая нагрузка будет ???
Чем дольше грузятся твои страницы, тем меньше народа вернется к тебе еще раз!!! Не перегружай страницы ;-)
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 23 Июля 2001, 18:36:06
если автор постинга интересуется как сделать древовидную менюшку, то это DHTML конечно ( например так (http://www.koptevo.ru) ).
другой вопрос как ее генерить. лучше всего сделать flatfile БД (так например как это сделано на коптево.ру) и парсить потом скриптом. выглядит она там примерно так:
0|новости|#news
1|коротко|/news/?what=brief|
1|обзоры|/news/?what=reviews|
1|новости сайта|/news/?what=site|
0|о районе|#about
1|общая информация|/about/?what=general|
1|история|/about/?what=history|
2|карта|/about/?what=map|
1|фотоальбом|/about/?what=photos|

первая колонка тип ссылки (0- категория, 1- обычная ссылка, 2- планируемая ссылка), вторая - собственно название, третья сам УРЛ

а потом берешь этот файл и парсишь его построчно. и не надо гадать массив/хэш/стек

2Realtor: 2500 страниц в Notepad-е это ты круто! =)
Название: Как оформить древовидную структуру?
Отправлено: Realtor from Moscow от 23 Июля 2001, 18:44:51
Очень правильная мысль 8-) Делать каждый раз разбор дерева себе дороже.

2Ali: в конце недели новую версию выложу, задолбался, все то, что не генерится скриптами, переверстывать. Но тема такая, о недвижимости в двух словах не скажешь 8-)
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 23 Июля 2001, 18:50:50
Цитировать
Realtor from Moscow (23-07-2001 18:44):
Очень правильная мысль 8-) Делать каждый раз разбор дерева себе дороже.
дада. вообщето я гдето уже слышал, что дешевле оплачивать труд 10 машинисток, чем одного программиста.
да, и еще: запорожец в конце-концов тоже машина! но лучше вообще пешком - для здоровья полезно.

хотя, все это лирика.
Название: Как оформить древовидную структуру?
Отправлено: Realtor from Moscow от 25 Июля 2001, 01:41:04
2Ali: Не так меня понял. Я имел ввиду, что сканирование всего дерева в рекурсии каждый раз будет отнимать много времени. Соответственно все страницы будут грузиться долго и посетитель уйдет "на дальний кордон", как зверь ;-)
Если применительно к моей переверстке страниц, то я не просто меняю header, footer и немного css, а меняю методологию работы сайта. Будет более 80-90% в скриптах. Сейчас около 60%, да и вид шняжный ;-)
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 25 Июля 2001, 10:34:40
Цитировать
Realtor from Moscow (25-07-2001 01:41):
2Ali: Не так меня понял. Я имел ввиду, что сканирование всего дерева в рекурсии каждый раз будет отнимать много времени. Соответственно все страницы будут грузиться долго и посетитель уйдет "на дальний кордон", как зверь ;-)
Если применительно к моей переверстке страниц, то я не просто меняю header, footer и немного css, а меняю методологию работы сайта. Будет более 80-90% в скриптах. Сейчас около 60%, да и вид шняжный ;-)

у нас уже off пошел=) но я вот чего сказать хотел (IMHO):
для меня вообще сомнительны прелести генерации-на-лету контента с использованием CGI. вот mod_perl или PHP другое дело (хотя с mod_perl-ом активно работать не доводилось). CGI уж слишком медленный, слишком неудобный (для этого), + Perl слишком громоздкий в плане кода, особенно если он через CGI.
Название: Как оформить древовидную структуру?
Отправлено: Bum от 29 Июля 2001, 09:45:37
IMHO: Perl то побыстрее PHP будет.
Если  это не  mod_php.
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 29 Июля 2001, 13:54:08
Цитировать
Bum (29-07-2001 09:45):
IMHO: Perl то побыстрее PHP будет.
Если  это не  mod_php.

по тестам-то как раз наооборот=)

mod_perl быстрее mod_php по большинству параметров. а CGI (видимо ты это имел ввиду под Perl) всегда медленее.
Название: Как оформить древовидную структуру?
Отправлено: Haze от 29 Июля 2001, 17:16:57
Цитировать
AliMamed (29-07-2001 13:54):
Цитировать
Bum (29-07-2001 09:45):
IMHO: Perl то побыстрее PHP будет.
Если  это не  mod_php.

по тестам-то как раз наооборот=)

mod_perl быстрее mod_php по большинству параметров. а CGI (видимо ты это имел ввиду под Perl) всегда медленее.
По-твоему Перл медленней, чем ПХП ???
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 29 Июля 2001, 23:21:31
см. мой постинг №12.
Название: Как оформить древовидную структуру?
Отправлено: Haze от 29 Июля 2001, 23:54:34
Цитировать
AliMamed (29-07-2001 23:21):
см. мой постинг №12.
Ничего интересного я там не нашел...
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 30 Июля 2001, 00:01:20
вообще я там ответил на твой вопрос.
PHP быстрее CGI.
потому что технология другая.
в общем я подробно не буду. все это много раз обсуждалось.
если уж действительно интересно - посмотри http://phpclub.unet.ru/vs/phpvsperl.htm

что касается mod_perl (не путай с Perl через CGI): да, mod_perl по некоторым позициям быстрее mod_php. но вот я чтото мне не попадались хостинги с mod_perl.

вот твоя baltica.ee предоставляет хостинг. у вас там mod_perl есть? или вы "партнеры" и ты не в курсе?
Название: Как оформить древовидную структуру?
Отправлено: Haze от 30 Июля 2001, 01:00:26
Цитировать
AliMamed (30-07-2001 00:01):
вообще я там ответил на твой вопрос.
PHP быстрее CGI.
потому что технология другая.
в общем я подробно не буду. все это много раз обсуждалось.
если уж действительно интересно - посмотри http://phpclub.unet.ru/vs/phpvsperl.htm

что касается mod_perl (не путай с Perl через CGI): да, mod_perl по некоторым позициям быстрее mod_php. но вот я чтото мне не попадались хостинги с mod_perl.

вот твоя baltica.ee предоставляет хостинг. у вас там mod_perl есть? или вы "партнеры" и ты не в курсе?
Интересно, как может настолько разница информация? Смотри здесь, хотя, думаю, ты уже видел: http://www.webscript.ru/stories.php3?story=01/02/06/9093672

2.Партнерство...
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 30 Июля 2001, 10:53:03
ну а комментарии ты читал? =)
вообще то я не склонен статье которую ты привел доверять. там вобщемто немножко ламмерский подход к исследованию вопроса. например в качестве достоинств/недостатков приводится способ вывода по умолчанию ошибок интерпретатора. это вообще помоему смешно.
Название: Как оформить древовидную структуру?
Отправлено: Haze от 31 Июля 2001, 16:59:47
Да я не про то... Там ясно сказно, что скорость у Перла выше, чем у ПХП, и, по-моему, это никто там особо не оспаривал!
Название: Как оформить древовидную структуру?
Отправлено: AliMamed от 31 Июля 2001, 22:48:58
Цитировать
Haze (31-07-2001 16:59):
Да я не про то... Там ясно сказно, что скорость у Перла выше, чем у ПХП, и, по-моему, это никто там особо не оспаривал!


там никто ничего и не доказал. реальный тест - на ссылке, которую я дал.
так как у нас преимущественно Perl юзают через CGI это всегда на порядок будет медленее использования напрямую PHP
Название: Как оформить древовидную структуру?
Отправлено: Haze от 01 Августа 2001, 20:25:28
Ну ладно, в лом спорить :)