Эмуляция проверок во время компиляции для языков сценариев (PHP и JS) - PullRequest
2 голосов
/ 05 июня 2011

Для скомпилированных языков, таких как Java или C, компиляция находится на переднем крае тестирования вашего кода.Он обрабатывает орфографические ошибки и применяет интерфейсы.У него есть другие полезные функции, такие как Java @Deprecated и @Override, если упомянуть несколько.

Есть ли инструмент, который проверяет ваш код аналогичным образом для интерпретируемых языков, таких как PHP или JavaScript?

Мне хорошо известно, что у JS нет интерфейсов, но многие метаинформации могут быть переданы инструменту, например, через комментарии в стиле Javadoc.

1 Ответ

1 голос
/ 05 июня 2011

Для некоторых из ваших необходимых вариантов использования, таких как проверка синтаксиса, ошибки именования и т. Д., Это можно сделать с помощью инструментов статического анализа кода , которые также могут обеспечивать соблюдение правил кодирования (длина строки, соглашения об именах, использование устаревших функции и т. д.). Для JavaScript есть JSLint (также посмотрите jslint4java , который можно использовать из командной строки или IDE). Существуют аналогичные инструменты для большинства языков сценариев. Я не знаком с такими инструментами для PHP, но вы можете найти что-то хорошее в этом связанном вопросе .

Кроме того, когда вы используете модульные тесты для обеспечения качества вашего кода, код будет выполняться все время, а синтаксические ошибки и т. Д. В любом случае будут быстро обнаруживаться. Хотя такие инструменты, как jslint, могут найти некоторые из тех же проблем без необходимости написания тестового кода, модульное тестирование найдет гораздо больше. ИМХО всегда следует использовать комбинацию модульного тестирования и одного или нескольких средств проверки кода.

...