CodeGym /Java Blog /Willekeurig /Waarom moet u de code van mensen lezen en hoe u dit goed ...
John Squirrels
Niveau 41
San Francisco

Waarom moet u de code van mensen lezen en hoe u dit goed doet

Gepubliceerd in de groep Willekeurig
Als je een goede schrijver wilt worden, is het niet genoeg om grammatica te kennen. Je moet ook veel boeken lezen die laten zien hoe deze grammatica wordt gebruikt om prominente teksten te maken. Evenzo, als je een goede programmeur wilt worden, is het niet genoeg om alleen Java te leren. Je zou ook veel codevoorbeelden van hoge kwaliteit moeten lezen die door andere programmeurs zijn geschreven, en vooral, ze begrijpen en ervan leren. Blootstelling aan voorbeelden van codes van hoge kwaliteit is eigenlijk een van de belangrijkste factoren die van invloed zijn op hoe snel en effectief u nieuwe vaardigheden leert. Waarom moet u de code van mensen lezen en hoe u dit goed doet - 1

Het belang van het lezen van de codes van anderen

" Ik haat het om andermans code te lezenZe zullen u inzicht geven in hoe elk onderdeel van het project werkt en u voorzien van nuttige inzichten over hoe het werkt. Dit zal je op zijn beurt helpen om je kennis aanzienlijk te verbeteren en uiteindelijk je eigen stijl te ontwikkelen.

Hoe te graven in code

Als je in de code van anderen duikt, voel je je misschien meer een archeoloog-onderzoeker dan een ontwikkelaar. Daar is niets mis mee, want je hebt veel "schoppen" tot je beschikking. Tegenwoordig heb je toegang tot veel metadata die je helpen de code veel gemakkelijker te begrijpen. U kunt bijvoorbeeld Git gebruiken om uzelf te helpen bij het lezen, kopiëren en plakken van de code. Toch kunnen enkele belangrijke punten u helpen de code in eerste instantie beter te begrijpen. Allereerst moet u de volgende vragen stellen:
  • Is er iets in de code dat u niet bekend voorkomt? Zo ja, bekijk dan die "lege ruimtes" en zorg ervoor dat u begrijpt waarvoor ze worden gebruikt.
  • Staat er iets overbodigs in de code? Er bestaan ​​ook dode codes, vooral als we het hebben over grote codebases.
  • Heeft de code afhankelijkheden? Soms is het beter om die afhankelijkheid te verwijderen door nog meer code te kopiëren/plakken.
  • Zijn er fouten opgetreden na het plakken?
Een andere aanbeveling is om uit te vinden wat de code doet en die acties terug te traceren . Als je bijvoorbeeld weet dat de code die je bekijkt een bestand aanmaakt met een lijst met filmtitels, probeer dan uit te zoeken in welke specifieke regels de code dat bestand genereert. Ga vervolgens een stap terug om erachter te komen hoe de code de informatie in dat bestand plaatst. Ga dan nog een stap terug om te begrijpen waar de gegevens vandaan komen... Je hebt het idee. De genoemde stukjes code kunnen een "keten van acties" worden genoemd. wat u een goed inzicht kan geven in zaken als:
  • hoe de body of code daadwerkelijk is opgebouwd;
  • de stijl van coderen;
  • hoe de programmeur die de code heeft geschreven de problemen oplost.
Evenzo kunt u het volgende proces in vier stappen proberen om meer te weten te komen over de code waaraan u werkt:
  • Voer de code uit en verken de resultaten. Als u de code uitvoert, krijgt u de essentiële informatie die u nodig hebt om de code beter te begrijpen.

  • Zoek de hoofdfunctie en het startpunt.

  • Voer de code uit met de debugger (misschien vindt u hier de meest efficiënte Java-foutopsporingstools ) om de mechanica van de code volledig te begrijpen. Door dit te doen, krijgt u een diepgaande analyse van de interne functionaliteit van de code die u aan het lezen bent.

  • Bouw een mindmap van de verbindingen tussen verschillende elementen in de code. Aangezien elke foutopsporing u een verband tussen de elementen laat zien, kunt u verschillende functies met elkaar in verband brengen en begrijpen hoe ze met elkaar omgaan.

Door de code op de genoemde manieren te onderzoeken, zul je uiteindelijk steeds meer van de specifieke code begrijpen (en hoe de onderdelen zijn verbonden). Natuurlijk, hoe meer u weet over een code, hoe meer u de volledige codebasis begrijpt. Met andere woorden, als u codevoorbeelden van hoge kwaliteit onderzoekt en gebruikt , wordt het na verloop van tijd gemakkelijker voor u om alle andere codes te lezen en te begrijpen.

Wat is het addertje onder het gras?

Je vraagt ​​je misschien nog steeds af wat het nut is van het lezen en begrijpen van de codes van andere programmeurs? Eigenlijk is het een uitstekende gelegenheid om te begrijpen hoe kant-en-klare modules "onder de motorkap" werken en iets nieuws te leren. En als je voelt dat je hersenen klaar zijn om de informatie op een andere manier te verwerken dan alleen theorie lezen en oefenen, wordt het waarschijnlijk de hoogste tijd dat je je Java-vaardigheden bijspijkert zonder veel extra inspanning.

Andere "bijwerkingen" van het gebruik van codes van andere mensen: meer vertrouwen

Zelfs als u de broncode van een of andere OSS (open-source software die voor iedereen direct beschikbaar is) hebt gelezen maar er niets van begrijpt, hoeft u zich geen zorgen te maken. Dat is helemaal prima, vooral als je net aan het leren bent. Het kan betekenen dat je er nog niet klaar voor bent. Als u de code echter begrijpt, krijgt u zeker een boost in uw zelfvertrouwen als Java-ontwikkelaar. Als je precies weet hoe een real-world project, softwareprogramma of app werkt, dan weet je zeker al veel over programmeren. Daarom is er geen manier om uw leerproces te stoppen. Dat gezegd hebbende, raden we bij CodeGym niet aan om in het begin te zware gewichten op te tillen. Verdiep u niet in grote applicaties of besturingssystemen, aangezien deze ervaring eerder frustrerend dan inspirerend kan zijn. In plaats van,"Help"-sectie , waar je kunt trainen om de codes van andere studenten te lezen, hints te geven of te leren van hun ervaring. U kunt ook ontdekken hoe uw collega's dezelfde taken oplossen. Een andere mogelijkheid die u misschien aanspreekt, is de StackOverflow- community, waar de codes die door andere programmeurs zijn geschreven meestal redelijk gestructureerd, opgemaakt en al becommentarieerd zijn. Geleidelijk aan zal de gewoonte om hoogwaardige (maar niet al te ingewikkelde) codes van uw collega's te lezen, u naar een geheel nieuw niveau van programmeren brengen.

Bovendien?

Het regelmatig lezen van codes zal u ook aanmoedigen om ze later in uw projecten te gebruiken en ze uiteindelijk aan te passen en aan uw specifieke behoeften te laten wennen. Natuurlijk, als we het hebben over open source softwarecodes waarbij de licentie u toestaat deze te wijzigen. Dergelijke code bespaart u veel tijd bij het vanaf het begin creëren van projecten en opent u naar een nieuw niveau van programmeren. Zoals u ziet, kan het lezen, kopiëren en plakken van code u helpen uw vaardigheden te verbeteren en veel tijd te besparen. En die extra tijd zal je helpen het juiste probleem op te lossen en je snelheid een boost te geven. Soms is het kopiëren en plakken van een reeds bestaande code de beste manier van handelen, maar onthoud altijd de licentievoorwaarden en de volledige onderdompeling in de code die u kopieert. GitHub , GitLab ,FreeCodeCamp of SourceForge zijn de beste open bronnen zonder fouten waarmee u een glimp kunt opvangen van de codes van andere ontwikkelaars.

Conclusie

Geen enkele programmeur kan zonder oude code te lezen als onderdeel van het schrijven van nieuwe code. En hoe langer je programmeert, hoe meer verschillende codes je ziet en hoe makkelijker het voor je wordt om ze te begrijpen. Onthoud dat wanneer het gemakkelijker is om codevoorbeelden te lezen, het gemakkelijker zal zijn om nieuwe te schrijven. Kortom, het is een fantastische zichzelf in stand houdende cyclus waarin je de mogelijkheid krijgt om de codes van anderen sneller en effectiever te begrijpen. Hieruit zult u ook positieve voordelen zien in uw eigen codering. Dus als u op zoek bent naar minder pauzes en meer vooruitgang, vergeet dan niet het lezen, begrijpen en wijzigen van reeds bestaande codes!
Opmerkingen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION