Hogyan tagadhatunk meg egy ' ha engedünk ' feltételes ellenőrzés a Swift nyelvben

Legjobb válasz

Nem mindig használhatja az guard alkalmazást, mert ehhez korai kilépés szükséges. Nincs tagolt if let konstrukció, azonban a kódrészlet nem igazán mutatja meg az érdekes esetet, ahol a legjobban hiányzott.

Ha a kódodnak valóban nincs szüksége date a if után, akkor nem kell használni az if let -t, csak tesztelje ha a kifejezés nil (megjegyzés, a kód Swift3-ish szintaktikává egyszerűsítve a relevancia és rövidség érdekében):

if UserDefaults.standard.objectForKey("first\_launch\_date") == nil {

UserDefaults.standard.set(date, forKey: "first\_launch\_date")

}

De ha feltételezzük, hogy a kód meg akarja az date használatához a if nyomán (különben miért adna neki egy nevet), akkor valamire kellemetlenebbre van szüksége, amelynek vége végül is valamivel if esetben:

let date: Date

if let existingDate = UserDefaults.standard.objectForKey("first\_launch\_date") {

date = existingDate

} else {

date = Date()

UserDefaults.standard.set(date, forKey: "first\_launch\_date")

}

Az az eset, amely igazán csalódást okoz én azonban akkor vagyok, amikor az if let elemet else if láncban használjuk. Gyakran (közel az idő feléhez?) A feltétellánc logikája negatívumok sorozatát akarja tesztelni, amelynek eredményeként a másik eset az egyetlen pozitív feltétel. Ha azonban az egyik feltételhez if let szükséges, akkor kénytelen a logikát pozitív tesztként kifejezni, a másik eset pedig negatív.

Példa az álkódban:

if error {

failure

} else if unexpected-format {

failure

} else if parse-failed {

failure

} else if result is a {

handle result a

} else {

handle result b

}

Ha ennek gyors végrehajtása magában foglalja az opcionális elem kibontását az elemzési teszt során, például if let result = parse(), akkor Meg kell vetemedni a logikát a kudarc-kudarc-sikertől a kudarc-siker-kudarcig. Példa néhány gyorsabb álkóddal:

if error {

failure

} else if unexpected-format {

failure

} else if let result = parse() {

if result is a {

handle result a

} else {

handle result b

}

} else {

failure

}

Yuck. Lehetséges, hogy egy if not let lehetővé teszi az eredeti logikát:

if error {

failure

} else if unexpected-format {

failure

} else if not let result = parse() {

failure // unlike if let, result not available to this code block

} else if result is a { // however it would be to everything after

handle result a

} else {

handle result b

}

Valakinek írnia kell egy javaslatot a gyors fejlődésre.

Válasz

  1. Iratkozzon fel ingyenes Apple fejlesztői fiókra
  2. Megértése a mai naptól (2016. június 4.) A Swift 3.0-hoz nincsenek oktatóanyagok, mivel bemutatják jövő héten a WWDC-n. Legalább 3 hónapba telik, amíg a szerzők elkészítik az új könyveket és oktatóanyagokat a Swift 3.0-hoz. A kivétel Erica Sadun lesz, aki nagyon szorgalmas és proaktív abban, hogy könyveit a Swift legújabb verziójához hozza.
  3. {Új} A mai naptól (2016. június 13.) az Apple bejelentette a Playgrounds alkalmazást az iPad számára, amely nagyon jó módszer a kezdők számára a Swift megtanulásához. Ezenkívül az Apple rendelkezik egy új e-könyvvel, amelynek neve: \_App Development with Swift\_, amely egy másik jó forrás a teljes nyelv kezdő számára.
  4. Kerüljön el mindent a Swift 1.0-n és maradjon távol a legtöbbektől információkat a 2.0-ról és a 2.1-ről, és próbáljon információt találni a Swift 2.2-es vagy jobb verziójának forrásaiból. Próbálja meg elkerülni a legfrissebb információkat tartalmazó anyagokat 2015 novemberét megelőzően. Ez néhány hónap múlva megváltozik, miután a Swift 3.0 elérhetőbb lett. Van néhány jelentős szintaxis és könyvtárváltozás, és a régebbi verziókban írt oktatóanyagok követése nehéz lehet.
  5. Szerezzen be egy példányt az Apple Swift kézikönyvéből az iBooks alkalmazásból. Ezeknek kell elsőnek lenniük a Swift 3.0 verzióval.
  6. Tallózás a kézikönyvekben szoftverpéldák valószínűleg felhasználják őket.
  7. felsorolás
  8. opcionális
  9. hibaellenőrzés
  10. bezárások (a szintaxist és a conc eat nehéz megfogni)
  11. struktúrák vs osztályok vs protokollok vs felsorolások
  12. protokoll-orientált tervezés
  13. referenciaszámlálás
  14. karakterláncok
  15. generikusok
  16. Swift könyvtár
  17. a nyelv funkcionális vonatkozásai (a bezárásokhoz és a könyvtárhoz kapcsolódóan)
  18. Böngésszen és / vagy vásároljon 1-2 e-könyvet (vagy fizikai könyvet) a Swiften. Számos jó könyv létezik.
  19. Sokkal több információ és oktatóanyag íródott, amelyek arra számítanak, hogy iOS vagy Mac OS programozót fogsz használni
  20. Határozd meg, hogy jobban érdekel-e a játékok vagy a termelékenység és inkább azokra koncentráljon. Számos könyv és oktatóanyag íródott a játék felfutásához, és bizonyos szempontból úgy gondolom, hogy a játékok könnyebben elsajátíthatók.
  21. Ha még soha nem írt egyetlen Apple alkalmazást sem, akkor azt javaslom, hogy aggódva is tanulja meg a Swift programot. sokat a C-objektívről. Jogi nyilatkozat: Nagyon nem szeretem a C-célkitűzést. Ha van régebbi kódja a C-objektívben, mindenképpen keresse meg és ismerje meg a C-objektív és a Swift áthidalását és használatát. A Swift oktatóanyagok biztosítják az alapjait annak, amit tudnia kell, és nem kerülheti el teljesen, mert sok / a legtöbb kakaótár / keretrendszer mind a C-objektívben van megírva.
  22. Ha van hitelkártyája vagy fizessen a haverjával, iratkozzon fel a Lynda webhelyre. com egy hónapig ingyenesen, és nézze meg az összes videót, amelyet Simon Allardice-tól és másoktól tudhat meg a Swiftről (és általános programozási koncepciókról, ha erre is szüksége van.)
  23. Tegye ugyanezt a Pluralsight. com .
  24. Keresse meg az Apple Deve webhelyet az összes referenciadokumentummal és annak elérési módjával kapcsolatban az x-Code segítségével. Remélhetőleg már korábban is használta az X-Code-ot. Ha nem, akkor az oktatóanyagoknak elegendő információt kellett volna nyújtaniuk a továbbjutáshoz. Ez fontos.
  25. Nyissa meg a RayWenderlich oldalt. com, és nézze meg az összes Swift videót és e-könyvet, amit csak tud. Az összes könyv megtekintéséhez regisztrálhat és / vagy megvásárolhatja az anyagokat. Állítson perbe, hogy jól megpihent, és saját maga végezze el az oktatóanyagokat . Ez kulcsfontosságú.
  26. Nézze meg a korábbi Apple WWDC-videókat a Swiften. Olvassa el figyelmesebben az Apple Swift kézikönyveket.
  27. Próbálja meg megírni saját alkalmazását. Ez megmutatja, hogy hol vannak olyan helyek, amelyeket át kell tekintenie vagy jobban meg kell tanulnia.
  28. Próbálkozzon az iTunes University / Stanford tanfolyamával a Swift iOS fejlesztéséről. Hátha tudsz lépést tartani. Ez nem egy kezdőknek szóló tanfolyam, ellentétben azzal, amit mások mondanak neked.
  29. Sok-sok különféle video-oktatót néztem meg a Youtube-on. Számomra többnyire csak az a jó bennük, hogy szabadok. Miután összehasonlította őket az általam korábban felsorolt ​​oktatóanyagokkal, kíváncsi lesz, miért vesztegette velük az idejét. Vannak kivételek, de sok időt fog pazarolni azzal, hogy végignézi őket. Nagyra értékelem, hogy az emberek saját videókat akarnak létrehozni. Ezt még egyszer kipróbáltam. Tehát tudom, mennyi energiát fordítanak a szakemberek arra, hogy világossá és érthetővé tegyék a dolgokat.
  30. Most, hogy eloszlatta az ingyenes Youtube dolgokat, nézzen meg néhány ilyen videót, és nézze meg, segítenek-e kitölteni néhány hiányzó információt vagy sem . Jó, ha alternatív perspektívák vannak.
  31. Iratkozzon fel a Swift online hírlevelekre. RayWenderlichnek jó listája van a kezdéshez.
  32. Olvassa el a saját és mások bejegyzéseit ebben a témában. Valószínűleg ki kell találni, hogyan lehet egyesíteni a kérdéseket / válaszokat.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük