From 9046d80bdb9e5c2e65c87369575a3e47e9c01978 Mon Sep 17 00:00:00 2001 From: Mahdi Azarboon <21277296+azarboon@users.noreply.github.com> Date: Sun, 14 Jul 2024 02:58:45 +0800 Subject: [PATCH] Update README.md (#1141) Before diving into any of the data structures, readers should be reminded of two fundamental laws in software architecture: 1.Everything is a trade-ff 2."Why is more important than the how" So, readers face the nuances and reality of these data structures from the beginning. These two laws are coined by two thought leaders in software architecture: Mark Richards and Neal Ford. They have explained these two laws in various conference talks and books. For example, here you can read about these two laws here: https://www.infoq.com/podcasts/software-architecture-hard-parts/ Also, here is a book for reference: https://a.co/d/fKOodW9 Co-authored-by: Oleksii Trekhleb <3000285+trekhleb@users.noreply.github.com> --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index e06cfb90..8fa63142 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,8 @@ be accessed and modified efficiently. More precisely, a data structure is a coll values, the relationships among them, and the functions or operations that can be applied to the data. +Remember that each data has its own trade-offs. And you need to pay attention more to why you're choosing a certain data structure than to how to implement it. + `B` - Beginner, `A` - Advanced * `B` [Linked List](src/data-structures/linked-list)