Skip to content

Instantly share code, notes, and snippets.

View rajeshsahu09's full-sized avatar
🎯
Focusing

Rajesh Sahu rajeshsahu09

🎯
Focusing
View GitHub Profile
@rajeshsahu09
rajeshsahu09 / SOLID Principles.md
Created December 22, 2024 13:48
Let's dive into one of the software design principle.

SOLID Principles in Software Design

The SOLID principles are a set of design principles in object-oriented programming and software engineering that aim to make software more maintainable, scalable, and robust. The acronym SOLID stands for:


1. Single Responsibility Principle (SRP)

Definition: A class should have only one reason to change. This means a class should have a single responsibility or focus.

Why it's important:

@rajeshsahu09
rajeshsahu09 / Class Diagram Concepts.md
Last active December 22, 2024 07:11
Let's understand class diagram!!

Class Diagram Concepts

A Class Diagram is one of the most commonly used UML diagrams in software design. It provides a static view of a system by depicting its classes, attributes, operations, and the relationships among objects. Class diagrams are vital for object-oriented modeling, as they define the blueprint of a system’s structure.


Core Components of a Class Diagram

1. Class

A class represents a blueprint for objects in the system. It is defined by:

@rajeshsahu09
rajeshsahu09 / coroutine.md
Last active December 14, 2024 19:44
Basics

Kotlin Coroutines Guide

1. What is a Coroutine?

  • Coroutines are lightweight cooperative concurrent mechanisms.
  • They have the ability to pause and resume a function without blocking the thread.

2. Why Choose Coroutines Over Threads?

  • Blocking a thread is memory-intensive.
  • Context switching between threads is expensive.
  • During I/O operations, a thread remains idle while waiting for a response.