Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.10.2014, 17:26
Аспирант
Посмотреть профиль Найти все сообщения от petya
 
Регистрация: 02.09.2014
Сообщений: 77

Вопрос по оптимизации
Я тут вот что подумал. Движки JS сейчас оптимизируют код. В некоторых случаях это дает наверное, ощутимый профит, но иногда мне кажется, это может быть источников тормозов. В чем заключаются основные оптимизации? Я в этом не разбираюсь толком, но думаю, это, в основном, банальщина, типа, сокращение имен переменных, вынос вычислений за цикл, кэширование и прочее. То есть, 90% можно руками сделать, безо всякой оптимизации, если голову включить. А с другой стороны, этот статический анализ и оптимизации тоже ведь занимают время? В приложениях, где много динамики все постоянно анализируется, перезаписывается. Сколько времени уходит на это никто толком не знает. Сколько памяти отжирает? Жаба-опыт нам как бы намекает на это, а разрабы вторично в то же говно лезут.

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

А хорошо бы было, если бы включили режим чистой интерпретации и возможность (какую нибудь дерективу, типа "use ..."), которая бы запрещала оптимизацию. Может есть такое? Я что-то не встречал. Подскажите, если кто-нибудь знает, плз.

Последний раз редактировалось petya, 02.10.2014 в 17:29.
Ответить с цитированием
  #2 (permalink)  
Старый 02.10.2014, 17:50
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ну дык на заре веб-браузеров как раз был режим "чистой интерпретации", что даже сраная летающая по сайту снежинка процессор на 146% загружала. Это тебе нужно?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 02.10.2014, 17:51
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от petya
Тестировать код нормально, осмысленно невозможно, без бутылки.
Больше конкретики. Что именно тебе мешает?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #4 (permalink)  
Старый 02.10.2014, 17:53
Аспирант
Посмотреть профиль Найти все сообщения от petya
 
Регистрация: 02.09.2014
Сообщений: 77

Сообщение от danik.js
Ну дык на заре веб-браузеров как раз был режим "чистой интерпретации", что даже сраная летающая по сайту снежинка процессор на 146% загружала. Это тебе нужно?
Тут все не так однозначно. Возможно интерпретатор был криво написан (кому тогда было какое дело до снежинок), а может (что наиболее вероятно) писатели были такие. Я знаю, что не все интерпретаторы в мире тормозят, есть такие, которые делают компиляторы по скорости.
Ответить с цитированием
  #5 (permalink)  
Старый 02.10.2014, 17:55
Аспирант
Посмотреть профиль Найти все сообщения от petya
 
Регистрация: 02.09.2014
Сообщений: 77

Сообщение от danik.js
Что именно тебе мешает?
Да все. Я иногда код на ноде тестирую, он при первом запуске работает медленней последующих на 90%, я не в силах это разгрести, даже не берусь.
Ответить с цитированием
  #6 (permalink)  
Старый 02.10.2014, 18:00
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,491

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

P.S. Без оптимизации никуда. Покодил тут на досуге на lua - там банальная конкатенация строк в цикле приводит к аду. Совсем не та хрень о которой хочется париться используя скриптовой язык.
__________________
29375, 35
Ответить с цитированием
  #7 (permalink)  
Старый 02.10.2014, 18:03
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

petya,
так проблема в твоём коде, а не Ноде.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос по toDataURL() GodZiLA Общие вопросы Javascript 0 03.06.2014 17:21
Всплытие событий или что то не так... Кирюха =) jQuery 6 30.03.2013 12:56
хотел как лучше, а получилось как всегда. Вопрос оптимизации 9xakep Общие вопросы Javascript 13 21.01.2013 17:27
вопрос про возможности JS для рисования и анимации macdack Библиотеки/Тулкиты/Фреймворки 3 15.07.2011 00:13
Теоретический вопрос. gods33 (X)HTML/CSS 10 16.12.2010 23:49