Quickstarters
CRUD Samples
Comment créer une appli CRUD pour iOS avec Objective-C ?
28 min
aperçu dans ce guide, vous découvrirez comment créer une application crud simple (créer, lire, mettre à jour, supprimer) pour ios en utilisant objective c nous utiliserons back4app comme backend pour gérer vos données, garantissant une intégration fluide d'un backend avec votre application ios ce guide couvre tout, de la configuration d'un projet back4app à la mise en œuvre des opérations crud essentielles en utilisant le sdk ios de parse au départ, vous allez configurer un projet back4app intitulé basic crud app ios ce projet servira de référentiel de données et vous permettra de concevoir un modèle de données flexible avec des classes telles que items et users vous pouvez définir ces classes manuellement dans le tableau de bord back4app ou tirer parti de l'agent ia intégré pour simplifier le processus après avoir configuré votre backend, vous l'intégrerez à votre application ios en objective c le tutoriel comprend des exemples de code pour initialiser le sdk parse, effectuer des opérations crud et mettre en œuvre une authentification utilisateur sécurisée à la fin de ce tutoriel, vous aurez construit une application ios prête pour la production qui effectue des fonctions crud fondamentales ainsi qu'une gestion sécurisée des utilisateurs concepts clés apprenez à développer une application crud ios en utilisant objective c avec un backend robuste comprenez comment concevoir et intégrer un backend évolutif en utilisant back4app utilisez l'application admin de back4app pour une gestion efficace des données implémentez un traitement sécurisé des données avec des acl et une authentification des utilisateurs en utilisant le sdk ios de parse prérequis avant de commencer, assurez vous d'avoir un compte back4app avec un projet actif besoin d'aide ? consultez commencer avec back4app https //www back4app com/docs/get started/new parse app xcode installé avec un environnement de développement ios configuré ce tutoriel suppose une familiarité avec objective c et le développement ios compréhension de base de la programmation orientée objet et des api rest rafraîchissez vos connaissances sur la documentation objective c https //developer apple com/library/archive/documentation/cocoa/conceptual/programmingwithobjectivec/introduction/introduction html si nécessaire étape 1 – initialisation du projet création de votre projet back4app connectez vous à votre compte back4app cliquez sur le bouton “nouvelle application” sur 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 une fois créé, votre projet apparaît sur le tableau de bord, servant de colonne vertébrale pour la gestion des données de votre application étape 2 – élaboration du modèle de données configuration de vos structures de données pour cette application crud ios, vous devez définir des classes clés dans votre projet back4app voici les classes principales et leurs champs 1\ classe d'articles cette classe stocke des détails sur chaque article champ type de données but id identifiant d'objet identifiant unique généré automatiquement titre chaîne le nom de l'article description chaîne un bref résumé de l'élément créé à date horodatage lorsque l'élément a été créé mis à jour le date horodatage de la dernière mise à jour 2\ classe des utilisateurs cette classe gère les identifiants et l'authentification des utilisateurs champ type de données but id identifiant d'objet identifiant généré automatiquement nom d'utilisateur chaîne nom d'utilisateur unique pour l'utilisateur email chaîne adresse e mail unique de l'utilisateur hashdemotdepasse chaîne mot de passe utilisateur stocké en toute sécurité créé à date horodatage de création du compte mis à jour le date dernière date de modification vous pouvez configurer ces classes via le tableau de bord back4app créer une nouvelle classe vous ajoutez des champs en sélectionnant le type de données, en nommant le champ, en attribuant des valeurs par défaut et en marquant les champs obligatoires créer une colonne utiliser l'agent ai de back4app pour la conception de schéma l'agent ai intégré peut automatiquement construire votre schéma de données en fonction de votre description cette fonctionnalité simplifie le processus de configuration et garantit que votre modèle de données répond aux exigences de l'application comment utiliser l'agent ai accéder à l'agent ai ouvrez votre tableau de bord back4app et accédez à l'agent ai dans les paramètres de votre projet détailler votre modèle de données entrez une invite décrivant les classes et champs requis examiner et confirmer une fois que l'ai génère une proposition de schéma, examinez la et confirmez pour appliquer les modifications 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 méthode permet de gagner du temps et garantit la cohérence de votre structure de données étape 3 – activer l'application admin et gérer les données aperçu de l'application admin l'application admin de back4app offre une interface conviviale sans code pour gérer vos données backend ses fonctionnalités de glisser déposer vous permettent de créer, visualiser, modifier et supprimer facilement des enregistrements activation de l'application admin allez dans le menu “plus” de votre tableau de bord back4app sélectionnez “admin app” et cliquez sur “activer l'application admin ” établissez votre compte admin en configurant des identifiants initiaux, ce qui configure également des rôles système comme b4aadminuser activer l'application admin après activation, connectez vous à l'application admin pour gérer vos données efficacement tableau de bord de l'application admin gestion des opérations crud via l'application admin dans l'application admin, vous pouvez ajouter des enregistrements cliquez sur “ajouter un enregistrement” dans une classe (par exemple, articles) pour insérer de nouvelles données modifier des enregistrements sélectionnez un enregistrement pour visualiser ou mettre à jour ses champs supprimer des enregistrements supprimez les entrées qui ne sont plus nécessaires cette interface simplifiée facilite considérablement les tâches de gestion des données étape 4 – connecter votre application ios à back4app avec le backend configuré, l'étape suivante consiste à intégrer votre application ios avec back4app en utilisant le sdk ios parse option a utiliser le sdk parse ios en objective c inclure le sdk parse ajoutez le framework parse à votre projet xcode vous pouvez utiliser cocoapods en ajoutant ce qui suit à votre podfile pod 'parse' initialisez parse dans votre appdelegate ouvrez votre appdelegate m et ajoutez le code d'initialisation dans le application\ didfinishlaunchingwithoptions méthode // appdelegate m \#import \<parse/parse h> \ (bool)application (uiapplication )application didfinishlaunchingwithoptions (nsdictionary )launchoptions { \[parse initializewithconfiguration \[parseclientconfiguration configurationwithblock ^(id\<parsemutableclientconfiguration> configuration) { configuration applicationid = @"your application id"; configuration clientkey = @"your ios key"; configuration server = @"https //parseapi back4app com"; }]]; return yes; } implémenter des méthodes crud en objective c créer une classe de service, par exemple, itemsservice m , pour gérer les opérations crud // itemsservice m \#import "itemsservice h" \#import \<parse/parse h> @implementation itemsservice \ (void)createitemwithtitle (nsstring )title description (nsstring )description { pfobject item = \[pfobject objectwithclassname @"items"]; item\[@"title"] = title; item\[@"description"] = description; \[item saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"item created successfully "); } else { nslog(@"error creating item %@", error localizeddescription); } }]; } \ (void)fetchitemswithcompletion (void (^)(nsarray items, nserror error))completion { pfquery query = \[pfquery querywithclassname @"items"]; \[query findobjectsinbackgroundwithblock ^(nsarray objects, nserror error) { completion(objects, error); }]; } \ (void)updateitemwithobjectid (nsstring )objectid newtitle (nsstring )newtitle newdescription (nsstring )newdescription { pfquery query = \[pfquery querywithclassname @"items"]; \[query getobjectinbackgroundwithid\ objectid block ^(pfobject item, nserror error) { if (item) { item\[@"title"] = newtitle; item\[@"description"] = newdescription; \[item saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"item updated successfully "); } else { nslog(@"error updating item %@", error localizeddescription); } }]; } else { nslog(@"error fetching item %@", error localizeddescription); } }]; } \ (void)deleteitemwithobjectid (nsstring )objectid { pfquery query = \[pfquery querywithclassname @"items"]; \[query getobjectinbackgroundwithid\ objectid block ^(pfobject item, nserror error) { if (item) { \[item deleteinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"item deleted successfully "); } else { nslog(@"error deleting item %@", error localizeddescription); } }]; } else { nslog(@"error fetching item %@", error localizeddescription); } }]; } @end option b utiliser rest ou graphql si vous préférez ne pas utiliser le sdk parse, vous pouvez interagir avec back4app via des appels api restful par exemple, pour récupérer des éléments via rest \#import \<foundation/foundation h> @interface restclient nsobject \+ (void)fetchitems; @end @implementation restclient \+ (void)fetchitems { nsurl url = \[nsurl urlwithstring @"https //parseapi back4app com/classes/items"]; nsmutableurlrequest request = \[nsmutableurlrequest requestwithurl\ url]; \[request sethttpmethod @"get"]; \[request setvalue @"your application id" forhttpheaderfield @"x parse application id"]; \[request setvalue @"your rest api key" forhttpheaderfield @"x parse rest api key"]; nsurlsessiondatatask datatask = \[\[nsurlsession sharedsession] datataskwithrequest\ request completionhandler ^(nsdata data, nsurlresponse response, nserror error) { if (error) { nslog(@"error fetching items %@", error localizeddescription); } else { nsstring result = \[\[nsstring alloc] initwithdata\ data encoding\ nsutf8stringencoding]; nslog(@"response %@", result); } }]; \[datatask resume]; } @end choisissez l'approche qui convient le mieux aux besoins de votre projet étape 5 – sécuriser votre backend configurer les listes de contrôle d'accès (acl) pour protéger vos données, configurez des acl pour vos objets par exemple, pour créer un élément visible uniquement par son propriétaire \#import \<parse/parse h> \ (void)createprivateitemwithtitle (nsstring )title description (nsstring )description owner (pfuser )owner { pfobject item = \[pfobject objectwithclassname @"items"]; item\[@"title"] = title; item\[@"description"] = description; pfacl acl = \[pfacl aclwithuser\ owner]; \[acl setpublicreadaccess\ no]; \[acl setpublicwriteaccess\ no]; item acl = acl; \[item saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"private item created "); } else { nslog(@"error saving item %@", error localizeddescription); } }]; } définir les autorisations au niveau de la classe (clp) utilisez le tableau de bord back4app pour ajuster les clp, en veillant à ce que seuls les utilisateurs authentifiés puissent accéder à certaines classes par défaut étape 6 – mise en œuvre de l'authentification des utilisateurs gestion des comptes utilisateurs back4app utilise la classe utilisateur native de parse pour gérer l'authentification des utilisateurs dans votre application ios, vous pouvez mettre en œuvre l'enregistrement et la connexion comme suit \#import \<parse/parse h> @interface authservice nsobject \+ (void)signupwithusername (nsstring )username password (nsstring )password email (nsstring )email; \+ (void)loginwithusername (nsstring )username password (nsstring )password; @end @implementation authservice \+ (void)signupwithusername (nsstring )username password (nsstring )password email (nsstring )email { pfuser user = \[pfuser user]; user username = username; user password = password; user email = email; \[user signupinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"user successfully registered!"); } else { nslog(@"sign up error %@", error localizeddescription); } }]; } \+ (void)loginwithusername (nsstring )username password (nsstring )password { \[pfuser loginwithusernameinbackground\ username password\ password block ^(pfuser user, nserror error) { if (user) { nslog(@"user logged in %@", user username); } else { nslog(@"login failed %@", error localizeddescription); } }]; } @end cette approche s'étend également à la gestion des sessions, aux réinitialisations de mot de passe et à d'autres fonctionnalités d'authentification étape 7 – conclusion et orientations futures félicitations ! vous avez réussi à créer une application crud ios en utilisant objective c, entièrement intégrée à back4app tout au long de ce guide, vous avez configuré un projet nommé basic crud app ios , conçu des classes principales pour les éléments et les utilisateurs, et géré votre backend à l'aide de l'application admin de plus, vous avez connecté votre application en utilisant le sdk ios de parse, mis en œuvre des opérations crud et sécurisé vos données avec des acl prochaines étapes développer l'application incorporez des fonctionnalités supplémentaires comme une recherche avancée, des vues détaillées des éléments ou des mises à jour en temps réel améliorer les capacités du backend explorez les fonctions cloud, intégrez des api tierces ou affinez le contrôle d'accès basé sur les rôles approfondir votre expertise visitez la documentation de back4app https //www back4app com/docs pour plus d'informations et de tutoriels bonne programmation et bonne chance avec votre projet crud ios !