1/8
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Overengineering
Wasting limited time and resources by heavily optimizing code that is rarely executed; performance tuning should be pragmatic and focused on the most frequently executed code paths[cite: 3763, 3764, 3765, 3766].
Design Patterns
General, reusable, and programming language-independent solutions to recurring software design problems, originally categorized by the "Gang of Four" into Creational, Structural, and Behavioral types[cite: 3847, 3848, 3850, 3853, 3859].
Observer Pattern (Behavioral)
A design pattern where an object (the subject) maintains a list of its dependents (observers) and notifies them automatically of state changes. It is highly used in modern UIs to replace inefficient polling[cite: 3899, 3900, 3901, 3902, 3917].
Strategy Pattern (Behavioral)
A design pattern that defines a family of algorithms, encapsulates each one, and makes them interchangeable at runtime (e.g., dynamically swapping a sorting algorithm based on data size)[cite: 3930, 3931, 3935].
Facade Pattern (Structural)
A design pattern that provides a simplified, unified interface to a complex subsystem, such as JDBC or ODBC acting as a wrapper for diverse database implementations[cite: 3970, 3971, 3979, 3981].
Decorator Pattern (Structural)
A design pattern allowing new functionality to be added to an individual object dynamically without modifying the original class, adhering to the Open/Closed design principle[cite: 4072, 4073, 4076].
Factory Pattern (Creational)
A design pattern that centralizes the logic for creating objects without exposing the instantiation logic to the client, allowing the factory to choose which subclass to instantiate at runtime[cite: 4014, 4017, 4027].
Database Sorting (ORDER BY)
The most efficient way to sort data because the RDBMS utilizes pre-sorted B-Tree indexes, drastically outperforming O(n^2) application-level sorting algorithms like Bubble or Insertion sort[cite: 4135, 4136, 4138, 4140, 4141].
Data Flow Diagrams (DFD)
A pre-UML visual representation of how data moves through a system (processes, data stores, external entities). It is crucial for identifying bottlenecks in multi-program data processing pipelines[cite: 4324, 4325, 4326, 4337, 4338].