𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗮𝘀 𝗖𝗼𝗱𝗲
One of the essential ways of communicating our software architectures is to create different kinds of diagrams for stakeholders. When we talk about architectural diagrams, we have mainly two types:
🔹 𝗗𝗶𝗮𝗴𝗿𝗮𝗺𝘀 - about visually representing a system's structural and behavioral aspects, making complex ideas easier to understand.
🔹 𝗠𝗼𝗱𝗲𝗹𝘀 - aims to create an abstract system representation, often through specialized languages or tools, enabling precise specification, simulation, or analysis. When we have a model, we can generate different views (diagrams) based on those models.
One possibility models offer us is to store our source control systems in an 𝗮𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗮𝘀 𝗰𝗼𝗱𝗲 ways. The main benefit of using this concept is that most of the diagrams as code tools can be scripted and integrated into a built pipeline to generate automatic documentation.
For architecture, as code, we can use different tools, such as:
𝟭. 𝗦𝘁𝗿𝘂𝗰𝘁𝘂𝗿𝗶𝘇𝗿
Create multiple diagrams from a single (C4) model.
𝟮. 𝗣𝗹𝗮𝗻𝘁𝗨𝗠𝗟
It is an open-source tool that allows users to create plain text diagrams.
𝟯. 𝗗𝗶𝗮𝗴𝗿𝗮𝗺𝘀
Turn Python code into cloud system architecture diagrams.
𝟰. 𝗠𝗲𝗿𝗺𝗮𝗶𝗱
The diagram and flowchart from the text are generated similarly to Markdown.
𝟱. 𝗔𝗦𝗖𝗜𝗜 𝗲𝗱𝗶𝘁𝗼����
Free editor.
𝟲. 𝗠𝗮𝗿𝗸𝗺𝗮𝗽
Visualize your Markdown as mindmaps. It supports the VS code plugin.
𝟳. 𝗚𝗼 𝗱𝗶���𝗴𝗿𝗮𝗺𝘀
Create system diagrams with Go.
𝟴. 𝗦𝗲𝗾𝘂𝗲𝗻𝗰𝗲𝗗𝗶𝗮𝗴𝗿𝗮𝗺.𝗼𝗿𝗴
Create your UML sequence diagrams online by using text notation.
Check the links for the tools in the comments.
Image: PlantUML.
#technology #softwareengineering #programming #techworldwithmilan #softwaredesign
If you don't use mermaid you're missing out! Put diagrams in your readme! or in your github wiki! I used to hate making diagrams (because it meant UML!)
There are a bunch of different diagrams and graphs
https://t.co/vH9qJkLzIU
A programmer know exactly how to implement the code and the relationship between everything is with just a glance from UML diagram
Domain expert knows exactly what your code is trying to do, and what they can get out of it without knowing what the hell is the code
This is the deep maker culture of the east. Engrained in thousands of years of history. Incredible.
Can you imagine how these processes were made/discovered?
🎯Beautiful Docs
It is a collection of great examples and tips from various programming languages and technologies to help you create beautiful documentation for your own projects.
The VSCode Live Server extension is so nice! It'll refresh your code whenever you hit save, so you don't have to reload the browser.
Really awesome (and fast!) workflow 🔥
𝗠𝗼𝘀𝘁 𝗖𝗼𝗺𝗺𝗼𝗻 𝗦𝗼𝗳𝘁𝘄𝗮𝗿𝗲 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗦𝘁𝘆𝗹𝗲𝘀
Software architecture styles are the foundational blueprints for constructing various software systems, ensuring they meet specific requirements and quality attributes.
An architectural pattern, on the other hand, communicates a fundamental organizational structure for software systems. By selecting the appropriate patterns for your issue, you can avoid creating anything from scratch and potentially dangerous traps that might arise if you try to devise a novel solution.
Here are the most common architectural styles: 🧵
#softwarearchitecture #softwaredesign #programming