Домашня » Кодування » Чому ви потребуєте код Sniffers для веб-розробки

    Чому ви потребуєте код Sniffers для веб-розробки

    Оптимізація коду порівнянна з фазою редагування. Можливо, спочатку потрібно звести ваші ідеї в коді, але ваш код повинен бути оптимізований з такими інструментами перехоплення кодів виробляти найкращий продукт.

    Нюхання коду - це термін, який описується перевірка коду на відповідність нормативним стандартам. Ці правила можуть вказувати кількість пробілів, які слід використовувати для відступу, розміщення фігурних дужок або способи назвати змінні. Стандарти не є життєво важливими для створення веб-додатків, але важливі стандарти для внутрішньої узгодженості та підтримки коду.

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

    Що таке обнюхування коду?

    Дія перехоплення коду зазвичай автоматизована заощаджуйте час і зменшуйте кількість помилок. Сніффери коду будуть перевірити вихідні коди на відповідність стандартам встановлюються командами внутрішнього розвитку або регулюючими органами.

    Нюхання коду подібне до кодування linting, але більш педантичне. Линтування в першу чергу перевіряє помилки та синтаксичні помилки під час нюхання шукає проблеми в спосіб написання коду. Файл PHP все ще може працювати належним чином, але не пройде тест на нюхання коду, якщо ім'я змінної не відповідає стандартам (тобто. $ myVariable проти $ my_variable).

    Подібною термінологією є запах коду перевірки на недоліки дизайну в коді, який може призвести до більших помилок. Це може стосуватися стандартів коду, але також включає архітектури вищого рівня для написання однорідного коду.

    Всі ці сфери варто охоплювати і мають відношення до кодування. Просто майте на увазі, що нюхає код не завжди знаходять помилки під час виконання оскільки його пріоритет суворе дотримання стандартів.

    До теперішнього часу, можливо, ви запитаєте, чи є стандарти навіть важливими? Правда в тому, що вони мають значення, але більше для оптимізації та очищення проекту. Багато розробників погоджуються, що стандарти є життєво важливими для програмування та веб-розробки - особливо на великих командних проектах.

    Ось цитата від розробника Пол Джонса, пояснюючи, чому корисні кодові стандарти.

    “Суть стандарту стилю кодування полягає не в тому, щоб сказати, що один стиль об'єктивно кращий за інший… Замість цього, важливо встановити відомі очікування щодо того, як буде виглядати код.”

    Якщо ви створюєте невеликий webapp для себе, не варто витрачати час на стандарти WCAG 2.0 або PSR-2. Але розглянемо сотні розробників, що працюють над вихідним кодом Adobe Photoshop. Було б хаотично, якби кожна людина написала свій стиль і об'єднала все це разом.

    Хоча команди значною мірою покладаються на стандарти, ці правила все ще можуть бути корисними і для самотніх розробників. Ви можете знайти стандарти кодів для всього, від CSS до WordPress, тому немає причин, щоб не спробувати і перевірити, чи покращується якість вашого коду.

    Значення норм коду

    Стандарти будуть природно тримати свій код чистим і організованим. Розробники точно знають, як писати код і як слідувати один одному.

    Стандарти кодексу також допомагають розробці відкритих джерел, пропонуючи правила для інших. Файли можуть бути підхоплені будь-якими місяцями або роками пізніше і все ще легко читаються.

    Строгий стиль кодування є гарною ідеєю навіть якщо ви вирішите зробити свій власний. Це вимагає великих зусиль, але, оскільки проекти ростуть, цей тип документації неоціненний.

    Ось деякі стандарти кодування, які вважають, що охоплюють гаму різних мов веб.

    • Стандарти кодування PEAR (PHP)
    • Стандарти Google для HTML / CSS
    • Стандарти Google для JavaScript
    • Стиль кодування Django (Python)
    • Посібник із стилю Rails (Ruby)
    • WCAG 2.0 (UX)

    Найкращий ресурс кодування

    Тепер можна знайти безкоштовні сніффери коду для всього, від HTML / CSS до бекенда, таких як PHP і SQL. Можливо, вам не потрібно буде використовувати ці sniffers або дотримуватися стандартів для кожної мови, але варто вивчити можливості побачити, що може поліпшити вашу ефективність.

    Фронтенд Sniffers коду

    Хоча HTML не працює необхідності sniffer коду, який не зупиняв Squiz від створення одного. Це повністю відкритий код і розміщено на GitHub з можливістю копіювання / вставки коду в браузер або збереження закладки для запуску на окремих веб-сторінках.

    Цей переглядач перевіряє проти трьох рівнів стандартів доступності WCAG, A і AAA, а також рекомендацій розділу 508, які застосовуються в основному до урядових веб-сайтів.

    CSS-розробникам може сподобатися цей безкоштовний сніффер CSS-коду, який також є відкритим кодом, розміщений через Менеджер пакетів Node.

    Користувачі jQuery повинні перевірити JSCodeSniffer, побудований Дмитром Шейко. Це ще один безкоштовний webapp, розміщений на GitHub, який відповідає керівництву стилю коду jQuery.

    Крім того, ви можете спробувати встановити код JS за допомогою JavaScript Lint або JS Lint. Ці інструменти перевіряють на наявність помилок у синтаксисі, а не на стандартах коду, але вони також дуже корисні, коли йдеться про оптимізацію коду.

    Для запису також можна перевірити стандарти JS / CSS безпосередньо з PHP_CodeSniffer.

    Sniffer коду PHP

    PHP_CodeSniffer є обов'язковим інструментом у вашому інструменті, якщо ви хочете дотримуватися стандартів коду PHP. Пакет містить кілька PHP скрипти, які аналізують PHP, JS і CSS код на відповідність з вашим вибором документації стилю коду.

    Творець PHP_CodeSniffer Грег Шервуд написав чудову історію про те, як виникла ідея і які проблеми вона намагається вирішити (варто прочитати, якщо у вас є час).

    Таким чином, Грег працював з командою, яка вивчала JavaScript, вбудований у додаток PHP. Їхня мета полягала в тому, щоб структурувати JS таким чином, щоб відповідати стандартам коду PHP, щоб полегшити перемикання. Таким чином народився PHP_CodeSniffer.

    Це чудово для розробників PHP, тому що мова дуже вільна з обов'язковими вимогами до стилю. Такі рамки, як Laravel, є більш суворими, але розробники можуть (і повинні) встановлювати свої власні стандарти коду, не покладаючись на платформу третьої сторони..

    Різні стандарти, такі як PSR-0, PSR-1 і PSR-2, все популярні й упаковані в бібліотеку PHP-нюху..

    Але ви можете знайти багато інших готових стандартів коду для PHP CMS, таких як WordPress, Magento і Drupal. Розробники на ядрі Drupal навіть випустили офіційний модуль sniffer коду з ім'ям Coder.

    PHP, безсумнівно, є найпростішою мовою для оптимізації за допомогою sniffers коду. Якщо ви шукаєте список стандартів коду PHP перевірте цей запис GitHub.

    Інші бекфери Backend Code

    Backend розробники працюють з різними мовами поза PHP і числа зростають з кожним роком. З альтернативними мовами у нас також є альтернативні бібліотеки, що нюхають коди, такі як код-сніффер для Python.

    Можна перевірити інші скрипти онлайн або скористатися такими інструментами, як PyLint. Але це інша методологія, яка вимагає терпіння, щоб працювати у вашому розвитку.

    Розробники Ruby також мають ряд варіантів вибору кодування linting та аналіз. Найкращі з них завжди безкоштовні і з відкритим вихідним кодом, як Ruby Lint, статичний аналізатор коду, побудований за сучасним Ruby кодом.

    Я ще не знайшов спеціальний код sniffer Node.js, але я сподіваюся, що проект з'явиться з часом. Є Sniffers коду JS, які підтримують стандарти Node, але це все ще нова мова backend і вимагає часу для зростання.

    Нарешті, у базах даних використовується синтаксис SQL. Цей код може бути складнішим, оскільки важко знайти добре підтримувані синтаксичні стандарти для вихідного коду SQL. Але я знайшов webapp форматування SQL, який повинен виявитися надзвичайно корисним при оптимізації запитів до бази даних.

    Завершення

    Найкращим місцем для запуску кодування є використання однієї мови та одного стандарту. HTML / CSS - це просте місце для розробників інтерфейсів, тоді як PHP часто є улюбленим вибором серед розробників (особливо розробників WordPress).

    А якщо ви хочете дізнатися більше, ознайомтеся з цими пов'язаними посадами на нюхуванні коду, а також автоматизованому аналізу коду для оптимізації.

    • Чому потрібні стандарти кодування
    • Код запахи Джеффа Етвуда
    • Sniffer коду PHP: інсталяція та конфігурація
    • Вступ до CodeSniffer (Частина 1)
    • GitHub Showcase: Чистий код Linters