Хорошие ресурсы и инструменты для современной тяжелой разработки JavaScript? [закрыто]


22

Я заинтересован в выполнении некоторых проектов, которые включают интенсивное использование JavaScript. А именно, основанные на HTML5 холст-игры, потенциально также использующие node.js. Я заинтересован в изучении современных лучших практик, инструментов и ресурсов для JavaScript.

Сложно исследовать JavaScript, потому что в конечном итоге вы перебираете много действительно устаревшего материала, вспоминая времена, когда «JavaScript» был четырехбуквенным словом.

Если вы сильно вовлечены в программирование JavaScript ...

  • Какой текстовый редактор или IDE вы используете?
  • Какую систему модульного тестирования вы используете?
  • Вы используете Selenium или что-то еще?
  • Какие еще инструменты вы используете?
  • Какие существуют сообщества, которые обсуждают последние события в JavaScript?
  • Какие книги вы читаете / ссылаетесь?
  • Какие блоги ты читаешь?


Пара отличных блогов, которые я прочитал: dailyjs.com - Несколько замечательных постов, касающихся новых библиотек и фреймворков на арене JS, с упором на Node.js. perfectionkills.com - Не часто обновляется, но когда Кангакс пишет статью, он углубляется в подробности, и вы поймете, сколько JS вы не знаете.
Мэтт Молнар

Веб-редактор Adobe Brackets: github.com/adobe/brackets - написан в основном на javascript с использованием встроенного фреймворка Chromium. Также интересная статья о том, как они создали этот редактор скобок (речь идет об инструментах, используемых фреймворках): ec2-174-129-28-157.compute-1.amazonaws.com/2012/06/26/…
Czarek Tomczak

Ух ты, может этот вопрос использовать обновление.
Эрик Реппен

Ответы:


19

Мой список будет:

Книги устаревают, как только они попадают на полки (как правило).


7
К этому я также добавил бы центр документации Mozilla в справочном разделе.
Trezoid

2
+1, это в значительной степени мой список, но я бы также добавил YUI Compressor (или компилятор Google Closure).
Демиан Брехт

Pagespeed также является хорошим вариантом для опции Profile Deferrable Javascript. Не только инструмент кодирования JS, но все же очень полезный.
Эд Джеймс

2
@RDL - какие, если какие-либо плагины javascript для vim вы используете?
Майк Х

Я замечаю, что здесь не рекомендовано никаких инструментов / платформ для модульного тестирования, несмотря на то, что за них так высоко голосовали ...
NT3RP

9

Какой текстовый редактор или IDE вы используете?

Все они поддерживают все функции разработки веб-приложений (JavaScript, HTML, CSS и т. Д.). Выберите Aptana, если вы ищете бесплатное решение.

Какую систему модульного тестирования вы используете?

  • Селен

    1. Имеет поддержку нескольких браузеров [IE, Firefox, Chrome, Safari, Opera и Konqueror] на нескольких платформах [Windows, Linux, Macintosh и т. Д.].
    2. Поддержка многих языков программирования для написания тестовых случаев [HTML, Java, C #, Perl, PHP, Python, Ruby и т. Д.].
    3. Удаленное выполнение (тестовые случаи находятся на одном компьютере, а выполнение в браузере может выполняться на другом компьютере).
    4. Вы также можете запускать регрессии даже в режиме свернутого браузера.

Какие еще инструменты вы используете?

  • Firebug, панель инструментов IE Dev и т. Д., Встроенные в браузер инструменты для отладки
  • Вы можете использовать некоторые библиотеки UI Library, такие как JQuery, YUI, ExtJS и т. Д. Для быстрой разработки.
  • Fiddler / HTTP Следите за отладкой HTTP-запросов и ответов.
  • JSLint для проверки некоторых проблем с синтаксисом JavaScript.
  • YUICompressor для минимизации кода HTML, CSS и Javascript.
  • DynaTrace / YSlow / Page Speed ​​- для тестирования производительности
  • СИТ для обнаружения утечек памяти
  • IE Tester для тестирования вашего приложения на разных версиях IE.

Какие книги вы читаете / ссылаетесь?

Больше


1
Selenium - это инструмент тестирования интеграции, а не модульное тестирование! Остальная часть этого, по моему мнению, довольно заметна: D
Эд Джеймс

1
jQuery - это библиотека для гораздо большего, чем пользовательский интерфейс, jQueryUI - это совершенно отдельная библиотека.
StuperUser

@StuperUser лжет. jQuery - это библиотека для манипулирования DOM, все остальное использует ее как большой молоток и «золотой инструмент, который решает все проблемы»
Raynos

@Raynos, jQuery - большой молот, когда он используется для манипулирования DOM, когда JavaScript подойдет. Он определенно приобрел достойный мем для своей репутации панацея. Как мы оба говорили, называть это «библиотекой пользовательского интерфейса» неточно.
StuperUser

@StuperUser: Полагаю, он действительно имел в виду jQuery UI
Lie Ryan

6

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

  • Для разработки я использую VIM, но вы можете найти netbeans, который стоит попробовать.
  • Для юнит тестирования хорошо, но не идеально.
  • EnvJs может дать вам хороший способ запуска ваших модульных тестов в командной строке
  • Я настоятельно рекомендую веб-драйвер часть селен 2
  • Полный пакет закрытия Google очень полезен
  • Я бы также порекомендовал вам знать, как использовать Google Chrome и IE для отладки на стороне Firebug, поскольку все они имеют свои особенности, которые могут привести вас к всевозможным тупикам.
  • Есть несколько отличных библиотек для JavaScript, которые очень важны для серьезной разработки. Я бы порекомендовал вам начать с jQuery, но есть множество других, которые так же хороши.
  • также автор jQuery Джон Резиг имеет полезный блог

тот же вопрос, который я только что задал для RDL: какие (если они есть) плагины vim вы используете для javascript?
Майк Х

@Mike Я не использую какие-либо специфичные для javascript плагины для vim. Я бы порекомендовал jsctags, которые будут интегрированы с любыми плагинами, использующими ctags, например taglist-plus
Duncan Grant

5

Ну ... хотя это еще далеко от завершения, я в настоящее время являюсь ведущим разработчиком нового кроссплатформенного проекта с открытым исходным кодом:

JS Studio

Вот скриншот:

Некоторые функции являются более полными, чем другие ... но вот предполагаемые цели:

  • Подсветка синтаксиса (в значительной степени завершена)
  • Организация проекта (частично реализовано)
  • Автозаполнение (включая завершение для распространенных JS-фреймворков, таких как jQuery и т. Д.)
  • Система сборки (для объединения файлов, минификации и т. Д.)
  • Расширяемый графический интерфейс (через расширения JavaScript)
  • Нумерация строк (почти полная), перенос слов, настраиваемые цвета для подсветки синтаксиса

Я настроил ежедневные сборки для Windows, и вы можете найти самую последнюю сборку здесь: http://files.quickmediasolutions.com/jsstudio/


Это выглядит интересно. Я искал хорошую JavaScript IDE. Есть ли бинарный файл, который можно скачать? Я не видел ни одного на веб-странице.
Джонас

@Jonas: К сожалению, на этой ранней стадии, есть только двоичный файл для Ubuntu. Но, надеюсь, у меня будет время для создания бинарного файла Windows в будущем.
Натан Осман

@Jonas: Очень ранняя сборка Windows здесь - некоторые вещи еще не работают, но вы можете по крайней мере открыть / сохранить файлы и некоторые другие вещи.
Натан Осман

какие-нибудь новые разработки на этом фронте?
Noctis

@Noctis: К сожалению, нет. Я столкнулся с некоторыми сложностями при реализации дополнения кода, и проект практически простаивал последние год или два.
Натан Осман

4

В категории «другие инструменты» я использую CoffeeScript (язык, который компилируется в JavaScript), потому что он устраняет трудности, которые навязывает мне синтаксис Javascript.

list.sort (a, b) -> a.isSmaller(b)

против

list.sort(function(a, b) { return a.isSmaller(b) });

Можно утверждать, технически это больше не javascript, но «чувство» coffescript заключается в том, что это всего лишь тонкий слой.


3

API для библиотеки jQuery http://api.jquery.com/ и хорошо выделенной копии jQuery In Action . Прочитайте его от корки до корки, а затем следуйте http://twitter.com/jquery, чтобы получить обновления в новых выпусках.

Вы сказали, что книги устарели, но вам нужно будет получить базовый уровень знаний, на котором можно основываться, а затем, как только вы освоитесь, будьте в курсе.

Qunit для модульного тестирования и Firebug и подсветка синтаксиса JavaScript для Firebug для отладки.



0

Надеемся, что это не будет слишком огорчено, но если вам важны такие вещи, как IDE и инструменты, тогда я настоятельно рекомендую взглянуть на Google Web Toolkit . Вы пишете свой код на Java в Eclipse, который действительно помогает писать ваш код. Он обеспечивает высокоэффективное завершение кода, утилиты рефакторинга и помогает отлаживать и перемещаться по вашей базе кода.

Вы все еще можете войти в сырой Javascript, когда вам нужно.

Затем ваш код компилируется в оптимизированный, минимизированный JS. Я успешно использовал этот подход в DOMless JS-среде, подобной node.js.

Для игр HTML5, проверьте PlayN, которая является библиотекой, которая использует GWT именно для этого.


Если вы все равно собираетесь компилировать в JavaScript на другом языке, есть множество вариантов - вам вовсе не обязательно использовать Java! Например, мы используем js_of_ocaml на работе правильно, поэтому мы можем написать наш код в OCaml и запустить его в браузере.
Тихон Джелвис

0

Я много занимаюсь разработкой JavaScript. Многие из них упоминаются, но вот что я использую:

  • Notepad ++
  • поджигатель
  • IE отладчик (F12) и Chrome отладчик (F12 в Windows)
  • Я использую Stack Overflow в основном для вопросов. Прибытие сюда также оказалось полезным.
  • Первая книга, которую я использовал, была «JavaScript: полное руководство». В настоящее время я использую не столько книги, сколько сайты, такие как документы MDN или MSDN.
  • Мы используем JQuery в тех местах, где это облегчает нашу жизнь.
  • Для модульного тестирования мы строим собственные тестовые комплекты.

0

Я могу рекомендовать еженедельную рассылку JavasScript . Это

Бесплатная раз в неделю электронная почта сводка новостей и статей JavaScript.

Я не читал книги Джона Резига, но слышал и читал хорошие отзывы. Его новая книга « Тайны JavaScript ниндзя» будет опубликована в ближайшее время.


Может кто-нибудь объяснить понижение?
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.