DCDongol Choindongol-ts.hashnode.dev·Feb 21 · 2 min readUnit Testing: Why It MattersUnit Testing vs. Integration Testing Unit testing is one way to verify the correctness of code. It is distinct from integration testing. Integration testing is typically end-to-end (E2E): it validates00
DCDongol Choindongol-ts.hashnode.dev·Dec 15, 2025 · 3 min read(Optimization) Lazy evaluation : Postpone until the result is actually neededIn software engineering, we are sometimes taught to be prepared. We initialize variables, construct objects, and compute values early in a scope to ensure they are ready for use. This is known as “eager evaluation.” However, we must be careful not to...00
DCDongol Choindongol-ts.hashnode.dev·Dec 14, 2025 · 2 min read(C++) Iterator invalidation : The silent killer in C++ loopsUnderstanding Iterator Invalidation Iterators are the glue that connects STL containers to algorithms. They behave like pointers, allowing you to traverse and access elements. However, iterators are not permanent handles. Certain operations on a cont...00
DCDongol Choindongol-ts.hashnode.dev·Sep 28, 2025 · 5 min read(C++) Performance traps of std::vector and how to avoid themFor most C++ developers, std::vector is the default choice among STL containers.Thanks to its contiguous memory layout, it is highly cache-friendly and offers fast O(1) random access. However, using std::vector without understanding its internal mech...00
DCDongol Choindongol-ts.hashnode.dev·Sep 14, 2025 · 3 min read(C++) Why should we be conservative about using std::set and std::map?As a C++ programmer, you often face the decision of which STL container to choose. If you are developing an application where performance (both runtime and memory) is critical, you should carefully consider the use of associative containers like std:...00