Mens jeg altid har været en stærk tilhænger af gratis og open source-apps, er det svært at manuelt gennemgå koden for hver app, og jeg ser ofte frem til kodevurderingsværktøjer.
Disse værktøjer hjælper dig med hurtigt at opdage dårlige programmeringsvaner, nøgleændringer i en komponents funktioner, højrisikokomponenter, sikkerhedsfejl osv. Desuden er disse værktøjer ofte GUI-baserede indikatorer, der gør det let at forstå uden ekspertise i det nævnte programmeringssprog. . Med det sagt er ikke alle apps til kodevurdering lige. Så her er de bedste kodevurderingsværktøjer til både enkeltpersoner og virksomheder.
Bedste værktøjer til gennemgang af kode
1. Gerrit
Gerrit er et webbaseret værktøj til kodegennemgang udviklet af Google og kræver, at en JDK-server kører. Det fungerer synkroniseret med GitHub. Så før du skubber koden i produktion, går den gennem Gerrit, hvor dine jævnaldrende kan gennemgå koden. Gerrit understøtter at skubbe et projekt via git-kommandoer ved hjælp af SSH eller HTTPS. For eksempel vil du uploade dit projekt til Gerrit til gennemgang. Du kan ssh din Gerrit-server og bruge "git push" til at uploade dine arkiver til Gerrit.
Gerrit tilbyder også et sæt plugins som CodeMirror, Phabriactor for at linke til andre kodevurderingsværktøjer og få yderligere funktioner.
Oversigt:
- Integrerer godt med GitHub
- Arbejder med git-aktiverede SSH- og HTTP-servere
- Understøtter begrænsede sprog som C, C ++,
Download Gerrit
2. RhodeCode
RhodeCode er et andet peer code review værktøj som Gerrit, der fungerer synkroniseret med GitHub. Imidlertid integreres det også godt med Mercurial & Subversion. I sammenligning med Gerrit giver det en rigere og meget mere intuitiv grænseflade. Du kan kommentere inline og foretage ændringer med koden gennem selve RhodeCode-webgrænsefladen. I modsætning til Gerrit-udvidelser leverer RhodeCode JSON-RPC API, så du kan oprette tredjepartsværktøjer ved hjælp af det. Min mest foretrukne funktion er den visuelle changelog, der giver et fugleperspektiv af udviklingsændringerne og hjælper med at holde styr på.
Derudover har du også sikkerhedsfunktioner som underretninger om lagerregel. Det informerer administratoren om mistænkelige aktiviteter i repoen. Du kan også begrænse repo-adgangen til bestemte IP-områder.
Oversigt:
- Peer code review værktøj
- Inline editor i RhodeCode webgrænsefladen
- Sikkerhedsmuligheder til revision, ACL, IP-filtrering osv
Download RhodeCode
3. Find sikkerhedsfejl
Find Security Bugs, i modsætning til navnet, er et plugin til at finde alle typer bugs i din kode. Det kan registrere dårlig kodepraksis, korrekthed, ydeevne flaskehalse, sikkerhedsfejl, risikabel kode, multithreaded korrekthed osv. Plugin fungerer synkroniseret med Maven Central repository. Men hvis du bruger en IDE. Det kan bruges lokalt sammen med Netbeans, Eclipse, IntelliJ, Jenkins og Sonar Qube. For eksempel brugte jeg Eclipse. På Eclipse-markedet er den tilgængelig under navnet "SpotBugs". Så installationsprocessen var ret let og ligetil.
Den eneste advarsel med Spotbugs er, at den kun fungerer med Java-kode og Java EE-applikationer.
Understøttede sprog: Java, Java EE
Oversigt:
-
- Arbejder synkroniseret med Maven central repository
- Plugin til Eclipse, Jenkins, Netbeans osv
Download Find SecurityBugs
4. SearchDiggity
SearchDiggity er et projekt, der samler populære hackingværktøjer som GoogleDiggity, BingDiggity, SHODAN Diggity, FlashDiggity osv. Det er for det meste et værktøj til sikkerhedskontrol af din webapp eller applikationsserver. Det bruger Google, Bing og SHODAN søgemaskine til at angribe og infiltrere dit websted eller server. Det bruger en kombination af regulære udtryk i søgeforespørgsler til at lække data. For eksempel kan SearchDiggity kontrollere, om dine AWS-nøgler er gemt i almindelig tekst, eller om dit websteds login er tilbøjelig til SQL-injektion.
Det er et must-have, hvis din webserver håndterer en enorm mængde webtrafik og er vært for en masse data.
Hvis du får fejlen "Google Bot registreret, pause i scanning i 15 minutter", kan du ændre SearchDiggity til at bruge de officielle betalte API'er leveret af Google, Bing og SHODAN under Hjælp> Indhold.
Oversigt:
- Evne til at kontrollere SQL Injection, sårbare porte på din webserver
- Arbejder ved hjælp af Google, Bing og SHODAN søgemaskine
- Kun Windows-værktøj
Download SearchDiggity
5. Phabricator
Phabricator er et sæt gratis værktøjer til gennemgang af webkoder. Det er en LAMP-applikation (Linux, Apache, MySQL, PHP) skrevet i PHP og er mere et revisions- og samarbejdsværktøj som GitHub.
Du kan prøve Phabricator, før du installerer den på din LAMP-server. Det har en hostet webinstans kaldet Phacility. Du kan synkronisere direkte i dine GitHub- eller SVN-kodeopbevaringssteder til denne forekomst. Det vigtigste værktøj i Phabricator er Differential. Det fungerer ligesom GitHub forpligter. Når en ændring er skubbet, underretter den alle brugerne om at gennemgå ændringen. Den præsenterer en komplet nedgang i ændringer og kode. Efter godkendelse godkendes ændringen og kan skubbes i produktion.
Understøttede sprog: NA
Oversigt:
- LAMP-server
- Samarbejde og gennemgå ændringer i kode med andre brugere
- Revision af brugerhandlinger på webserveren
- Fungerer ikke på en Windows-maskine
6. MS-applikationsinspektør
Microsoft lancerede for nylig sit kodevurderingsværktøj kaldet Application Inspector. I henhold til Microsoft blev dette værktøj bygget til at analysere open source-software og hvad koden, biblioteker udfører i en nøddeskal. For at kunne bruge Application Inspector skal du installere pakken “dotnet-sdk”. Rapporten udsendes i en HTML-fil. Jeg prøvede det på Nylas mail-appen, og rapportoversigten er ret kortfattet.
Præsentationen er godt opdelt og kategoriserer softwarefunktioner, anvendte protokoller, kaldte API'er osv. F.eks. Med hensyn til datalagring bruger Nylas mail SQL og lidt NoSQL til PubSub cloud messaging-tjenester. Jeg skal bare klikke på datalagring og "Vis" -knappen ved siden af Detaljer. Det viser dig de tilknyttede regler til højre, og når du klikker på det, får du kodegennemgangen i pop op-vinduet. Det er ret nemt og hurtigt at springe og gennemgå kode.
Understøttede sprog: C, C ++, C #, Java, JavaScript, HTML, Python, Objective-C, Go, Ruby, PowerShell, (API) AWS, Azure.
Oversigt:
- Kortfattet rapport, let at linke og gennemgå kode
- Understøtter et antal sprog
Download MS Application Inspector
Afsluttende ord
Jeg bruger Microsoft Application Inspector på grund af appens run-and-gun-tilgang. Det understøttes en lang række sprog og giver en ret god idé om koden. Hvis du har din egen dedikerede webserver, er Gerrit eller Phabricator et godt alternativ til GitHub. For flere spørgsmål eller forespørgsler, lad mig det vide i kommentarerne nedenfor.
Læs også:7 bedste udviklingskort til at lave dit første DIY-projekt