Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024
Wanneer je overweegt een app te maken, hoe bepaal je dan hoe om de functionaliteit ervan te implementeren? Swift biedt, samen met de Cocoa en Cocoa Touch-kaders, een breed scala aan hulpmiddelen om u te helpen. Hier is een lijst met enkele vragen die je jezelf moet stellen wanneer je beslist welke te gebruiken:
-
Is dit iets dat mensen zowel op iOS als OS X moeten kunnen doen? Als het antwoord ja is, overweeg dan om een Xcode-werkruimte samen met een iOS-doel en een OS X-doel samen met gedeelde code te bouwen.
-
Is dit iets dat mensen op meerdere apparaten moeten kunnen doen? Overweeg de implementatie van iCloud zodat de gegevens op verschillende apparaten kunnen worden gedeeld.
-
Werken verschillende mensen aan dit project? Gebruik het ingebouwde Git-bronbesturingsmechanisme in Xcode.
De antwoorden op de voorgaande vragen zouden u moeten helpen begrijpen wat u aan het bouwen bent en hoe u de broncode wilt beheren. Houd bij het nemen van deze beslissingen rekening met deze Swift-specifieke vragen:
-
Is deze functionaliteit iets dat herhaaldelijk voorkomt in verschillende contexten met verschillende gegevens of met gegevensmanipulatie en berekeningen? Zo ja, dan is de kans groot dat dit een -functie of een -klasse zou zijn.
-
Klassen bevatten vaak functies en gegevens (hoewel ze de ene of de andere kunnen bevatten). Ze zijn meestal complexer dan functies, maar houd er rekening mee dat in Swift zeer lichtgewichtfuncties vaker worden gebruikt dan in andere objectgerichte talen.
-
Voorbeelden van functies zijn berekeningen, zoals kosten op basis van basisprijs, opmaak en aantal items, vullen van gebruikersinterface-elementen met gegevens uit een gegevensopslag, beheer van de overgang van of naar achtergrond.
-
-
Is dit een kwestie van het organiseren van dergelijke gegevens? Zo ja, een verzamelingssoort zoals een matrix of woordenboek is misschien het antwoord. Swift kan de regels afdwingen, zodat u weet dat elk element van een vergelijkbaar type is.
-
Is deze bewerking altijd hetzelfde of zijn er verschillende procedures afhankelijk van de omstandigheden (gegevens, externe omstandigheden, enzovoort)? In dat geval zou u rekening kunnen houden met de stroomregelaar, zoals lussen en voorwaarden . (U kunt ze binnen functies gebruiken.)
-
Moet u alleen functionaliteit bieden voor bepaalde soorten gegevens? Overweeg in dit geval -functies toe te voegen aan een structuur, methode of klasse.