Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 20.10.2009, 13:44
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Сообщение от Paguo-86PK Посмотреть сообщение
Вы наверное i286, i386, P-133 на картинках видели. А у меня они 5 лет назад инструментами были, даже спалил один из-за долбанного куллера
Не на картинках я видел Корвет, Поиск, P-133. А что, Вы, собственно, пытаетесь мне доказать? Что я должен тратить ресурсы своей машины, только потому, что "почему бы и нет, черт побери?". Разговор был о том, что все Ваши сжатия, с последующей распаковкой на клиенте, как png, так и eval(function(p,a,c,k,e,d){..}), это говноидеи. Есть gzip. Как Вы собираетесь проводить все это на мобильных девайсах? Их владельцы уж точно не будут рады тупящему телефону/КПК.
Ответить с цитированием
  #22 (permalink)  
Старый 20.10.2009, 13:49
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

А чем eval(function(p,a,c,k,e,d){..}) плох?
Ответить с цитированием
  #23 (permalink)  
Старый 20.10.2009, 13:57
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

А чем он хорош? Насколько сжатие таким образом превосходит gzip? (Учитываем, что гзипить eval -- только увеличивать размер) Стоит ли выгода очень серьезной нагрузки на клиент?
Ответить с цитированием
  #24 (permalink)  
Старый 20.10.2009, 14:03
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от e1f
Насколько сжатие таким образом превосходит gzip?
packer хуже gzip, т.к. у него еще распаковщик в комплекте вынужден присутствовать. Ну и время на распаковку больше требуется, разумеется.
Ответить с цитированием
  #25 (permalink)  
Старый 20.10.2009, 14:08
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от e1f
Учитываем, что гзипить eval -- только увеличивать размер
а как вообще этот gzip работает? Принцип в общих чертах расскажите кто-нибудь.
Ответить с цитированием
  #26 (permalink)  
Старый 20.10.2009, 14:24
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Kolyaj,
какой распаковщик? Это же eval на клиенте.
Riim,
http://ru.wikipedia.org/wiki/Gzip
Ответить с цитированием
  #27 (permalink)  
Старый 20.10.2009, 14:30
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от e1f
Это же eval на клиенте.
А перед eval что?
Ответить с цитированием
  #28 (permalink)  
Старый 20.10.2009, 14:44
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Сообщение от Kolyaj Посмотреть сообщение
packer хуже gzip, т.к. у него еще распаковщик в комплекте вынужден присутствовать.
Ты имеешь в виду серверный распаковщик aka unobfuscator? Так особо не актуально, если для себя, то есть несжатый вариант. А на клиенте-то никакого распаковщика нет...

UPD либо мы друг друга не поняли, и под распаковщиком имеется в виду преобразования кода, которые происходят в eval'e?
Ответить с цитированием
  #29 (permalink)  
Старый 20.10.2009, 15:23
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Kolyaj, ты говорил, что сделал штуку, которая собирает все скрипты в один, сжимает и отдает клиенту. Я тут думал на эту тему, скажи, насколько верно я мыслю:

1. обработчик собирает все js-файлы с какой-то папки, если он сам лежит в этой папке, то не нужно учить его, откуда ему все собирать.

2. неясно как определять порядок сборки файлов, можно создать массив в самом обработчике, но если я захочу добавить еще файл, то придется лезть в код и что-то менять, мне это совсем не нравится. Можно рядом положить xml и в нем определять порядок - не многим лучше. Еще вариант: в самих файлах первой строкой дописывать комментарий, в котором что-то вроде z-index-а. Вроде получше, только сами эти z-index-ы мне всегда не нравились, например, определил я порядок {5,6,7,8,9} , далее хочу добавить что-то между 6 и 7, придется искать всех у кого 7+ и увеличивать на 1 - это нудно очень.

3. обработчик собрал все что нужно в один файл, теперь нужно пропустить через какой-нибудь YUICompressor, но это долго, делать так при каждом запросе совсем нельзя, значит нужно где-то сохранить результат, например в all.min.js . При следующих запросах обработчик просто ищет all.min.js и отдает его клиенту, важно время последнего изменения проставлять одно и тоже (такое же как у all.min.js), что бы браузер тоже кэшировал.

4. изменил я какой-нибудь файл, как объяснить обработчику, что он должен заново сгенерировать all.min.js , простейший вариант вручную удалять all.min.js , но желательно обойтись без "вручную". Можно просматривать все js-файлы и если есть такой, у которого дата изменения позже чем у all.min.js , то обновлять all.min.js . Опять же медленно получится, но как лучше я не знаю.

5. не очень хорошо то, что all.min.js на виду лежит, куда бы его запрятать так, что бы совсем нигде не видеть? В asp хоть application есть, не ясно как быть с другими ЯП.

Последний раз редактировалось Riim, 20.10.2009 в 15:27.
Ответить с цитированием
  #30 (permalink)  
Старый 20.10.2009, 15:53
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от e1f
либо мы друг друга не поняли
Пойдем с другой стороны: packer Дина Эдвардса сжимает скрипт в набор каких-то непонятных символов. Внимание вопрос: кто эти символы распаковывает обратно в рабочий JavaScript?

Сообщение от Riim
собирает все скрипты в один, сжимает и отдает клиенту
Не сжимает, сжималку мне все лень как-то писать, тем более, что есть YUICompressor.

2. Механизм работы препроцессора аналогичен механизму работы препроцессора языка C с некоторыми дополнениями: строка //#include_once "script.js" в любом файле заменяется на содержимое файла script.js, если в этом сеансе он еще не подключался.

4. Стандартные механизмы работы с кэшем. Например, каждый час/день/месяц обновлять содержимое.

5. Почему нехорошо?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как эта canvas влияет на https? demi Общие вопросы Javascript 4 28.08.2009 15:15
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20
Аналог wmode=transparent для Canvas или svg lusever Events/DOM/Window 1 15.06.2009 16:05
как найти нужный объект? `p r o x y jQuery 2 05.05.2009 01:12
форма как в ExtJS 2 magistr_bender Общие вопросы Javascript 0 11.09.2008 16:01