[RUBY] Qu'est-ce qu'une API exactement?

supposition
Voici un résumé de ce que j'ai appris en tant que débutant en programmation (1 à 2 mois).
Cela peut ne pas fonctionner dans le champ réel ou contenir des erreurs.
Si vous le remarquez, je vous serais reconnaissant de bien vouloir le signaler dans les commentaires.

Cette fois, j'ai résumé les mots que j'ai entendus pour la première fois, API, d'après ce que j'ai appris.

Qu'est-ce que l'API

Abréviation de l'interface de programmation d'application C'est une règle et un mécanisme spécifiques utilisés lorsque les applications échangent des données entre elles. L'API a une interprétation abstraite et large et peut être utilisée des deux manières suivantes. Le premier est le sens de l'expression de toute la spécification selon laquelle "lorsqu'une demande arrive de cette manière, les données sont renvoyées de cette manière". Deuxièmement, la signification de "la méthode qui est exécutée lorsqu'elle est appelée" elle-même Les méthodes définies et fournies par Rails, telles que link_to et render, sont appelées API Rails.

Lorsque vous l'utilisez réellement, même si vous ne vous souciez pas de créer un programme à partir de zéro, si le programme créé par le prédécesseur est une API, vous pouvez l'emprunter et l'utiliser dans le cadre du service Web que vous développez efficacement. Il semble qu'il soit utilisé pour procéder au développement. Pour donner un exemple concret, il semble que google maps soit utilisé pour accéder à la page web du restaurant.

API couramment utilisée

webAPI Fait référence à l'API utilisée à l'aide de la communication HTTP / HTTPS. Par exemple, un service Web de carte appelé Google Maps est intégré à un autre service Web. Ceci est réalisé en utilisant une API Web appelée "Google Maps Platform" fournie par Google. La plate-forme Google Maps peut échanger des informations telles que des informations de localisation et des itinéraires, ce qui élimine le besoin de développer la partie Carte à partir de zéro.

De plus, il existe des API ouvertes et des API internes. La différence entre les deux est simplement la différence dans la portée de la divulgation, qu'il s'agisse d'une API ouverte au public ou d'une API utilisée en privé, et les concepts et le contenu sont les mêmes.

API ouverte

Une API ouverte sur l'extérieur est appelée API ouverte (API publique). C'est exactement la plate-forme Google Maps qui est sortie plus tôt.

API interne

Une API qui est gérée dans une application développée par l'entreprise ou un individu. Cette API est utilisée uniquement pour les applications internes et n'est pas ouverte au public.

Séparation côté serveur et frontal

Les données sont toujours renvoyées lors de la création d'une API, mais sans fichier de vue, il n'est pas possible de fournir un écran facile à visualiser. Par conséquent, il est nécessaire de créer une application dédiée au front-end séparément de l'API. De cette façon, il semble que le développement se fasse en séparant les rôles de travail côté serveur et frontal.

Avantages de la séparation

・ Facile à diviser la personne responsable telle que l'équipe ・ Les langues traitées étant différentes, vous pouvez travailler efficacement. Avant: compétences de balisage telles que HTML et compétences axées sur les événements telles que JavaScript Serveur: compétences traitant des améliorations de performances telles que le traitement informatique ・ Si le format de données est unifié, même si la langue utilisée est modifiée, une seule peut être modifiée.

Déploiement vers des applications natives

Application native

Une application qui peut être téléchargée depuis l'App Store ou Google Play Store à l'aide d'un smartphone ou d'une tablette. Fondamentalement, le langage de développement est différent entre iOS et Android. iOS:Objective-C,Swift android:Java,Kotlin

Plateforme de classe

Cadre de développement compatible avec iOS et Android Flutter et React Native semblent être célèbres en tant que langages de développement.

Avantages de l'API dans le développement d'applications natives

L'utilisation de l'API est préférable pour les applications natives. La raison est, par exemple Lors de la création d'une application Web, d'une application native iOS et d'une application native Android Vous n'avez besoin de créer qu'une seule application API côté serveur. C'est un grand mérite qu'il soit terminé si un retour de données approprié (API) est mis en œuvre pour chaque application et que son traitement est implémenté dans le frontal (iOS et Android), et qu'un seul développement côté serveur est nécessaire.

Résumé

L'API est une règle ou un mécanisme utilisé lorsque les applications échangent des données entre elles. L'API est un programme qui échange des données côté serveur Le développement devient beaucoup plus facile en utilisant l'API Si vous créez le côté serveur avec l'API, vous pouvez l'appliquer à la fois à iOS et à Android

Recommended Posts

Qu'est-ce qu'une API exactement?
Qu'est-ce qu'une interface
Qu'est-ce qu'un initialiseur?
Qu'est-ce qu'un opérateur?
Qu'est-ce qu'une annotation?
[Mémorandum] Qu'est-ce qu'une erreur?
[Ruby] Qu'est-ce qu'une instance?
Qu'est-ce que Cubby
Qu'est-ce qui est nul? ]
Qu'est-ce que 'java
Qu'est-ce que Keycloak
Qu'est-ce que maven?
Qu'est-ce que Jackson?
Qu'est-ce que soi
Qu'est-ce que Jenkins
Qu'est-ce que IM-Juggling?
Qu'est-ce que les paramètres
Qu'est-ce que la façade? ??
Qu'est-ce que Java <>?
Qu'est-ce que Gradle?
Qu'est-ce que POJO
Qu'est-ce que 'java
Qu'est-ce que centOS
Qu'est-ce que RubyGem?
Qu'est-ce que before_action?
Qu'est-ce que Docker
Qu'est-ce que Byte?
Qu'est-ce que Tomcat
Qu'est-ce que l'assemblage Maven?
Qu'est-ce que `docker-compose up`?
Qu'est-ce que vue cli
Qu'est-ce que le moi de Ruby?
Qu'est-ce que l'attr_accessor de Ruby?
Qu'est-ce que l'encapsulation Java?
Qu'est-ce qu'une permission refusée?
Qu'est-ce que le contrôle d'instance?
Qu'est-ce que Spring Tools 4
Qu'est-ce que le @VisibleForTesting de Guava?
Qu'est-ce qu'un modèle MVC?
Qu'est-ce que la technologie Java?
Qu'est-ce que Java API-java
Qu'est-ce que @ (variable d'instance)?
Qu'est-ce que l'artefact de Gradle?
Qu'est-ce que l'audit JPA?
[Java] Qu'est-ce que flatMap?
Qu'est-ce qu'un servlet?
Qu'est-ce que le développement Web?
[Java] Qu'est-ce que ArrayList?
Qu'est-ce que l'orientation objet après tout?
Qu'est-ce que l'assertion Java? Résumé.
Qu'est-ce qu'une classe wrapper?