wanneer u deelneemt aan een nieuw project of een open source code leest, moet u gemerkt hebben dat sommige projecten uniform georganiseerd en goed gestructureerd zijn, terwijl andere rommelig en verward zijn? Als we de factoren samenvatten die zo ‘ n effect hebben op de codebasis, komen we de notie van codeconventie tegen.

laten we ontdekken:

  • Wat zijn code conventies?
  • Hoe kan de adoptie ervan enorme voordelen voor uw project opleveren?
  • Wat is SwiftLint?
  • en welke Swift-codestijlen te kiezen?

Defining Swift Code Convention

Codeconventie is een set van Do ’s en don’ ts die bestanden organisatie, programmeerpraktijken, ontwerppatronen, architectonische benadering, enz. beschrijven. Het kan een formele set van regels die wordt gevolgd door een team, organisatie of individu, of zijn zo informeel als een gewoonte van het toepassen van bepaalde codering praktijken.

Codestijl is een subset van codeconventie die bestandsopmaak regelt, zoals inspringen, positie van komma ‘ s, accolades, hoofdletters, enz. In Swift community wordt het onderscheid tussen de twee meestal niet gemaakt en de gemeenschappelijke term Swift code style of soms Swift style guide wordt gebruikt.

hier is hoe coderingsconventies eruit zouden kunnen zien:

  • bestandsnamen: een bestand dat een enkel type bevat moet dezelfde naam hebben als het type.
  • limiet voor de regellengte: een enkele regel code mag niet groter zijn dan 160 tekens.
  • naamgeving: variabelen zijn lowerCamelCase.

waarom Swift-Codestijl gebruiken

elke Swift-Ontwikkelaar weet dat de taal een enorm potentieel heeft, wat op zijn beurt veel complexiteit kan brengen, code in de war kan brengen en moeilijk te lezen en te onderhouden kan maken. Daarom is het kerndoel van Swift code style het verminderen van deze complexiteit door het beschrijven van goede en slechte praktijken van het schrijven van Swift code.

Waarom is het zo belangrijk om code gemakkelijker te lezen?

volgens Robert C. Martin is de tijd die we besteden aan het lezen van de code meer dan 10x meer dan het schrijven ervan. Verder lezen we voortdurend bestaande code om de nieuwe te schrijven.

een ander onderzoek van Facts and Failacies of Software Engineering stelt dat 40% -80% van de totale kosten van het programma naar onderhoud gaat.

laten we de voordelen samenvatten die Swift style guide oplevert:

  • helpt om de projectstructuur te begrijpen.
  • verbetert de leesbaarheid van code.
  • maakt onderhoud eenvoudiger.
  • versnelt onboarding voor nieuwe teamleden.
  • geeft de mogelijkheid om de beste programmeerpraktijken onder de knie te krijgen.
  • wordt een communicatiemiddel tussen programmeurs in de gemeenschap.

vanwege deze enorme impact worden coderingsconventies meestal overgenomen door IT-organisaties en zelfs hele programmeergemeenschappen.

een codestijl vanuit het niets ontwerpen is een niet-triviale taak en vereist geconsolideerde inspanningen. Gelukkig hoeven we als Swift-ontwikkelaars het wiel niet opnieuw uit te vinden en kunnen we meerdere bestaande Swift-stijlgidsen gebruiken.

laten we de meest prominente Swift-coderingsstijlen in meer detail onderzoeken.

het verkennen van Swift-Codestijlen

de definitie van goede codestijl is subjectief en mijn persoonlijke aanbeveling is om meerdere stijlen uit te werken en te vormen volgens uw projectbehoeften. De onderstaande lijst is hier om te helpen.

1. Swift.org

deze gids is standaard in de Swift-gemeenschap. Het consolideert de absolute minimum set van regels die elke Swift ontwikkelaar moet begrijpen en volgen.

De Gids richt zich op fundamentele aspecten van Swift API ontwerp dat wordt gevolgd door alle systeem frameworks. Niet alleen zal het maken van uw code kijken organische in combinatie met het systeem API ‘ s, maar ook het gemakkelijker te lezen en te begrijpen Cocoa frameworks.

op zichzelf, Swift.org code stijl is niet genoeg om een uitgebreide set van regels te bieden, maar het is een geweldige aanvulling op de andere gidsen hieronder vermeld.

Link: Swift.org codestijl

2. Google

normaal gesproken kom je ‘Google’ en ‘Swift’ niet in één zin tegen, maar dit keer niet. Google begrijpt ongetwijfeld het belang van code conventies en creëert conventies voor elke grote open-source projecten, zoals vermeld in Google Style Guides. Ik denk dat we TensorFlow moeten bedanken voor deze snelle gids.

deze Swift-code-stijl maakt indruk met zijn volledigheid. Het heeft betrekking op zoveel aspecten dat het simpelweg vermelden van hen hier zou maken dit artikel twee keer zo lang.

wat echt waardevol is aan deze gids is dat elk punt goed gefundeerd is door goede programmeerpraktijken op te sommen die vaak fundamenteel zijn voor alle talen. Programmeerpraktijken sectie, die ik sterk aanbevelen om te lezen of u nu op zoek bent naar een snelle gids of niet, echt schittert in dit aspect.

na het lezen en begrijpen van deze gids vindt u een betere programmeur in het algemeen en voegt u een aantal snelle trucs in uw zak.

Link: Google Swift-codestijl

3. Ray Wenderlich

het team achter raywenderlich.com is bekend in iOS-gemeenschap en heeft geen speciale introductie nodig. Net als Ray ‘ s artikelen, is De Gids op een duidelijke en begrijpelijke manier geschreven en is hij vooral geschikt voor snelle nieuwkomers

deze gids bereikt ongetwijfeld de gestelde doelen van helder, consistent en kort zijn. Elke regel wordt gevolgd door een volledige uitleg, redenering en een reeks voorbeelden met Do ’s en don’ ts.

wat ik leuk vind aan deze gids, is dat het verder gaat dan snelle syntaxis en code-opmaak en goede programmeerpraktijken uitlegt, zoals het vermijden van ongebruikte code, het verschil tussen waarde-en referentietypen verklaart, de concepten van lazy initialization, Toegangscontrole, early returns en nog veel meer.

op het moment dat ik dit artikel schrijf, heeft het al 137 gesloten pull requests, waaruit blijkt dat de gids sterk wordt gesteund door de gemeenschap.

Link: Ray Wenderlich Swift-codestijl

4. LinkedIn

LinkedIn doet geweldig werk bij het open sourcen van hun interne componenten en Swift-componenten zijn geen uitzondering. Hun Swift style guide bestaat al meer dan 3 jaar en bevat veel verbetering van zowel open source community en LinkedIn team.LinkedIn Swift guide is kort, beknopt en goed gestructureerd. Korte theoretische uitleg wordt vaak gegeven om de redenering achter bepaalde regels beter te begrijpen. De voorbeelden zijn altijd vanzelfsprekend en tonen duidelijk het punt.

De Gids richt zich voornamelijk op code-opmaak en ik raad ten zeerste aan om het te gebruiken in combinatie met andere Swift-codestijlen uit deze lijst.

Link: LinkedIn Swift-codestijl

5. Airbnb

Airbnb team staat bekend om hun waardevolle bijdrage aan iOS community. Op het moment dat ik schrijf dit artikel, Airbnb Swift Style Guide is slechts 1 week oud wat maakt het de meest verse in deze lijst.

vanaf het allereerste begin, De Gids stelt de juiste context door uit te leggen waarom je een code stijl nodig hebt en ik ben het volledig eens met elk punt.

De Gids is een genot om te lezen: Hij is goed gestructureerd en de regels zijn nauwkeurig uitgelegd. Waar het zinvol is, wordt elk punt begeleid met voorbeelden van dos en dont ‘ s en theoretische context. Bijna elke regel is lintable gemaakt met SwiftLint – een statische analyzer tool die enkele paragrafen hieronder zal worden besproken.

Ik hou vooral van de sectie patronen waar Airbnb praktische snelle adviezen geeft die ik ten zeerste aanraad om te controleren. Bijvoorbeeld, het Prescript om onveranderlijke waarden te gebruiken in plaats van veranderlijk en geeft tips over enums definitie. Mijn favoriet is het omgaan met onverwachte omstandigheden waarbij het gebruik van beweringen, randvoorwaarden en fatale fouten tot in detail wordt uitgelegd.

de guide biedt zelfs Xcode-editor-instellingen om te voldoen aan de regels van de sectie opmaak die gemakkelijk kunnen worden toegepast als middel van een script.

Link: Airbnb Swift Style Guide

Swift Code Linter SwiftLint

we zijn allemaal mensen en opzettelijk of niet, we maken allemaal fouten. Het volstaat dus niet om Swift-coderingsconventies te documenteren of mondeling overeen te komen. Om het aantal fouten te minimaliseren, moeten de regels worden afgedwongen door een geautomatiseerde tool, bekend als linter.

Linter is een statische code analyzer die programmeerfouten, bugs, opmaakfouten en potentieel schadelijke constructies vindt.

SwiftLint is de meest gebruikte Swift code analyzer die kan worden geconfigureerd op basis van aangepaste regels. Als u het nog niet gebruikt, raad ik u ten zeerste aan om SwiftLint te controleren en het zo snel mogelijk in uw Swift-projecten te gebruiken.

het belangrijkste om te begrijpen over SwiftLint is dat het niet een ‘enkele echte stijl’ afdwingt, maar helpt om consistent te zijn binnen een project.

samenvatting

uniforme codeconventies dragen veel bij aan de programmering van de productiviteit en we willen altijd zo productief mogelijk zijn.

de lijst met de meest opvallende Swift-coderingsstijlen is een geweldige bron van Swift-best practices en een startpunt om uw eigen verzameling conventies uit te werken.

goede Swift-codestijl is subjectief en moet aan u en uw team worden overgelaten. Zodra het is goedgekeurd en gedocumenteerd, wordt een dergelijke stijl een standaard en moet consistent zijn over het hele project om de leesbaarheid te verbeteren, wat resulteert in tal van voordelen.

SwiftLint is een algemeen gebruikt instrument in de Swift-gemeenschap dat helpt bij het afdwingen van coderingsconventies. Het helpt om menselijke fouten te voorkomen vroeg en kan een waardevolle aanvulling op uw project tools stack.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.