Creating Back End Applications
Before continuing, ensure your workstation has been set up with the Core Components, as well as components specific to the language ecosystem you're working in: [JavaScript] [Java] [.Net] [Python] [Rust]
Developing back end systems usually entails creating APIs that expose functionality over persistence and business processes.
Service-Oriented Architectures can provide significant benefits to an organization. However, they also introduce a lot of complexity. The most effective way to leverage the strengths of Service-Oriented Architecture is to automate, remove, or hide complexity through platforms.
The following are common concerns that must be addressed through platform.
- API Federation
- Versioning / URL Schemes
- Authorization and Authorization
- For Securing APIs
- Service Mesh
- For Securing Transports
- Observability:
- Logging
- Metrics
- Tracing
- Testing:
- Unit
- Integration
- Environment
- Persistence Schema Migration
- Rate Limiting / Throttling / Health Checks
- Circuit Breaking
- Canary Deployments
- Architectural Patterns
- Distributed Transactions
- Idempotency
- API Documentation
- API Contract Publication
- Distributed Transactions
- Caching
- Header Controls
📄️ REST Design
As engineers, we need to create programming interfaces all the time. A well-designed API balances usability, performance, and maintainability; making it easier for other engineers to integrate and use in their applications. Clear documentation, consistent design principles, security, and error handling are crucial to ensuring the API meets both functional and non-functional requirements effectively.
📄️ gRPC Design
Outlined below are key design principles to consider when working with gRPC APIs. The AshleyOne development platform simplifies adherence to these principles, handling many aspects for you automatically. However, understanding and effectively applying these principles is essential when building applications to ensure optimal performance and reliability.
🗃️ Tutorials
3 items
🗃️ Application Infrastructure
2 items
📄️ Designing GraphQL APIs
Outlined below are key design principles for working with GraphQL APIs. The AshleyOne development platform simplifies adherence to these principles, handling many aspects for you automatically. However, understanding and applying these principles effectively is essential for building robust and scalable applications.
📄️ Integration Testing
What is Integration Testing?