HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Посоветуйте способы уменьшения объема скриптов
  #1  
Старый 26.01.2006, 01:26
DizzZ
Новичок
Регистрация: 24.01.2006
Сообщений: 3
С нами: 10680849

Репутация: 0
Lightbulb Посоветуйте способы уменьшения объема скриптов

Довольно давно столкнулся с проблемой, которая мне до сих пор не дает покоя.
Есть скрипт, но он большой и его объем надо уменьшить. Поскольку за трафик приходится платить. Да и пользователей жалко
Можно руками его править, но очень долго и вообще как-то тупо.
Пробовал кучу разного софта: HTML Zip, HTMLCompress, w3compiler, packer и еще кучу всего.
В некоторых софтинах встретилась довольно забавная тенденция - скрипты не работают после сжатия (в частности такое наболюдалось после обработки w3compiler'ом).
Вторая проблема - из-за использования zip-подобного алгоритма (а также из-за того, что распаковщик написан на JavaScript) скрипты разжимаются довольно долго (иногда несколько секунд, такое наблюдалось в HTML Zip, например).
Короче, решил свою софтину написать - eCoder. Вышло довольно неплохо (http://ecoder.org.ua), но второй недостаток хоть и сгладился, но не исчез - скриты все равно довольно долго распаковывались (хотя качество сжатия было существенно лучше, чем у вышеописанного софта.)
Для работы этой софтины требовался еще и .NET 1.1, что тоже достоинством не назовешь :-/ . Но делать нечего, приходилось пользоваться тем, что есть.
Это было где-то год назад.
Со временем я все же пришел к мысли, что надо не паковать, а по возможности оптимизировать, удаляя лишнее и укорачивая имена переменных.
Поискал такой софт. Кроме упомянутого выше w3compiler'а нашел еще кучу барахла, но скрипты в результате обработки либо мало уменьшались в размере, либо переставали работать, либо и то и другое
И опять я решил посоревноваться. Вроде бы, на этот раз успешно
Софтина вышла небольшая, кроссбраузерная (и, следовательно, кроссплатформенная). Поскольку писал на JavaScript, работает это все не слишком быстро, но на мой взгляд вполне нормально (на оптимизацию скрипта в 50К уходит обычно несколько секунд). Скрипты вроде не портит.

Но вот какой вопрос: может кто подскажет, как еще можно уменьшить объем скриптов?
Своей софтной (я обозвал ее TrickyScripter) я решил поделиться со всеми желающими (не жалко =)), так что ваши советы не пропадут зря, а принесут пользу вам и другим разработчикам.
На данный момент TrickyScripter уменьшает объем скриптов обычно вдвое-втрое. Но, я думаю, это не предел, если каждый поможет, чем сможет
Если кто хочет дать совет, побыть бета тестер или кому просто интересен этот проект - мыльте на scriptGuru@gmail.com (или просто пишите в этот топик)
 
Ответить с цитированием

  #2  
Старый 26.01.2006, 10:47
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

выдавать сжатые gzip'ом скрипты.
знать пхп.
 
Ответить с цитированием

  #3  
Старый 26.01.2006, 14:38
DizzZ
Новичок
Регистрация: 24.01.2006
Сообщений: 3
С нами: 10680849

Репутация: 0
По умолчанию

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

  #4  
Старый 26.01.2006, 15:54
vorobei
Новичок
Регистрация: 23.12.2005
Сообщений: 16
С нами: 10726497

Репутация: 0
По умолчанию

2DizzZ
знать пхп. это не значит знать его вообще а уметь писать нормально чтоб в скрипте не было лишнего мусора который потом и грузитса часами...

а если есть такая проблема то лучше почитать книги умные по основам програмирования вобщем и оптимизацыи програм...
 
Ответить с цитированием

  #5  
Старый 26.01.2006, 19:46
DizzZ
Новичок
Регистрация: 24.01.2006
Сообщений: 3
С нами: 10680849

Репутация: 0
По умолчанию

Я говорил про JavaScript в первую очередь, так что РНР тут не при чем. В принципе, даже очень грамотно написанный скрипт можно уменьшить в пару раз.
 
Ответить с цитированием

  #6  
Старый 26.01.2006, 20:08
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

А вынести в отдельный файл его? Он тогда больше не будет загружаться, броузер его будет брать из кеша %)
 
Ответить с цитированием

  #7  
Старый 27.01.2006, 01:36
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
С нами: 11042306

Репутация: 2726


По умолчанию

А у юзеров что оттого что скрипт размером больше будет страничка дольше грузиться?
Они напрямую к скрипту никакого отношения не имеют...
 
Ответить с цитированием

  #8  
Старый 27.01.2006, 02:10
censored!
Green member - Level 3
Регистрация: 02.11.2004
Сообщений: 1,337
С нами: 11325926

Репутация: 648


По умолчанию

Цитата:
А у юзеров что оттого что скрипт размером больше будет страничка дольше грузиться?
Они напрямую к скрипту никакого отношения не имеют...
Автор написал что имеет в виду JS.

Цитата:
говорил про JavaScript в первую очередь, так что РНР тут не при чем
Как написали - все js удобно в файле одном хранить. Да и на среднестатистическом сайте че там этого JS? С гулькин нос! А чтобы вес со страницы срезать, лучше уж грамотно изображения оптимизировать - а то у некоторых кнопка-блямба по пару мегов. Или html подчистить. Или прогнать через какой-нить html-оптимизатор, который удалит все что лишнее (и пробелы между тэгами в том числе). Т.е. все будет в одну строку (где это возможно). Так что лучше html чистить.
__________________
+ (это не крестик, это плюсик!)
__________________


 
Ответить с цитированием

  #9  
Старый 27.01.2006, 13:33
grinay
IQ- 137%
Регистрация: 15.06.2004
Сообщений: 441
С нами: 11527586

Репутация: 662
По умолчанию

Шаблонизирование как говорилось выше... Чтоб работало все с кешем.
<script src=function.js></acript>
та же история и с css.Сжимай график. все выноси за рамки документа...
Вот а вообще да смотря какой скрипт ..если только хтмл то то что я описал выше и если еще и пхп то полюбому работа с шаблонами и оптимиззация кода в официальном мануале по пхп об этом много сказано что например не используйте регепсы там где действительно можно обойтися без них такая же фигня и с циклами while и for.Вот так вообщем.
и вот еще.. не надо изобретать в своих скриптах велосипед есть уже давно много классов готовых которые давным давно оптимизированныи по размеру и по функциональности используй также встроиный функции коих множество. Не надо писать класс который будет вычислять синусы и косинусы которые займут лишние килобайты строк веди есть готовые функции которые занимают 40 байт

Последний раз редактировалось grinay; 27.01.2006 в 13:36..
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.