Beaucoup de gens ne connaissent pas vraiment la différence entre l'architecture logicielle et la conception logicielle. Même pour les développeurs, la limite est souvent floue et ils peuvent mélanger des éléments de modèles d'architecture logicielle et de modèles de conception.

En termes simples, l'architecture logicielle est le processus de conversion des caractéristiques logicielles telles que la flexibilité, l'évolutivité, la faisabilité, la réutilisabilité et la sécurité dans une solution structurée qui répond aux attentes techniques et commerciales.

Comme expliqué, les caractéristiques du logiciel décrivent les exigences et les attentes d'un logiciel aux niveaux opérationnel et technique. Ainsi, lorsqu'un propriétaire de produit dit qu'il est en concurrence sur des marchés en évolution rapide, il doit adapter son modèle commercial rapidement. Le logiciel doit être « extensible, modulaire et maintenable"Si une entreprise traite des demandes urgentes qui doivent être traitées avec succès dans les délais impartis. En tant qu'architecte logiciel, vous devez noter que les performances et la faible tolérance aux pannes, évolutivité et fiabilité sont vos principales caractéristiques. Maintenant, après avoir défini les caractéristiques précédentes, le propriétaire de l'entreprise vous dit qu'il a un budget limité pour ce projet, une autre caractéristique

vient ici qui est « le faisabilité."

Vous trouverez ici une liste complète des caractéristiques du logiciel, également appelées « attributs de qualité » ici.

image

SOLIDE fait référence à la responsabilité unique, Ouvert fermé, substitution de Liskov, principes de ségrégation d'interface et d'inversion de dépendance.

Alors que l'architecture logicielle est responsable du squelette et de l'infrastructure de haut niveau d'un logiciel, la conception logicielle est responsable de la conception au niveau du code, comme ce que fait chaque module, la portée des classes et les objectifs des fonctions, etc.

  • Le principe de responsabilité unique signifie que chaque classe doit avoir un seul objectif, une responsabilité et une raison de changer.
  • Open Closed Principe : une classe doit être ouverte pour extension, mais fermée pour modification. En termes simples, vous devriez pouvoir ajouter plus de fonctionnalités à la classe mais ne pas modifier les fonctions actuelles d'une manière qui casse le code existant qui l'utilise
image

SOLIDE fait référence à la responsabilité unique, Ouvert fermé, substitution de Liskov, principes de ségrégation d'interface et d'inversion de dépendance.

Merci d'avoir lu! Si vous êtes intéressé par l'apprentissage automatique (ou si vous voulez simplement comprendre ce que c'est), consultez mon Machine Learning is Fun ! série aussi.

Autres articles

fondazionehera

fondationhera

12 février 2020
fondazionehera

fondationhera

12 juin 2020
fondazionehera

fondationhera

10 décembre 2020

Poste un commentaire

Votre adresse email ne sera pas publiée.