Articles

Clean Swift

resoneert u met een van de volgende?

  • worden uw weergavecontrollers enorm en moeilijk te begrijpen, bugs oplossen en nieuwe functies toevoegen?
  • ok, u hebt de bedrijfslogica verplaatst naar de modellen. Maar nu worden je modellen te dik.
  • maakt uw app gebruik van een gigantische storyboard?
  • heeft u ooit 4 uur verspild om een bug te reproduceren en vervolgens een week om het te repareren? En nog steeds nergens heen? Klaar om het gewoon te patchen?
  • het toevoegen van een nieuwe functie betekent regressie en meer re, re, re-factoring?
  • voelt u zich schuldig als uw cliënt zegt “dit werkte vroeger”?
  • de effort vs benefit tradeoff met TDD is het gewoon niet waard.

natuurlijk weten we allemaal dat testen al deze problemen oplost. Maar je hebt geprobeerd om unit tests te schrijven en gaf het op.

de belangrijkste reden waarom mensen TDD opgeven en testen is omdat ze tests schrijven bovenop een slechte applicatiearchitectuur.

denk er eens over na. Als je ‘ s werelds mooiste huis kunt bouwen, maar op een slechte fundering, zal het huis instorten. Hetzelfde geldt voor uw applicatiearchitectuur.

ik heb door de jaren heen herhaaldelijk geprobeerd om met Unit Tests te werken (vooral met iOS) en heb geen manier gevonden die zinvol is en dit doet op een manier waarbij de tijd vs voordelen lonend zijn. Ik heb het gevoel dat ik het gevonden heb in deze architectuur.
– Darren Ehlers

maar zo hoeft het niet te zijn. Je hoeft niet bij MVC te blijven. Dus je bent op weg om te zoeken naar iets beters.

  • u bent ervan overtuigd dat MVC niet de manier is om vooruit te gaan.
  • dus je hebt MVVM geprobeerd met ReactiveCocoa, maar je moet iets nieuws leren. Meer afhankelijkheden, Jakkes!
  • of zelfs VIPER. Maar het opzetten van alle interfaces in de wireframe is zo complex. En je kunt segues niet gebruiken.
ik begon met het implementeren van de Clean Swift-architectuur om het te vergelijken met de originele Viper-architectuur. Ik moet zeggen dat je deed een geweldig werk met het en ik geniet echt van het lezen van uw berichten.
– Razvan

Wat als u nog geen ander framework hoeft te leren? U hoeft geen nieuwe afhankelijkheid toe te voegen.

stel je voor dat je de controle over je code terug kunt nemen. Je weet snel en precies waar de dingen zijn. U kunt bugs oplossen en nieuwe functies met vertrouwen toevoegen. U kunt uw applicatie stroom op te breken in meerdere storyboards. En ja, je kunt segues blijven gebruiken. En nee, er is geen draadframe om je te verwarren.

ten slotte kunt u ervoor zorgen dat cliënten ja zeggen tegen betalen voor TDD, en hen solide bewijs tonen hoe hun investering loont. U zult in staat zijn om met vertrouwen te lokaliseren waar een bug ligt, en hebben een schuld-vrij antwoord op de meest gevreesde opmerking – dit werkte vroeger.

een goede applicatiearchitectuur vergemakkelijkt het testen.

Voer hieronder uw naam en e-mailadres in. Je neemt een enorme eerste stap om je iOS-ontwikkelingsvaardigheden te verbeteren en indruk te maken op je collega ‘ s met schone code en tests. Je leert hoe je oom Bob ‘ s Schone architectuur toe te passen op uw iOS-apps.

blij u aan boord te hebben.

Nu u geabonneerd bent, krijgt u een link in uw postvak in om mijn Clean Swift Xcode templates te downloaden om automatisch alle componenten voor u te genereren. Verspil geen tijd met het schrijven van dezelfde boilerplate code. Focus op het schrijven van uw business logica.

uw sjablonen werken als een charme. Alles is erg netjes en ik geef de voorkeur aan de schone architectuur patroon boven VIPER.
– Augustin

u moet ook Clean Swift iOS-architectuur lezen voor het repareren van Massive View Controller om een introductie te krijgen voor Clean Swift. Dit bericht toont de concepten met behulp van een voorbeeld rechtstreeks van Oom Bob zelf. Het helpt u ook bij het gebruik van de Xcode-sjablonen om de schone Swift-componenten te genereren. Zo begin je in een mum van tijd met de implementatie van de business logic van je app.

de komende weken zullen we ook dieper ingaan op de volgende onderwerpen:

  • Toepassen Schoon Swift en de VIP-cyclus van Apple ‘ s sample codes
  • uw gemachtigde methoden, met het oog controller, interactor, of de werknemer
  • Geavanceerde router met meerdere storyboards
  • Schrijf snel en eenvoudig te onderhouden tests met vertrouwen te maken van veranderingen
  • Een outside-in aanpak te testen – van de aanvaarding van unit tests
  • het Schrijven van uw eigen bespot en stubs
  • Diep duik in elk Schoon Swift component
  • Vergelijk Schoon Swift, MVVM + ReactiveCocoa, en VIPER
  • Protocol-georiënteerd programmeren en Schoon Swift
  • het Omzetten van uw bestaand project om Swift op te schonen
  • hoe presteert Clean Swift in een groot project
  • extraheren van gemeenschappelijke code voor hergebruik in werknemers en dienstenobjecten
  • Hoe breek je complexe bedrijfslogica af met behulp van werknemers

If you want me om een van deze specifieke onderwerpen eerst te schrijven, of als je hele andere onderwerpen in gedachten hebt, stuur me een e-mail.

ook als u met Objective-C werkt en me wilt helpen een Objective-C-versie van de Xcode-sjablonen te testen, stuur me dan een e-mail nadat u zich hebt aangemeld.

Ik hoor graag hoe u Clean Swift toepast op uw iOS-projecten.

ik moet zeggen dat de VIP-architectuur echt aan het groeien is. Met behulp van sjablonen wordt alles duidelijk en heel eenvoudig, zonder het gevoel dat de architectuur te veel standaardcode produceert.
– Mihai