Low Level Design (সিস্টেম ডিজাইন - LLD)
লো-লেভেল ডিজাইন (LLD) হলো একটি সিস্টেমের ইন্টারনাল স্ট্রাকচার এবং লজিক ডিজাইন করার প্রক্রিয়া। যেখানে HLD আমাদের সিস্টেমের হাই-লেভেল ব্লক নিয়ে কথা বলে, সেখানে LLD প্রতিটি ব্লকের ভিতর কীভাবে ক্লাস, অবজেক্ট এবং মেথড কাজ করবে তা নির্ধারণ করে।
LLD-তে আমরা যা শিখব
ধাপ ১: অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP) ও SOLID
সঠিক এবং ক্লিন কোড লেখার জন্য OOP এবং SOLID প্রিন্সিপাল জানা বাধ্যতামূলক।
ধাপ ২: ডিজাইন প্যাটার্নস (Design Patterns)
বারবার আসা কোডিং সমস্যাগুলো সমাধানের প্রমাণিত উপায়।
ধাপ ৩: কনকারেন্সি এবং থ্রেড সেফটি (Consistency & Thread Safety)
মাল্টি-থ্রেডেড ডাটা হ্যান্ডলিং এবং সিনক্রোনাইজেশন।
ধাপ ৪: UML ডায়াগ্রাম (Unified Modeling Language)
সিস্টেমের ভিজ্যুয়াল রিপ্রেজেন্টেশন এবং আর্কিটেকচার ড্রয়িং।
ধাপ ৫: API ডিজাইন এবং ক্লিন কোড (API & Clean Code)
রিকোয়েস্ট/রেসপন্স মডেলিং, ভার্সনিং এবং রাইটিং ক্লিন কোড।
ধাপ ৬: প্র্যাকটিক্যাল LLD ইন্টারভিউ প্রবলেমস (Common LLD Problems)
রিয়েল-ওয়ার্ল্ড প্রবলেম সলভ করে আপনার LLD স্কিল ঝালাই করুন।
NOTE
LLD মূলত কোড লেভেলে কাজ করে, তাই এখানে প্র্যাকটিক্যাল কোডিং উদাহরণ বেশি থাকবে।