Blog 41
- Cohesion
- Java Memory Management
- Request-Response vs Publish-Subscribe Architecture
- Trees
- Graphs
- Is Java Pass by Value or by Reference?
- Strings
- Facade Design Pattern
- Stacks and Queues
- Hash Tables
- Prefer Composition over Inheritance
- Linked Lists
- Arrays
- Logarithm
- Big O Notation
- Memory
- Complexity Analysis
- Inversion of Control and Dependency Injection
- Core concepts behind OOP
- Concurrency, Threading and Parallelism
- What is coupling?
- Specification Design Pattern
- Depth First Search in Java
- Microservices vs Monolith vs Modular Monolith architecture
- Singleton Pattern
- Static Factory Method
- Aggregate Pattern
- How to think and approach refactoring?
- Difference between @Mock and @MockBean
- Why business is not eager for refactoring?
- Composition, Aggregation and Association
- BigDecimal and BigInteger in Java
- DeMorgan’s Laws
- Builder Design Pattern
- Java equals and hashCode contract
- Comparable and Comparator Interfaces
- Spring Cache
- Observer Design Pattern
- Spring Bean Scopes
- Custom Assertions with AssertJ
- What are benefits of testing?