15 Comments
Jun 9Liked by Ashish Pratap Singh

Crystal clear explanation bro thanks for sharing 💯💯

Expand full comment
author

thank you so much!

Expand full comment
Jun 9Liked by Ashish Pratap Singh

Awesome content 👏.. may I know which tool you have used to create these diagrams

Expand full comment
author

Hey, thank you!

I used Figma for this one.

Expand full comment
Jun 9Liked by Ashish Pratap Singh

Great post and clear visuals. Do you also use things like Structurizr? https://packagemain.tech/p/software-architecture-diagrams-c4

Expand full comment
author

Hey, I used Figma for this one.

Expand full comment

Got it. I use Miro mostly for diagrams/flows, they also have a UML template, but unfortunately it's not free.

Expand full comment
author

yeah, I have tried Miro but it's paid. Figma is free for most of my current use-cases.

Expand full comment

Splendid explanation.

Here is a Resources to draw such using easy templates for those who are seeking a tool just like me - https://creately.com/diagram-type/class-diagram

Expand full comment

Person "uses-a" phone.

Is association arrow direction correct ? If, yes can you please explain?

Expand full comment

I was looking for this comment. I think it should be other way around.

Expand full comment

Is the difference between abstraction and Interface is that abstraction can be used for code reuse but interface not?

Expand full comment

I am confused about when to use Association and when to use dependency? What is the difference?

Expand full comment

Thanks for the clear explation. Really appreciate!!!

One question, why does interface "Drawable" has "erase" as a private method ? Is it because after Java 9, interfaces can also have private methods ? I think UML should be language agnostic, isn't it ?

Expand full comment

If you are looking for a Diagrams-as-Code approach where you use text to draw your diagram take a look at https://cloudnativeengineer.substack.com/p/enhancing-software-design-with-diagrams to learn more. The main benefits is that they are fast to draw and they can be version controlled next to your application or IaC code

Expand full comment