Hi folks 👋️
All About Tech is a repository that I have to showing what I learned and what I want to learn in near future. Hopefully, it can be help us to learn something new easily rather than reading without any example of code. With Github, I can put more code and more example for us to getting more better context about the topic.
Like the title of the repository, the topic will around tech especially in the back end side. Why I created in repository? Because it's more easier to maintenance and grouping. Other people can contribute as well 😄️
So, let's start the thread! 🚀️
Kubernetes, called K8s is a platform open source for automation deployment, scaling and managing many containers. K8s is an abbreviation of "Kubernetes" in which "ubernete" are replaced by "8".
In 2014 Google teams state the project Kubernetes will be set as Open source.
Design patterns is a solution to solving a common problem in software design. It's not only to solve one case, design patterns are coverage many cases in software design. You can use it as a blueprint, so it will be helping you to develop your code with a pattern. Design patterns are concepts, you cannot copy them into your program without an adjustment.
With Class Diagram we able to imagine the system as a blueprint. The blueprint will maps out attributes, methods, & relationships between classes. So, you can analyse concept of model that you want before you start coding.
SOLID design principles were promoted by Robert C. Martin (Uncle Bob). It's best-known design principles in object oriented programming. SOLID is acronym of 5 principles of:
- Single Responsibility Principle
- Open/Closed Principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
In general, code smells is not an issue. Even your code is have code smells, your code still working well. If we talk about "the definition of code smells", it will be refer to the fact that your code is not maintainable and not clean enough.
I have been working as a Backend Engineer almost for 5 years. At that time I always focused on how I code as fast as I could and just learning based on what I worked on. After that, I tried to take a look at the overseas opportunities and I realized that my skills were not capable of reaching the requirement. I too focus on how to code fast without knowledge of "How the components interact with each other" clearly.
In this article, I wanna share what I learned and hopefully, it can help me and you to understand clearer about a meaning of software architecture.