-
Notifications
You must be signed in to change notification settings - Fork 1
Application Programming Interface (API) Research
An API, or Application Programming Interface, is a set of rules, protocols, and tools that allows different software applications to communicate and interact with each other. APIs define how different components of software should interact, enabling developers to access the functionality of another software service or platform without needing to understand its internal workings.
APIs are commonly used in web development to enable integration between different web services or applications. For example, social media platforms provide APIs that allow developers to access features such as posting updates, retrieving user information, or analyzing trends. Similarly, payment gateways offer APIs to facilitate transactions securely between online merchants and customers.
APIs can be categorized into several types based on their functionality and how they are used
RESTful APIs are a type of web API that adhere to the principles of REST, which is an architectural style for designing networked applications. They use standard HTTP methods (GET, POST, PUT, DELETE) to perform operations on resources, and data is typically transferred in JSON or XML format. RESTful APIs are widely used for building web services due to their simplicity, scalability, and statelessness.
SOAP APIs use the SOAP protocol to define the structure of messages exchanged between applications. SOAP is a standardized protocol that relies on XML for message formatting and typically operates over HTTP or other application layer protocols. SOAP APIs are known for their strictness and complexity but are still used in enterprise environments where robustness and security are paramount.
GraphQL is a query language for APIs developed by Facebook. Unlike RESTful APIs, which expose predefined endpoints for accessing data, GraphQL APIs allow clients to specify the exact data they need in a single request. This enables more efficient data retrieval and reduces over-fetching or under-fetching of data, making it particularly useful for applications with complex data requirements, such as social networks or content management systems.
RPC APIs enable one program to execute code in another program located on a remote server as if it were a local function call. RPC APIs abstract away network communication complexities and provide a mechanism for invoking functions or procedures across different systems. Common implementations of RPC APIs include gRPC, Apache Thrift, and XML-RPC.
Library-based APIs provide a set of functions or classes that developers can directly integrate into their applications. These APIs are typically used for accessing specific features or functionalities of a programming language, framework, or software library. Examples include standard libraries in programming languages like Python or Java, as well as third-party libraries and SDKs (Software Development Kits) for interfacing with services like cloud platforms, databases, or hardware devices.
π Home
- Communication Plan for CMPE451
- Responsibility Assignment Matrix(RAM) for CMPE451
- Requirements Document for CMPE451
- Project Plan for CMPE451
- Web Annotation Data Model (WADM) Documentation
CMPE352
- Domain Analysis - Video Games
- Wikidata Research
- Mobile Development Research
- Web Development Research
- Application Programming Interface (API) Research
- Repository Research
- Useful Resources
- Requirements
- Responsibility Assignment Matrix
- Project Plan
- Elicitation Questions
- Scenarios
- Mockups
- Milestone Report 1
- Use Case Diagram
- Class Diagram
- Sequence Diagrams
- Milestone Report 2
- Milestone Report 3
- Meeting #10 β 15.05.2024
- Meeting #9 β 08.05.2024
- Meeting #8 β 17.04.2024
- Feedback Meeting - 17.04.2024
- Meeting #7 β 27.03.2024
- Meeting #6 β 22.03.2024
- Customer Meeting β 17.03.2024
- Extra Meeting β 15.03.2024
- Meeting #5 β 13.03.2024
- Meeting #4 β 06.03.2024
- Meeting #3 β 28.02.2024
- Meeting #2 β 21.02.2024
- Meeting #1 β 16.02.2024