Having Moro med YOLOKit 
 4 
 Del 
 Del 
 Del 
 Dette Cyber mandag Envato Tuts + kurs vil bli redusert å bare $ 3. Ikke gå glipp av. 
 
 opplisting samlinger i Objective-C er ofte ordrik og klumpete. Hvis du er vant til Ruby eller jobbet med Underscore eller Lo-Dash i Javascript, så vet du det er mer elegante løsninger. Det er akkurat det skaperne av YOLOKit tenkte da de laget denne kjekk liten biblioteket. YOLOKit slagord er  Liste opp Foundation herlig Anmeldelser og de mener det. 
  
 
 1. Installasjon 
 
 Legge YOLOKit til en Xcode prosjekt er veldig lett med CocoaPods. Inkluder pod i prosjektets Podfile, kjører pod oppdatering fra kommandolinjen, og import YOLO.h uansett hvor du ønsker å bruke YOLOKit. 
 
 Hvis du ikke bruker CocoaPods, deretter laste ned biblioteket fra GitHub, legge relevante filer til prosjektet, og import YOLOKit header. 
 
 2. Bruke YOLOKit 
 
 YOLOKit har mye å tilby, men i denne rask spiss skal jeg bare fokusere på noen av metodene YOLOKit har i sitt repertoar. 
 
 Minimum og Maksimum 
 < p> La oss starte enkelt med utpakking av minimums- og maksimumsverdien av en matrise. . Ta en titt på følgende kodebiten for å se hvordan det fungerer 
 NSArray * tall = @ [@ (1), @ (2), @ (45), @ (- 12), @ (3,14), @ (384)]; //Minimumid min = numbers.min (^ (NSNumber * n) {return n.intValue;}); id max = numbers.max (^ (NSNumber * n) {return n.intValue;}); NSLog (@ "\\ nMin% @ \\ Nmax% @", min, maks);. 
 De ovennevnte kodebiten resultater i følgende resultat 
 MIN -12MAX 384 
 Syntaksen kan virke Odd og du kan lure på hvorfor min og maks ta en blokk, men dette faktisk legger mer makt til teser metoder. Du kan gjøre hva du vil i blokken for å finne ut hva som minimum og maksimum verdien i matrisen er. Følgende eksempel bør avklare dette 
 NSArray * ord = @ [@ "dette", @ "er", @ "a", @ "eksempel", @ "for", @ "alle"].; //Minimumid kortest = words.min (^ (NSString * n) {return (NSInteger) n.length;}); id lengste = words.max (^ (NSString * n) {return (NSInteger) n.length;} ); NSLog (@ "\\ nSHORTEST% @ \\ nLONGEST% @", korteste, lengste);. 
 KORTESTE aLONGEST alle 
YOLOKit er
 Dette kodebiten resultater i følgende resultat fleksibel og doesn 't klager om typen av blokk-argumenter. Men for å tilfredsstille kompilatoren, kastet vi returverdien av blokken til NSInteger, fordi det er hva det forventer 
 
 Filtrering Arrays 
 
 Velge &.; Avvise 
 
 Det finnes en rekke metoder for å filtrere arrays, inkludert velger og forkaster. . La oss se hvordan vi kan filtrere rekke tall og ord vi opprettet tidligere 
 NSArray * filteredNumbers = numbers.select (^ (NSNumber * n) {return n.intValue > 10;}); NSLog (@ "filtrert TALL \\ n% @ ", filteredNumbers); NSArray * filteredWords = words.reject (^ (NSString * n) {return n.length < = 2;}); NSLog (@" filtrert ORD \\ n% @ ", filteredWords ); 
 Du må innrømme at dette er veldig fint å se på. Det er konsis og svært leselig. Arrays i eksemplene ovenfor er enkle, men merk at du kan bruke arrays som er mye mer komplisert enn dette. Følgende eksempel illustrerer dette 
 NSArray * folk = @ [person1, person2, person3, person4, person5, person6];. NSArray * hanner = people.select (^ (Person * p) {return p.sex == 0;}); NSArray * hunner = people.reject (^ (Person * p) {return p.sex == 0;}); 
 undergrupper 
 
 YOLOKit definerer også første og siste, men de skjønner 't gjøre hva du forventer at de skal gjøre. Med andre ord, de er ikke tilsvarende NSArray sin firstObject og lastObject metoder. Med første og siste kan du opprette en undergruppe fra den opprinnelige matrisen. Ta en titt på følgende eksempel 
 NSArray * subsetNumbers = numbers.first (3);. NSArray * subsetWords = words.last (2); NSLog (@ "undergruppe TALL \\ n% @", subsetNumbers); NSLog (@ "undergruppe ORD \\ n% @", subsetWords);. 
 De ovennevnte kodebiten resultater i følgende resultat 
 undergruppe TALL (1 , 2, 45) undergruppe ORD (for, alle) 
 Manipulere Arrays 
 
 Sorterings 
 
 Sortering en matrise er trivielt med YOLOKit. La oss se hva det tar å sortere rekken av tallene vi opprettet tidligere. Så enkelt er det 
 NSArray * sortedNumbers = numbers.sort.; NSLog (@ "% @", sortedNumbers); 
 Uniquing 
 
 En av fordelene med å bruke NSSet er at den ikke inneholder like objekter. Men uniquing en rekke gjenstander er trivielt med YOLOKit. La oss legge til noen ekstra tall med YOLOKit sin concat metode og deretter unike rekken med Uniq 
 //Concatenatenumbers = numbers.concat (@ [@ 1 @ 2, @ 3 @ 4]),. NSLog (@ "CONCAT % @ ", tall); //Unique & Sortnumbers = numbers.uniq.sort; NSLog (@ "UNIQ% @", tall); 
 Har du lagt merke til jeg også sortert array ved kjeding uniq og sortere? Målet er ikke å slå Objective-C-kode i Ruby eller Javascript, men jeg er sikker på at du enig i at kodebiten er kortfattet, og veldig lett å lese og forstå 
 
 Vending &.; Shuffling 
 //ReversingNSArray * reversedNumbers = numbers.reverse; //ShufflingNSArray * shuffledWords = words.shuffle; NSLog (@ "MOTSATT \\ n% @", reversedNumbers); NSLog (@ "stokket \\ n% @", shuffledWords);. 
 De ovennevnte kodebiten resultater i følgende resultat 
 snudd (384, "3,14 "," -12 ", 45, 2, 1) stokkes (for, er, alle sammen, eksempelvis en, dette) 
 Andre metoder 
 
 Det er mange andre metoder for å arbeide med matriser, som rotering, prøve, uten, sett, transponere, etc. Jeg oppfordrer deg til å bla YOLOKit på GitHub for å finne ut mer om dem. 
 
 Det finnes også metoder som kan brukes med NSDictionary, NSNumber, og NSString . Følgende kodebiten viser deg hvordan du kan konvertere en streng til en rekke ord 
 id wordsInString = @ "Du lever bare en gang Høyre.?" Split (@ ".");. NSLog (@ "STRING% @", wordsInString); STRING (Du, bare leve, "en gang.", "Right?") 
 3. Hensyn 
 
 Kode Ferdigstillelse 
 
 På grunn av YOLOKit er merkelig syntaks, Xcode vil ikke være til stor hjelp når det gjelder å kode ferdigstillelse. Den vil vise deg en liste over forslag til YOLOKit metoder, men det er omtrent det. Hvis du ønsker å bruke YOLOKit, har du lære syntaksen. 
 
 er ytelse 
 
 YOLOKit ikke optimalisert for ytelse som denne GitHub problemet viser. Men, det gjør koden din penere og mer lesbart. Ved hjelp av en for løkke til løkke over en array vil være raskere og mer performant enn YOLOKit metoder og det er viktig at du holder dette i bakhodet. 
 
 Konklusjon 
 
 Må jeg anbefale YOLOKit? Ja og nei. Ovennevnte betraktninger bør ikke holde deg fra å bruke YOLOKit, men pass på at du ikke bruker YOLOKit om ytelsen er viktig, fordi det finnes bedre alternativer tilgjengelig lignende den gode gamle for loop. 
 
Den lange av den korte er at du bør bare bruke YOLOKit hvis du føler at det gir merverdi til prosjektet. Også vurdere at dine kollegaer trenger å lære og sette pris YOLOKit sin syntaks. Jeg tror YOLOKit er et flott prosjekt som tydelig viser hvor utrolig uttrykks Objective-C kan være. For meg er det den viktigste lærdommen jeg ta unna YOLOKit.

