Difference between CRUD and CRUD2CRUD

Abstract

Article explains architectural perspective of CRUD2CRUD and CRUD services. CRUD2CRUD is data centric and interface neutral where as CRUD services have concrete clients with specialized interfaces. In this article we'll compare CRUD2CRUD against XML Web Services and REST APIs implementation architecture.

Keywords: crud, crud2crud, cruds
  • Introduction

    CRUD2CRUD common interface for web and desktop lead toward pure data services. Programmers consume CRUD2CRUD data services without implementing concrete clients. For example in Web Services, WSDL explains SOAP client requirements, and specialized clients are implemented against each web service for program integrations, in case of CRUD2CRUD communication architecture such specialized clients are not required.

    Common interface lead programmers focus on data definitions, service setups and client integrations rather writing individual API clients for each service.

    Data Architecture

    CRUD2CRUD is data architecture with intent communication. Developers focus on data either working with CRUD (CRUD2) client or a CRUD (2CRUD) service. CRUD2 client is data centric and source neutral, similarly 2CRUD service is data centric and client neutral.

    In such an elaborated data architecture communication APIs become standard, and data required is published for integration by both clients and services. There is no need of writing specialized clients against each service and publish their APIs.

    Communication Modeling

    Data modeling is at core of application development, CRUD2CRUD with common interface enable engineers with communication data modeling that explains data models required for developing different sub-systems of a software application. Communication models are at the core of CRUD2CRUD applications. For example in a typical inventory application; Product, Sale, Purchase and Stock define data model of application, communication model(s) are subset of data model that vary according to sub-system, service or client implementation.

    Data Services

    Communication data models will lead in developing data services or server applications regardless of how clients will be integrated.

    Data Clients

    Communication data models will lead in developing data clients or client applications regardless of how services are engineered.

    Distribute Data Models rather Definitions

    Distribute data models rather definitions for developing specialized clients and service applications.

  • CRUD2CRUD (CRUDS) API

    WindnTrees implements CRUD2CRUD communication architecture for web and windows using following libraries and packages.

    Web Packages Include:

    1. WindnTrees Javascript Library
    2. WindnTrees.Abstraction
    3. WindnTrees.Core
    4. com.invincibletec.windntrees (windntrees)

    Windows Packages Include:

    1. WindnTrees.CRUDS
    2. WindnTrees.ICRUDS
    3. WindnTrees.ICRUDS.Standard

    Example

    Following presents WindnTrees CRUD2CRUD programming examples:

    Web (HTTP):
    CRUDView    ====  Product  =====   CRUDLController
    CRUDView    ==== Employee  =====   CRUDLController
    
    Windows/Desktop (TCP):
    IService          ==== Model   ====    IService
    IWCFService       ==== Model   ====    IWCFService
    ServiceClient     ==== Color   ====    ServiceRepository
    ServiceClient     ==== Product ====    AdapterServiceRepository
    

    Summary

    CRUD2CRUD common interface for web and desktop lead toward pure data services. Develop applications with simple CRUD2CRUD data architecture and communication modeling.