The REST architectural style defines a set of principles and constraints that promote system scalability, loose coupling, reduced latency, security, and the encapsulation of legacy systems. While REST is relatively easy to understand, it does not provide any guidance on how to create programmable "Web APIs". This course will help attendees acquire a thorough understanding of how to design RESTful Web APIs that support CRUD, transactional scenarios, workflow, and even complex systems integration.

3-day seminar

Benefits

  • Design a Web API that is able to evolve gracefully as business requirements change
  • Implement the logic behind the APi
  • Expose aspects of legacy applications through Web APIs
  • Design APIs that promote superior performance, scalability, and security
  • Create a Service Oriented Architecture (SOA) through Web APIs

This course will enable you to create simple and effective RESTful APIs, confidently expose aspects of existing applications to business partners, and effectively share business logic and data across your organization.

    Who Should Attend

     Developers, Technical Leads, Technical Architects, Technical Management

     

     

     

     

    Location

    All of our public classes are held at the Construx Training Center

    Fundamental Web API Design

    • Review of HTTP
    • The 3 web service API Styles
    • Why use Resource-Oriented Web APIs? When not to use?
    • REST Recap
    • Resource APIs and service contracts
      • Logical components of the contract
      • The debate over Service Descriptors
       
    • APIs for CRUD and other more complex scenarios
    • Client/Service Interaction patterns
      • Request/Response
      • Request/Acknowledge
    • Communicating business logic errors to clients

    Behind the Web API

    • Service Controllers and data-binding
    • Implementation patterns
      • Transaction Script
      • Operation Script
      • Command Invoker
      • Data Source Adapter
      • Workflow Connector
    • Request and Response Mappers

    Advanced Web API Design

    • Client/Service Interaction patterns
      • Long Poll
      • Media Type Negotiation
    • Patterns for Complex Searches
      • Query strings
      • Simple Search DTOs
      • Query Tree DTOs
    • Transactions and transaction management
    • Workflow
    • Service composition
    • Hypermedia and the Linked Service pattern
     

    Service Evolution, Versioning, and Governance

    • What changes in Web APIs cause them to break clients?
    • API version identification patterns
    • Patterns to enable backward and forward compatibility
      • Data Transfer Objects
      • Dataset Amendments
      • Tolerant Reader
      • Media Type Negotiation
      • Consumer-Driven Contracts
    • Service governance concepts and practices
    • What about SOA?

    Web Service Infrastructure Patterns

    • Service Interceptors and their uses
    • Client Infrastructure patterns
      • Service Connector
      • Asynchronous Response Handler
      • Idempotent Retry
    • What about SOA Infrastructures?
      • Web APIs and Service Registries, ESBs, and Orchestration Engines

    Service Performance, Scalability, and Availability

    • The CAP Theorem
    • Asynchronous processing
    • State management
    • API granularity and message design
    • Caching
    • Conditional Gets and Updates

    Security Considerations

    • Authentication
    • Authorization
    • Data privacy
    • Message integrity

    Curating and Evangelizing your API

    • Documenting your API
    • Promoting your web services in the API Economy
     

    Rob Daigneau

    Rob Daigneau is a Senior Fellow at Construx with over 20 years of experience in leading the design and implementation of software for a broad array of industrie.... ...