1. Architecture Logicielle > 
  2. Pour coder proprement > 
  3. L'asbtraction

L'asbtraction

Ressources
  • When NOT to write an Abstraction Layer
  • What Are Abstractions in Software Engineering with Examples

Comme l’a noté Edsger W. Dijkstra dans son article “The Humble Programmer “, le but de l’abstraction n’est pas d’être vague mais de créer un nouveau niveau sémantique dans lequel on peut être absolument précis.

  • Home

  • Description des chapitres
  • 2. L'architecture Logicielle
    • Définitions
    • Architecture VS Design
      • D'après Mark Richards
      • D'après Grady Booch
      • D'après Jakob Jenkov
      • D'après IEEE
      • Conclusion
    • C4 Model
    • Niveaux architecturaux
      • Styles Architecturaux
      • Patrons Architecturaux
      • Patrons de conception
    • Les rôles de l'architecte logiciel
      • Ce que n'est pas un architecte
      • Voir plusieurs dimensions
  • 3. Caractéristiques Archi.
    • Définition
    • Couplage et Cohesion
      • Définition
      • Solutions
        • Niveau Code
        • Niveau Système
      • Compromis
    • Complexité
    • Disponibilité
    • Elasticité
    • Faisabilité
    • Flexibilité
    • Interopérabilité
    • Performance
    • Résilience
    • Scalabilité
  • 4. Concepts Fondamentaux
  • - 4.1 Pour coder proprement
    • L'asbtraction
    • Les interfaces
    • Data Transfer Object
    • Patron Adaptater
    • Inversion de Dépendences
      • Inversion de dépendances (1)
      • Inversion de dépendances (2)
  • - 4.2 Pour modéliser
    • Séparation Physique/Logique
    • Service (architecture)
    • Module VS Service
    • Bounded Context
  • 5. Modularité
  • - 5.1 Concepts et définition
    • Pourquoi la modularité ?
    • Définition modularité
    • Granularité et Poids
    • Utilisation/Réutilisation Paradoxe
    • Caractéristique d'un module
      • Indépendance
      • Tout le nécessaire
      • Interfaces
  • 6. Styles Architecturaux
  • - 6.1 Monolithiques
    • Layered (Couche)
      • Couche Ouverte
      • Layered VS N-tiered
      • Anemic Model
    • Microkernel (Plugin)
      • Communication
      • Autres considérations
      • Conclusion
    • Pipeline
      • Conclusion
  • - 6.2 Distribuées
    • Notion de Seam
    • Service-Oriented (SOA)
      • Définition
      • Composition
        • Composants
        • Enterprise Service Bus
        • Avantages
      • Relation avec :
        • Service-Based
        • Microservices
    • Service-Based
      • Api Layer
      • Database Partitioning
      • Service-B vs Microservices
    • Microservices
      • Service ou Microservices
      • Antipatterns et Pitfall
      • Caractéristiques
      • Quelle taille ?
      • Partage de données
      • Front End
      • Communication
        • Transactions
        • SAGA
          • Choregraphie/Orchestration
      • Service Mesh
      • Logging/Monitoring
        • Logging
        • Monitoring
      • Quand éviter les microservices ?
      • Microservice Patterns
    • Event-Driven
      • Idempotence
  • - 6.3 Alternatives
    • Modular Monolithique
      • Pourquoi ?
      • Définition
      • Caractéristiques
  • 7. Patrons Architecturaux
    • Architecture Hexagonale
      • Exemple
      • Avantages/Inconvénients
      • Questionnement
    • Architecture en Onion
      • Sliced Onion Architecture
    • Clean Archiecture
      • Controller et Presenter
      • Clean Archiecture VS Layered
    • Vertical Slice Architecture
    • Event Sourcing
      • Event-Driven vs Event-Sourcing
    • CQRS
      • Event Sourcing et CQRS
    • All Archiectures Versus
    • All Archiectures Together
  • 8. Architecture Antipattern
    • Architecture by implication
    • Accidental Architecture
    • Architecture Sinkhole
    • Big Ball of Mud
  • 8. Design Patterns
    • Pourquoi apprendre DP ?
    • Transactional outbox
    • Tell, Don't Ask
  • 97. Mesurer son architecture
    • Couplage Statique/Dynamique
  • 98. Domain Driven Design
    • Pourquoi le DDD ?
    • DDD et Architectures
    • Aspect Stratégique
      • Model du domaine métier
      • Ubiquitous Language
    • Aggregate
    • Aspect Tactique
    • Context Mapping
  • 99. Principes SOLID
    • Separation of Concern
    • Single Responsability Principle
    • Open/Close Principle
    • Liskov Substitution Principle
    • Interface Segregation Principle
    • Dependency Inversion Principle


Aller plus loin
  • Ressources
  • Adrien CAUBEL
  • Linkedin
  • Github

  •  
  •  
  •  

Built with by Hugo