Quickstarters
CRUD Samples
Comment développer une application CRUD pour iOS en utilisant Swift ?
28 min
aperçu ce guide vous aidera à construire une application crud simple (créer, lire, mettre à jour, supprimer) pour ios en utilisant back4app comme votre backend cloud, vous apprendrez à configurer votre projet, concevoir un modèle de données flexible et implémenter des fonctionnalités crud avec swift ce tutoriel démontre comment intégrer votre application ios avec back4app, en utilisant soit le sdk ios parse soit les appels api rest, garantissant une gestion fluide des données et une authentification sécurisée dans un premier temps, vous allez configurer un projet back4app—nommé basic crud app ios —qui fournit une base de données non relationnelle évolutive pour votre application vous définirez vos structures de données en créant des classes et des champs soit manuellement, soit en utilisant l'agent ia de back4app ensuite, vous explorerez comment gérer votre backend en utilisant l'application admin back4app intuitive, un outil de glisser déposer conçu pour simplifier la manipulation des données enfin, vous connecterez votre application ios avec le backend, en utilisant soit le sdk ios parse (lorsque cela est applicable) soit des appels api rest/graphql, et incorporerez une authentification utilisateur sécurisée à la fin de ce guide, vous aurez construit une application ios prête pour la production qui effectue des opérations crud de base, y compris une connexion utilisateur sécurisée et la gestion des données principales informations apprenez à créer une application crud ios avec un backend efficace comprenez comment architecturer un backend évolutif et le connecter de manière transparente avec une application ios découvrez comment utiliser l'application admin back4app pour la création, la récupération, la modification et la suppression de données simplifiées explorez les options de déploiement conteneurisé et d'autres améliorations pour votre projet ios conditions préalables avant de commencer, assurez vous d'avoir un compte back4app avec un projet actif besoin d'aide ? voir démarrer avec back4app https //www back4app com/docs/get started/new parse app une configuration de développement ios utilisez xcode (version 12 ou ultérieure) et assurez vous que votre environnement de développement est à jour une bonne maîtrise de swift, de la programmation orientée objet et des fondamentaux des api rest consultez la documentation swift https //developer apple com/swift/ pour plus de détails étape 1 – configuration de votre projet créer un nouveau projet back4app connectez vous à votre compte back4app cliquez sur le bouton “nouvelle application” depuis votre tableau de bord nommez votre projet basic crud app ios et suivez les instructions à l'écran pour compléter la configuration créer un nouveau projet après la création du projet, il apparaîtra dans votre tableau de bord, posant les bases de votre configuration backend étape 2 – élaboration de votre modèle de données définir vos structures de données pour cette application crud ios, vous allez établir plusieurs classes (collections) dans votre projet back4app ci dessous se trouvent les classes principales et leurs champs nécessaires pour soutenir vos opérations crud 1\ classe des articles cette classe stockera des informations sur chaque élément champ type de données description id identifiant d'objet identifiant unique généré automatiquement titre chaîne le nom ou le titre de l'élément description chaîne un bref résumé ou des détails sur l'élément créé à date horodatage marquant quand l'élément a été créé mis à jour le date horodatage marquant la dernière mise à jour de l'élément 2\ classe des utilisateurs cette classe gère les identifiants et les données d'authentification des utilisateurs champ type de données description id identifiant d'objet identifiant unique généré automatiquement nom d'utilisateur chaîne identifiant unique pour l'utilisateur email chaîne adresse e mail unique de l'utilisateur hashdemotdepasse chaîne mot de passe crypté pour une authentification sécurisée créé à date horodatage de la création du compte mis à jour le date horodatage de la dernière mise à jour du compte vous pouvez définir ces classes et champs directement dans le tableau de bord back4app créer une nouvelle classe vous pouvez ajouter des colonnes en sélectionnant un type de données, en nommant le champ, en définissant une valeur par défaut et en le marquant comme requis si nécessaire créer une colonne utiliser l'agent ai de back4app pour la configuration du schéma l'agent ai intégré dans votre tableau de bord peut générer automatiquement votre schéma de données à partir d'une description cela aide à simplifier la configuration et garantit que votre modèle de données prend en charge toutes les opérations crud nécessaires comment utiliser l'agent ai ouvrir l'agent ai accédez y via les paramètres de votre projet dans le tableau de bord back4app décrire votre modèle de données fournissez une invite complète détaillant les classes et leurs champs respectifs examiner et mettre en œuvre examinez le schéma proposé et confirmez pour appliquer la configuration exemple d'invite create the following classes in my back4app project 1\) class items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) class users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) cette approche alimentée par l'ia permet de gagner du temps et garantit une structure de données cohérente et optimisée pour votre application ios étape 3 – lancement de l'application admin et gestion des opérations crud aperçu de l'application admin l'application admin de back4app fournit une interface sans code pour gérer efficacement vos données backend ses fonctionnalités conviviales de glisser déposer simplifient le processus de création, de lecture, de mise à jour et de suppression d'enregistrements activation de l'application admin allez dans la section “plus” de votre tableau de bord back4app sélectionnez “admin app” et cliquez sur “activer l'application admin ” configurez vos identifiants administratifs en créant le compte administrateur initial, qui établira également les rôles système (comme b4aadminuser ) activer l'application admin après activation, connectez vous à l'application admin pour gérer vos données tableau de bord de l'application admin gestion des données avec l'application admin dans l'application admin, vous pouvez insérer des enregistrements utilisez la fonction “ajouter un enregistrement” dans n'importe quelle classe (par exemple, articles) pour introduire de nouvelles entrées examiner/modifier des enregistrements sélectionnez un enregistrement pour voir ses détails ou modifier ses champs supprimer des enregistrements supprimez les entrées qui ne sont plus nécessaires cette interface intuitive simplifie la gestion backend et améliore la productivité étape 4 – connecter votre application ios à back4app avec votre backend prêt, l'étape suivante consiste à lier votre application ios à back4app option a utiliser le sdk ios de parse installez le sdk ios de parse vous pouvez intégrer le sdk en utilisant swift package manager ou cocoapods pour cocoapods, ajoutez ce qui suit à votre podfile pod 'parse' initialiser parse dans votre application dans votre appdelegate, configurez parse en insérant le code suivant // appdelegate swift import uikit import parse @uiapplicationmain class appdelegate uiresponder, uiapplicationdelegate { func application( application uiapplication, didfinishlaunchingwithoptions launchoptions \[uiapplication launchoptionskey any]?) > bool { let configuration = parseclientconfiguration { $0 applicationid = "your application id" $0 clientkey = "your ios key" // replace with your ios key $0 server = "https //parseapi back4app com" } parse initialize(with configuration) return true } // } implémenter des opérations crud créer une classe de service en swift pour gérer vos opérations de données par exemple, un service pour récupérer et afficher des éléments // itemsservice swift import foundation import parse class itemsservice { func fetchitems(completion @escaping (\[pfobject]?) > void) { let query = pfquery(classname "items") query findobjectsinbackground { (objects, error) in if let error = error { print("error retrieving items \\(error localizeddescription)") completion(nil) } else { completion(objects) } } } func additem(title string, description string) { let item = pfobject(classname "items") item\["title"] = title item\["description"] = description item saveinbackground { (success, error) in if success { print("item successfully created ") } else if let error = error { print("creation error \\(error localizeddescription)") } } } func modifyitem(objectid string, newtitle string, newdescription string) { let query = pfquery(classname "items") query getobjectinbackground(withid objectid) { (item, error) in if let item = item { item\["title"] = newtitle item\["description"] = newdescription item saveinbackground { (success, error) in if success { print("item updated ") } else if let error = error { print("update error \\(error localizeddescription)") } } } else if let error = error { print("error finding item \\(error localizeddescription)") } } } func removeitem(objectid string) { let query = pfquery(classname "items") query getobjectinbackground(withid objectid) { (item, error) in if let item = item { item deleteinbackground { (success, error) in if success { print("item deleted ") } else if let error = error { print("deletion error \\(error localizeddescription)") } } } else if let error = error { print("error locating item \\(error localizeddescription)") } } } } option b utiliser rest ou graphql si le sdk ios de parse ne répond pas à vos besoins, vous pouvez exécuter des opérations crud via des appels rest par exemple, pour récupérer des éléments en utilisant rest en swift import foundation class restclient { func retrieveitems() { guard let url = url(string "https //parseapi back4app com/classes/items") else { return } var request = urlrequest(url url) request httpmethod = "get" request addvalue("your application id", forhttpheaderfield "x parse application id") request addvalue("your rest api key", forhttpheaderfield "x parse rest api key") urlsession shared datatask(with request) { data, response, error in if let error = error { print("error fetching items \\(error localizeddescription)") return } guard let data = data else { return } if let json = try? jsonserialization jsonobject(with data, options \[]) { print("fetched items \\(json)") } } resume() } } intégrez ces méthodes api dans vos classes swift selon vos besoins étape 5 – sécuriser votre backend configurer les listes de contrôle d'accès (acl) protégez vos données en configurant des acl par exemple, pour créer un élément auquel seul son propriétaire peut accéder import parse func createprivateitem(title string, description string, owner pfuser) { let item = pfobject(classname "items") item\["title"] = title item\["description"] = description let acl = pfacl() acl setreadaccess(true, for owner) acl setwriteaccess(true, for owner) acl publicreadaccess = false acl publicwriteaccess = false item acl = acl item saveinbackground { (success, error) in if success { print("private item successfully created ") } else if let error = error { print("error saving item \\(error localizeddescription)") } } } permissions au niveau de la classe (clp) dans le tableau de bord back4app, ajustez les clp pour vos classes afin d'appliquer des mesures de sécurité par défaut cela garantit que seuls les utilisateurs authentifiés ou les rôles désignés ont accès à des données spécifiques étape 6 – mise en œuvre de l'authentification des utilisateurs configuration des comptes utilisateurs back4app utilise la classe utilisateur parse intégrée pour gérer l'authentification dans votre application ios, gérez l'enregistrement et la connexion des utilisateurs comme illustré ci dessous import parse class authservice { func registeruser(username string, password string, email string) { let user = pfuser() user username = username user password = password user email = email user signupinbackground { (succeeded, error) in if succeeded { print("user registered successfully!") } else if let error = error { print("registration failed \\(error localizeddescription)") } } } func loginuser(username string, password string) { pfuser loginwithusername(inbackground username, password password) { (user, error) in if let user = user { print("logged in as \\(user username ?? "unknown")") } else if let error = error { print("login error \\(error localizeddescription)") } } } } une approche similaire peut être mise en œuvre pour gérer les sessions, les réinitialisations de mot de passe et d'autres fonctionnalités d'authentification étape 7 – conclusion et améliorations futures félicitations ! vous avez réussi à créer une application crud basée sur ios qui s'intègre avec back4app vous avez configuré un projet nommé basic crud app ios , conçu les classes items et users, et géré vos données à l'aide de l'application d'administration back4app de plus, vous avez connecté votre application ios via le sdk parse (ou via rest/graphql) et mis en œuvre des mesures de sécurité essentielles étapes futures développer l'application envisagez d'ajouter des fonctionnalités telles que le filtrage avancé, des vues détaillées des articles ou des mises à jour en temps réel améliorer les capacités du backend expérimentez avec des fonctions cloud, des intégrations d'api tierces ou un contrôle d'accès basé sur des rôles plus granulaire approfondir votre expertise visitez la documentation de back4app https //www back4app com/docs et explorez des tutoriels supplémentaires pour optimiser davantage votre application bonne programmation et meilleurs vœux pour votre parcours vers la création d'applications ios robustes !