Quickstarters
Feature Overview
Comment construire un backend pour Objective-C ?
40 min
introduction dans ce tutoriel, vous apprendrez comment construire un backend pour objective c en utilisant back4app nous allons passer en revue l'intégration des fonctionnalités essentielles de back4app—telles que la gestion de base de données, les fonctions cloud code, les api rest et graphql, l'authentification des utilisateurs et les requêtes en temps réel—pour créer un backend sécurisé, évolutif et robuste qui communique sans problème avec votre application ios nous utiliserons le sdk ios de parse, qui est open source, pour gérer tous nos besoins en matière de données vous verrez comment réduire le temps et les efforts nécessaires pour configurer des serveurs, du stockage et de la sécurité en tirant parti de l'environnement flexible de back4app ce tutoriel montrera des exemples de code en objective c, afin que vous puissiez taper du texte aligné à votre flux de travail typique dans xcode à la fin, vous aurez les éléments de base pour une application mobile prête pour la production, ou vous pourrez personnaliser davantage pour répondre à votre cas d'utilisation exact prérequis pour compléter ce tutoriel, vous aurez besoin de un compte back4app et un nouveau projet back4app commencer avec back4app https //www back4app com/docs/get started/new parse app si vous n'avez pas de compte, vous pouvez en créer un gratuitement suivez le guide ci dessus pour préparer votre projet environnement de développement objective c assurez vous d'avoir une version récente de xcode installée téléchargez xcode depuis le mac app store https //apps apple com/us/app/xcode/id497799835 connaissance de cocoapods ou du gestionnaire de paquets swift (optionnel, mais recommandé) guide du gestionnaire de paquets swift https //github com/parse community/parse sdk ios osx familiarité avec objective c, les bases des applications ios ou des concepts connexes documentation objective c d'apple https //developer apple com/library/archive/documentation/cocoa/conceptual/programmingwithobjectivec/introduction/introduction html assurez vous d'avoir tous ces prérequis avant de commencer, afin que votre parcours se déroule sans accroc étape 1 – création d'un nouveau projet sur back4app et connexion pourquoi cette étape ? un nouveau projet back4app est la base de votre backend il vous donne un endroit pour stocker vos données, exécuter des fonctions cloud et gérer la sécurité commençons par créer un projet back4app créer un projet dans back4app connectez vous à votre compte back4app cliquez sur “nouvelle application” sur votre tableau de bord back4app nommez votre application (par exemple, “objectivec backend tutorial”) et finalisez vous verrez votre nouvelle application dans le tableau de bord back4app cette application gérera toutes les configurations backend que nous allons discuter installation du sdk parse pour ios (objective c) back4app travaille main dans la main avec le sdk ios de parse ce sdk simplifie les opérations de données, les fonctionnalités en temps réel, l'authentification des utilisateurs, et plus encore pour votre application ios récupérez vos clés parse dans votre tableau de bord back4app, accédez à paramètres de l'application ou sécurité & clés pour trouver votre id d'application et clé client l'url du serveur parse est souvent https //parseapi back4app com intégrer parse en utilisant swift package manager ou cocoapods cocoapods pod 'parse' swift package manager ouvrez xcode, choisissez “fichier” > “ajouter des paquets…” ajoutez le dépôt https //github com/parse community/parse sdk ios osx confirmez parse dans votre cible ios initialiser parse en objective c ouvrez appdelegate m et importez le module parse @import parsecore; // or #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 client key"; configuration server = @"https //parseapi back4app com"; }]]; return yes; } avec cela, votre application objective c est connectée en toute sécurité à votre backend back4app vous êtes maintenant prêt à lire, écrire et gérer des données sur le serveur étape 2 – configuration de la base de données 1\ création d'un modèle de données (schéma) dans back4app, les données résident dans des classes—comme des tables dans une base de données supposons que nous voulions une simple classe “todo” vous pouvez la créer manuellement dans la base de données section du tableau de bord back4app ajoutez des champs comme titre (string), iscompleted (boolean), etc 2\ création d'un modèle de données en utilisant l'agent ia back4app propose un agent ia pour aider à générer un schéma ouvrez l'agent ia dans votre tableau de bord d'application décrivez votre modèle de données en langage naturel (par exemple, “créez une nouvelle classe todo avec titre, description et date d'échéance ”) laissez l'ia tout configurer pour vous automatiquement 3\ lecture et écriture de données en utilisant le sdk avec objective c, nous pouvons utiliser pfobject pour gérer les opérations de création et de requête par exemple \#import \<parse/parse h> // create a new todo item pfobject todo = \[pfobject objectwithclassname @"todo"]; \[todo setobject @"buy groceries" forkey @"title"]; \[todo setobject @no forkey @"iscompleted"]; \[todo saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"todo saved successfully!"); } else { nslog(@"error saving todo %@", error localizeddescription); } }]; // query all todos pfquery query = \[pfquery querywithclassname @"todo"]; \[query findobjectsinbackgroundwithblock ^(nsarray nullable objects, nserror nullable error) { if (!error) { for (pfobject item in objects) { nslog(@"todo %@", item\[@"title"]); } } }]; 4\ lecture et écriture de données en utilisant rest si vous préférez sauter le sdk curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries","iscompleted"\ false}' \\ https //parseapi back4app com/classes/todo 5\ lecture et écriture de données en utilisant graphql back4app fournit également une interface graphql mutation { createtodo(input { fields { title "wash the car", iscompleted false } }) { todo { objectid title iscompleted } } } 6\ travailler avec des requêtes en direct (optionnel) si votre application ios a besoin de mises à jour en temps réel activez les requêtes en direct sous paramètres du serveur dans le tableau de bord back4app configurez parse avec livequeryserverurl \[parse initializewithconfiguration \[parseclientconfiguration configurationwithblock ^(id\<parsemutableclientconfiguration> configuration) { configuration applicationid = @"your app id"; configuration clientkey = @"your client key"; configuration server = @"https //parseapi back4app com"; configuration livequeryserverurl = @"wss\ //your subdomain b4a io"; }]]; ensuite, abonnez vous aux mises à jour en direct dans votre code objective c cela garantit que votre interface utilisateur affiche les dernières données instantanément étape 3 – application de la sécurité avec les acl et les clp listes de contrôle d'accès (acl) et autorisations au niveau de la classe (clp) back4app utilise des acl et des clp pour une sécurité granulaire les clp s'appliquent à une classe entière (table), tandis que les acl s'appliquent à des objets individuels définir les autorisations au niveau de la classe sous la section base de données sélectionnez une classe (par exemple, “todo”) cliquez sur autorisations au niveau de la classe contrôlez qui peut lire, écrire ou effectuer des requêtes au niveau de la classe configuration des acl les acl sont au niveau des objets par exemple pfacl acl = \[pfacl aclwithuser \[pfuser currentuser]]; \[acl setpublicreadaccess\ no]; \[acl setpublicwriteaccess\ no]; todo acl = acl; \[todo saveinbackground]; ce code restreint la lecture/écriture à l'utilisateur actuel uniquement étape 4 – écriture de fonctions cloud code pourquoi cloud code ? cloud code est utile pour la logique côté serveur—gestion des déclencheurs, validations ou tâches en arrière plan il garde votre code caché du client, renforçant la sécurité fonction d'exemple parse cloud define("calculatetextlength", async (request) => { const { text } = request params; if (!text) { throw "no text provided"; } return { length text length }; }); cet exemple calcule la longueur d'une chaîne fournie par le client déploiement utilisez le back4app cli https //www back4app com/docs/local development/parse cli ou la section cloud code > fonctions dans le tableau de bord pour déployer votre main js appel de cloud code depuis objective c \[pfcloud callfunctioninbackground @"calculatetextlength" withparameters @{@"text" @"hello back4app"} block ^(id nullable result, nserror nullable error) { if (!error) { nsnumber len = result\[@"length"]; nslog(@"text length %@", len); } }]; étape 5 – configuration de l'authentification utilisateurs parse la classe pfuser de back4app gère l'inscription, la connexion et la sécurité par défaut, pfuser gère le hachage des mots de passe, les sessions et les champs utilisateur inscription pfuser user = \[pfuser user]; user username = @"alice"; user password = @"secret123"; user email = @"alice\@example com"; \[user signupinbackgroundwithblock ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"user signed up successfully!"); } else { nslog(@"sign up error %@", error localizeddescription); } }]; connexion \[pfuser loginwithusernameinbackground @"alice" password @"secret123" block ^(pfuser nullable user, nserror nullable error) { if (user) { nslog(@"user logged in %@", user username); } else { nslog(@"login error %@", error localizeddescription); } }]; connexion sociale back4app prend en charge facebook , apple , google , etc intégrez ces plateformes et liez les sessions utilisateur en conséquence consultez la documentation de connexion sociale https //www back4app com/docs/platform/sign in with apple étape 6 – gestion du stockage de fichiers téléchargement & récupération de fichiers vous pouvez stocker des images, des documents ou d'autres données binaires en utilisant pffileobject nsdata imagedata = uiimagepngrepresentation(\[uiimage imagenamed @"localimage"]); pffileobject parsefile = \[pffileobject fileobjectwithname @"image png" data\ imagedata]; pfobject photo = \[pfobject objectwithclassname @"photo"]; \[photo setobject\ parsefile forkey @"imagefile"]; \[photo saveinbackgroundwithblock ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"file uploaded successfully"); } }]; pour récupérer pffileobject photofile = photo\[@"imagefile"]; \[photofile getdatainbackgroundwithblock ^(nsdata nullable data, nserror nullable error) { if (!error) { uiimage image = \[uiimage imagewithdata\ data]; // use the image in your ui } }]; étape 7 – vérification de l'email et réinitialisation du mot de passe pourquoi est ce important ? la vérification de l'email aide à garantir la validité du compte utilisateur la réinitialisation du mot de passe offre un flux sécurisé si les utilisateurs oublient leurs identifiants configuration du tableau de bord allez à paramètres de l'email dans votre tableau de bord back4app activez les options vérification de l'email et réinitialisation du mot de passe personnalisez les modèles d'email selon vos besoins mise en œuvre si vous souhaitez déclencher manuellement une réinitialisation de mot de passe dans votre application \[pfuser requestpasswordresetforemailinbackground @"alice\@example com" block ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"reset email sent!"); } else { nslog(@"error %@", error localizeddescription); } }]; étape 8 – planification des tâches avec les travaux cloud qu'est ce que les travaux cloud ? les travaux cloud automatisent les tâches récurrentes, comme le nettoyage des anciennes données, la génération de rapports quotidiens ou l'envoi de notifications en masse exemple de tâche de nettoyage quotidienne dans votre main js parse cloud job("cleanupoldtodos", async (request) => { const todo = parse object extend("todo"); const query = new parse query(todo); const cutoff = new date(date now() 30 24 60 60 1000); query lessthan("createdat", cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); ensuite, planifiez le dans paramètres de l'application > paramètres du serveur > travaux en arrière plan vous pouvez choisir une exécution quotidienne, par exemple étape 9 – intégration des webhooks aperçu les webhooks permettent à back4app d'envoyer des requêtes http à des services externes chaque fois que des événements se produisent, comme la création d'objets configuration dans votre tableau de bord back4app > plus > webhooks ajoutez un nouveau point de terminaison (url) décidez quels événements déclenchent le webhook (par exemple, après qu'une tâche a été enregistrée) étape 10 – exploration du panneau d'administration back4app aperçu le panneau d'administration back4app est une interface simple et centrée sur le modèle que les parties prenantes non techniques peuvent utiliser pour effectuer des opérations crud sans coder activation dans votre tableau de bord, allez à plus > application admin et activez la après avoir créé votre premier utilisateur administrateur, vous pouvez configurer un sous domaine personnalisé pour accéder au panneau ce panneau peut simplifier les tâches quotidiennes telles que l'édition des enregistrements, la consultation des journaux ou l'attribution des rôles, sans plonger dans la base de données brute conclusion vous avez maintenant vu comment construire un backend pour objective c en utilisant back4app tout au long de ce tutoriel, vous créé un nouveau projet back4app configuré et lu à partir de la base de données en utilisant le sdk ios parse, rest ou graphql activé les mises à jour en temps réel avec les requêtes en direct appliqué la sécurité en utilisant des acl et des clp déployé le code cloud pour la logique côté serveur géré l'authentification des utilisateurs, le stockage de fichiers, la vérification des e mails et les réinitialisations de mot de passe configuré des tâches planifiées et des webhooks exploré le panneau d'administration pour une gestion facile des données cette fondation vous permet de faire évoluer votre application ios tout en vous concentrant sur l'expérience front end la synergie entre objective c et back4app est un moyen éprouvé d'accélérer le développement, économisant du temps et des efforts prochaines étapes améliorez votre backend avec une logique personnalisée avancée, des notifications push ou des analyses intégrez des services externes ou des bibliothèques open source pour la connexion sociale, la facturation ou la messagerie consultez la documentation officielle de back4app pour des conseils d'optimisation, des meilleures pratiques et des tutoriels approfondis construisez des exemples du monde réel comme des applications de chat, des classements de jeux ou des services basés sur la localisation en utilisant ces modèles nous espérons que vous avez trouvé ce guide informatif ! tirer parti de back4app et du sdk ios parse vous aide à développer un système robuste et sécurisé sans gestion lourde des serveurs, vous permettant de vous concentrer sur la création de votre meilleure expérience mobile