{
  "code": null,
  "collection": "architecture-category",
  "href": "https://banes-lab.com/ontology#architecture-category-core-modular-design",
  "id": "core-modular-design",
  "kind": "category",
  "layer": null,
  "name": "Core Modular Design",
  "ref": "architecture-category:core-modular-design",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology#architecture-single-responsibility",
          "json": "https://banes-lab.com/json/records/architecture/single-responsibility",
          "label": "Single Responsibility Principle (SRP)",
          "markdown": "https://banes-lab.com/records/architecture/single-responsibility.md",
          "ref": "architecture:single-responsibility"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-separation-of-concerns",
          "json": "https://banes-lab.com/json/records/architecture/separation-of-concerns",
          "label": "Separation of Concerns",
          "markdown": "https://banes-lab.com/records/architecture/separation-of-concerns.md",
          "ref": "architecture:separation-of-concerns"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-duplicate-code",
          "json": "https://banes-lab.com/json/records/architecture/duplicate-code",
          "label": "Do Not Repeat Yourself (DRY)",
          "markdown": "https://banes-lab.com/records/architecture/duplicate-code.md",
          "ref": "architecture:duplicate-code"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-high-cohesion",
          "json": "https://banes-lab.com/json/records/architecture/high-cohesion",
          "label": "High Cohesion",
          "markdown": "https://banes-lab.com/records/architecture/high-cohesion.md",
          "ref": "architecture:high-cohesion"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-low-coupling",
          "json": "https://banes-lab.com/json/records/architecture/low-coupling",
          "label": "Low Coupling",
          "markdown": "https://banes-lab.com/records/architecture/low-coupling.md",
          "ref": "architecture:low-coupling"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-encapsulation",
          "json": "https://banes-lab.com/json/records/architecture/encapsulation",
          "label": "Encapsulation",
          "markdown": "https://banes-lab.com/records/architecture/encapsulation.md",
          "ref": "architecture:encapsulation"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-information-hiding",
          "json": "https://banes-lab.com/json/records/architecture/information-hiding",
          "label": "Information Hiding",
          "markdown": "https://banes-lab.com/records/architecture/information-hiding.md",
          "ref": "architecture:information-hiding"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-abstraction",
          "json": "https://banes-lab.com/json/records/architecture/abstraction",
          "label": "Abstraction",
          "markdown": "https://banes-lab.com/records/architecture/abstraction.md",
          "ref": "architecture:abstraction"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-modularity",
          "json": "https://banes-lab.com/json/records/architecture/modularity",
          "label": "Modularity",
          "markdown": "https://banes-lab.com/records/architecture/modularity.md",
          "ref": "architecture:modularity"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-composability",
          "json": "https://banes-lab.com/json/records/architecture/composability",
          "label": "Composability",
          "markdown": "https://banes-lab.com/records/architecture/composability.md",
          "ref": "architecture:composability"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-composition-over-inheritance",
          "json": "https://banes-lab.com/json/records/architecture/composition-over-inheritance",
          "label": "Composition Over Inheritance",
          "markdown": "https://banes-lab.com/records/architecture/composition-over-inheritance.md",
          "ref": "architecture:composition-over-inheritance"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-reusability",
          "json": "https://banes-lab.com/json/records/architecture/reusability",
          "label": "Reusability",
          "markdown": "https://banes-lab.com/records/architecture/reusability.md",
          "ref": "architecture:reusability"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-replaceability",
          "json": "https://banes-lab.com/json/records/architecture/replaceability",
          "label": "Replaceability",
          "markdown": "https://banes-lab.com/records/architecture/replaceability.md",
          "ref": "architecture:replaceability"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-interchangeability",
          "json": "https://banes-lab.com/json/records/architecture/interchangeability",
          "label": "Interchangeability",
          "markdown": "https://banes-lab.com/records/architecture/interchangeability.md",
          "ref": "architecture:interchangeability"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-independence",
          "json": "https://banes-lab.com/json/records/architecture/independence",
          "label": "Independence",
          "markdown": "https://banes-lab.com/records/architecture/independence.md",
          "ref": "architecture:independence"
        },
        {
          "href": "https://banes-lab.com/ontology#architecture-autonomy",
          "json": "https://banes-lab.com/json/records/architecture/autonomy",
          "label": "Autonomy",
          "markdown": "https://banes-lab.com/records/architecture/autonomy.md",
          "ref": "architecture:autonomy"
        }
      ],
      "relation": "principle"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology/schema#layer-structural-core",
          "json": "https://banes-lab.com/json/records/layer/structural-core",
          "label": "Structural Core",
          "markdown": "https://banes-lab.com/records/layer/structural-core.md",
          "ref": "layer:structural-core"
        }
      ],
      "relation": "layer"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology#architecture-category-core-modular-design",
          "json": "https://banes-lab.com/json/ontology/principles/architecture-category-core-modular-design",
          "label": "Core Modular Design",
          "markdown": "https://banes-lab.com/ontology/principles/architecture-category-core-modular-design.md",
          "ref": "chapter:/ontology#architecture-category-core-modular-design"
        },
        {
          "href": "https://banes-lab.com/ontology/schema#the-layer-topology",
          "json": "https://banes-lab.com/json/ontology/schema/the-layer-topology",
          "label": "The layer topology",
          "markdown": "https://banes-lab.com/ontology/schema/the-layer-topology.md",
          "ref": "chapter:/ontology/schema#the-layer-topology"
        },
        {
          "href": "https://banes-lab.com/ontology/schema#the-membership",
          "json": "https://banes-lab.com/json/ontology/schema/the-membership",
          "label": "The membership",
          "markdown": "https://banes-lab.com/ontology/schema/the-membership.md",
          "ref": "chapter:/ontology/schema#the-membership"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "summary": "The Core Modular Design category holds 16 architecture principles.",
  "siblings": {
    "next": {
      "href": "https://banes-lab.com/ontology#architecture-category-solid-object-oriented-design",
      "json": "https://banes-lab.com/json/records/architecture-category/solid-object-oriented-design",
      "label": "SOLID / Object-Oriented Design",
      "markdown": "https://banes-lab.com/records/architecture-category/solid-object-oriented-design.md",
      "ref": "architecture-category:solid-object-oriented-design"
    },
    "previous": {
      "href": "https://banes-lab.com/ontology#architecture-category-portability-infrastructure-deployment",
      "json": "https://banes-lab.com/json/records/architecture-category/portability-infrastructure-deployment",
      "label": "Portability / Infrastructure / Deployment",
      "markdown": "https://banes-lab.com/records/architecture-category/portability-infrastructure-deployment.md",
      "ref": "architecture-category:portability-infrastructure-deployment"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/records/architecture-category",
    "label": "Principle categories",
    "markdown": "https://banes-lab.com/api/records/architecture-category.md",
    "ref": "api:records/architecture-category"
  }
}
