===== JavaScript ===== * [[wp>Comparison of JavaScript frameworks]] * [[stackoverflow>394601|Which JavaScript framework (jQuery vs Dojo vs …)?]] * [[habrahabr>230449|18 неожиданностей при чтении исходного кода jQuery]] * [[habrahabr>189576|10 причин почему ваш проект должен использовать Dojo Toolkit]] * [[habrahabr>188580|Почему веб-приложения на мобильных платформах работают медленно]] * [[habrahabr>233805|Простой jQuery редактор для редактирования HTML5 текста (contenteditable) и сохранения с помощью AJAX]] * [[habrahabr>242503|Инкрементальные обновления]] -- наложение vcdiff, полученный с сервера, на версию из local storage. * [[https://events.yandex.ru/lib/talks/837/|Ускорение загрузки]] заменой URL на hash-URL * [[habrahabr>239169|Аппаратное ускорение]] -- использование аппаратно-ускоренного композитинга GPU. * [[habrahabr>254907|Web Bundle]] -- произвольные файлы упаковываются в один файл-контейнер в формате PNG, а на клиентской стороне доступ к ним организуется с помощью JS-библиотеки * [[habrahabr>247857|Все способы перебора массива в JavaScript]] * [[habrahabr>248111|Пишем быстрый и экономный код на JavaScript]] * [[habrahabr>234417|Несколько интересностей и полезностей для веб-разработчика #26]] * [[habrahabr>204848|Стиль написания кода на JavaScript для Uprock (перевод)]] * [[github>bevacqua/js|A quality conscious and organic JavaScript quality guide]] ==== MVC ==== * [[habrahabr>259939|Так ли быстр ReactJS?]] * [[habrahabr>277113|Почему я больше не использую MVC-фреймворки]] * [[habrahabr>276747|Идеальный UI фреймворк]] * [[habrahabr>277485|6 впечатляющих веб-технологий 2015 года]] === AngularJS === * [[youtube>i9MHigUZKEM|AngularJS Fundamentals In 60-ish Minutes]] ==== Testing ==== * [[github>marmelab/gremlins.js|Gremlins.js — monkey testing библиотека для веб приложений]] ==== IDE ==== * [[habrahabr>204538|Sublime + COLT. Добавь интеллекта своему IDE]] * [[http://download.aptana.com/studio3/plugin/install|Aptana Studio]] ==== Compressors ==== * [[http://yui.github.io/yuicompressor/|YUI Compressor]] ([[http://alchim.sourceforge.net/yuicompressor-maven-plugin/|yuicompressor-maven-plugin]]) * [[https://developers.google.com/closure/compiler/|Google Closure Compiler]] ([[googlecode>p/closure-compiler-maven-plugin|closure-compiler-maven-plugin]]) * [[http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/|Introduction to JavaScript Source Maps]] ==== Questions answered ==== === How to enable [[stackoverflowa>23889810/267197|CORS with secured services]]? === The following conditions should be met: * ''OPTIONS'' request should not be secured (Firefox fails) * The server should return the value different from ''*'' in ''Access-Control-Allow-Origin'' response header. The simplest is to return the value passed to the server in request header ''Origin''. * ''Access-Control-Allow-Methods'' and ''Access-Control-Allow-Headers'' should contain the list of allowed methods and headers which are allowed be passed to the server. # By default everything is static content: SetEnvIf Request_URI ".*" no-jk # Exclude resources to be processed by RESTful service: SetEnvIf Request_URI "^/backend/" !no-jk # Should not be secured and should always return HTTP 200: SetEnvIf Request_Method "OPTIONS" no-jk # Fallback value: SetEnv http_origin "*" SetEnvIf Origin "^https?://(localhost|.*\.mycompany\.org)(:[0-9]+)?$" http_origin=$0 Header set Access-Control-Allow-Credentials "true" Header set Access-Control-Allow-Origin "%{http_origin}e" Header set Access-Control-Allow-Methods "GET,POST,PUT,DELETE" Header set Access-Control-Allow-Headers "Content-Type,Accept" JkMount /* loadbalancer === How to POST file input using CORS? === Suppose there is HTML form with ''%%