Početna » šifriranje » Zašto vam je potrebna Code Sniffers za web razvoj

    Zašto vam je potrebna Code Sniffers za web razvoj

    Optimizacija koda usporediva je s fazom uređivanja pisanja. Možda ćete prvo morati spustiti svoje ideje u kod, ali vaš kôd treba optimizirati s alatima poput sniffers koda proizvesti najbolji mogući proizvod.

    Njuškanje koda je izraz koji opisuje provjera koda za usklađenost s regulatornim standardima. Ti propisi mogu odrediti broj mjesta za uvlačenje, položaj kovrčavih zagrada ili kako imenovati varijable. Standardi nisu bitni za izgradnju web aplikacije, ali standardi su važni za unutarnju konzistentnost i održavanje koda.

    Ovo je mjesto gdje sniffing koda dolazi u ruci za sve programere, frontend za backend. Htio bih ispitati proces šifriranja koda i ponuditi nešto alate koji pomažu analizirati standarde koda.

    Što je kod njuškanja?

    Djelovanje sniffinga koda obično je automatizirano uštedite vrijeme i smanjite pogreške. Sniffer za kodove će provjerite jesu li izvorni kodovi u skladu sa standardima postavljaju interni razvojni timovi ili regulatorna tijela.

    Njuškanje kodova je slično kodiranju, ali je više pedantno. Prvenstveno linting provjerava bugove i sintaktičke pogreške dok njuškanje traži probleme način na koji je kod napisan. PHP datoteka još uvijek može ispravno funkcionirati, ali neće uspjeti testirati sniffing koda ako naziv varijable ne slijedi standarde (tj. $ myVariable vs $ my_variable).

    Sličan terminološki izraz je miris koda koji provjere za nedostatke u dizajnu u kodu koji može dovesti do većih bugova. To se može odnositi na standarde koda, ali također uključuje arhitekture više razine za pisanje homogenog koda.

    Sva su ta područja vrijedna pokrivanja i relevantna su za šifriranje koda. Samo imajte na umu taj sniffing kod neće uvijek pronaći bugove u vrijeme izvođenja budući da je njegov prioritet strogo poštivanje standarda.

    Do sada se možda pitate da li su standardi važni? Istina je da su važni, ali više za optimizaciju i čišćenje. Mnogi se razvojni inženjeri slažu da su standardi od vitalnog značaja za programiranje i razvoj weba - posebno za velike timske projekte.

    Evo citata koji je razvio programer Paul Jones i objašnjava zašto su standardi koda korisni.

    “Smisao standardnog stila kodiranja nije reći da je jedan stil objektivno bolji od drugog… Umjesto toga, cilj je postaviti poznata očekivanja o tome kako će izgledati kod.”

    Ako sami gradite mali webapp, možda ne vrijedi trošiti vrijeme na WCAG 2.0 ili PSR-2 standarde. Ali razmislite o stotinama programera koji rade na izvornom kodu Adobe Photoshopa. Bilo bi kaotično ako bi svaka osoba napisala svoj vlastiti stil i kombinirala sve to zajedno.

    Iako se timovi uvelike oslanjaju na standarde, ova pravila i dalje mogu biti korisna i za samostalne programere. Možete pronaći standarde koda za sve, od CSS-a do WordPressa, tako da nema izgovora da ne pokušate vidjeti i poboljšati kvalitetu koda.

    Standardi vrijednosti koda

    Norme će naravno biti čuvajte svoj kod čist i organiziran. Programeri znaju točno kako pisati kodove i kako ih pratiti zajedno.

    Standardi kodeksa također pomažu u razvoju otvorenog koda nudeći pravila koja drugi trebaju slijediti. Datoteke može pokupiti bilo tko mjesecima ili godinama kasnije i još uvijek lako čitati.

    Strogi stil kodiranja je dobra ideja čak i ako odlučite sami napraviti svoj. Za to je potrebno mnogo truda, ali kako projekti rastu, ova vrsta dokumentacije je neprocjenjiva.

    Evo nekih standarda kodiranja koji se odnose na raspon različitih web-jezika.

    • PEAR standardi kodiranja (PHP)
    • Google standardi za HTML / CSS
    • Google standardi za JavaScript
    • Stil kodiranja Django (Python)
    • Vodič za stilove šina (Ruby)
    • WCAG 2.0 (UX)

    Najbolji resursi za njuškanje kodova

    Sada je moguće pronaći besplatne sniffers koda za sve, od HTML / CSS do pozadinskih jezika kao što su PHP i SQL. Možda nećete morati koristiti ove sniffers ili slijediti standarde za svaki jezik, ali vrijedi istražiti mogućnosti da vidite što bi moglo poboljšati vašu izvedbu.

    Njuškala za kodove sučelja

    Iako HTML nema potreba sniffer koda koji nije zaustavio Squiz. Potpuno je otvoren izvor i hostiran na GitHubu s mogućnostima kopiranja / lijepljenja koda u preglednik ili spremanja oznake za pokretanje na pojedinačnim web-stranicama.

    Ovaj sniffer provjerava s tri razine WCAG-ovih standarda pristupačnosti A, AA i AAA, kao i smjernicama iz odjeljka 508 koje se primarno odnose na vladine web-lokacije.

    CSS programeri bi mogli voljeti ovaj besplatni CSS sniffer kod koji je također otvoren izvor, hostiran kroz Upravitelja paketa čvorova.

    jQuery korisnici trebali bi provjeriti JSCodeSniffer koji je izradio Dmitry Sheiko. Ovo je još jedan besplatan webapp koji se nalazi na GitHubu i koji je u skladu s vodičem za stil jQuery koda.

    Alternativno, možda ćete htjeti isprobati svoj JS kôd pomoću JavaScript Lint ili JS Lint. Ovi alati provjeravaju greške u sintaksi, a ne standardne kodove, ali su također vrlo korisni kada je u pitanju optimizacija koda koda.

    Za zapisnik je također moguće provjeriti JS / CSS standarde izravno s PHP_CodeSniffer-om.

    Sniffer za PHP kod

    PHP_CodeSniffer je alat koji morate imati u vašem alatu za alat ako želite ispuniti standarde PHP koda. Paket sadrži nekoliko PHP skripte koje analiziraju PHP, JS i CSS kod za usklađenost s vašim izborom dokumentacije o stilu koda.

    Tvorac PHP_CodeSniffer Greg Sherwood napisao je predivnu priču o tome kako je došla ideja i koje probleme pokušava riješiti (dobro je pročitati ako imate vremena).

    Ukratko, Greg je surađivao s timom koji je učio JavaScript ugrađen u PHP aplikaciju. Njihov je cilj bio strukturirati JS na način koji je slijedio standarde PHP koda kako bi se život lakše prebacivao naprijed i natrag. Tako je rođen PHP_CodeSniffer.

    To je super za PHP programere jer jezik je vrlo labav s obveznim zahtjevima stila. Okviri kao što je Laravel stroži su, ali programeri mogu (i trebaju) postaviti vlastite standarde koda bez oslanjanja na okvir treće strane.

    Različiti standardi kao što su PSR-0, PSR-1 i PSR-2 svi su popularni i pakirani s PHP bibliotekom za njuškanje.

    No, možete pronaći mnogo drugih unaprijed pripremljenih standarda za PHP CMS-ove kao što su WordPress, Magento i Drupal. Programeri na Drupal jezgri čak su izdali službeni modul snifera koda pod nazivom Coder.

    PHP je nesumnjivo najjednostavniji jezik za optimizaciju kod sniffers koda. Ako tražite popis standarda PHP koda pogledajte ovaj GitHub unos.

    Ostali pozadinski kodovi Sniffers

    Backend programeri rade s različitim jezicima izvan PHP-a i brojevi rastu svake godine. S alternativnim jezicima imamo i alternativne knjižnice snifiranja koda kao što je sniffer koda za Python.

    Moguće je provjeriti druge skripte na mreži ili koristiti alate kao što je PyLint. Ali to je još jedna metodologija koja zahtijeva strpljenje za rad u vašem tijeku razvoja.

    Ruby devs također imaju niz izbora kada je u pitanju kodiranje i analiza koda. Najbolji su uvijek besplatni i otvoreni izvor poput Ruby Linta, statičkog analizatora koda izgrađenog za moderni Ruby kod.

    Još nisam pronašao posvećeni Node.js sniffer kod, ali nadam se da će se projekt pojaviti s vremenom. Postoje snifferi za JS kodove koji podržavaju standarde čvorova, ali još uvijek je noviji pozadinski jezik i zahtijeva vrijeme za rast.

    Na kraju imamo SQL sintaksu koja se koristi za baze podataka. Ovaj kod može biti složeniji jer je teško pronaći dobro podržane sintaksne standarde za SQL izvorni kod. Ali ja sam pronašao SQL webapp oblikovanje, koji bi trebao dokazati strahovito korisno pri optimiziranju upita baze podataka.

    Zamotati

    Najbolje mjesto za početak šifriranja koda je s jednim jezikom i jednim standardom. HTML / CSS je jednostavno mjesto za početak za razvojne programere, dok je PHP često omiljeni izbor među programerima koji rade u pozadini (posebice WordPress uređaji).

    A ako želite saznati više, provjerite ove povezane postove na sniffing, linting i automatizirane analize koda za optimizaciju.

    • Zašto vam je potrebno kodiranje standarda
    • Code Smells by Jeff Atwood
    • Sniffer za PHP kod: Instalacija i konfiguracija
    • Uvod u CodeSniffer (1. dio)
    • GitHub Showcase: Clean Code Linters