مقالات عملية مرتبة حسب المجال والمستوى، اختر المجال المناسب واقرأ من مستوى مبتدئ إلى محترف.
لو الـ service بيكتب على PostgreSQL وبعدها بيبعت event على Kafka، فيه احتمال إن الكتابة تنجح والـ event يضيع. Outbox Pattern بيحل المشكلة دي بضمان atomic بين الاتنين، مع شرح بمثال البنك، كود Node.js شغّال، أرقام إنتاج، و trade-offs واضحة.
لو عندك حالة جديدة في TypeScript واتنسيت تضيفها في switch، Discriminated Unions مع assertNever يخلي الخطأ يظهر وقت الترجمة بدل ما يظهر في الإنتاج.
شرح JavaScript Proxy لمستوى متوسط بمثال السكرتير، تعريف علمي دقيق، كود traps شغّال، حالة validation حقيقية، أرقام قياس على V8، trade-offs، ومتى لا تستخدمه.
لو واجهة البحث عندك بتعرض نتائج قديمة لأن طلب fetch أبطأ رجع متأخر، AbortController يخليك تلغي الطلب السابق وتقبل آخر طلب فقط.
شرح Decorators في Python بمثال محل القهوة للمبتدئ، تعريف علمي دقيق، كود timer وlogger قابل للنسخ، أرقام مقاسة، trade-offs، ومتى لا تستخدمه فعلاً.
لو دالة Python بتعيد نفس الحساب آلاف المرات، @lru_cache بيخزن المخرجات ويرجّعها في O(1). شرح مع مثال للمبتدئ، تعريف علمي، كود شغّال، أرقام قياس، trade-offs، ومتى ما تستخدمهوش.
لو كود Python بيفتح ملفات أو اتصالات وبيسيبها مفتوحة عند أول exception، استخدم Context Managers عشان التنظيف يحصل تلقائيًا وبشكل قابل للاختبار.
لو اختبار الدفع عندك بيستنى Stripe أو sandbox خارجي، Dependency Injection يخليك تختبر المنطق بسرعة وبثبات بدون كسر تصميم الكود.
لو كودك بيتعامل مع 100 عنصر بدون مشاكل وبيتعلق على 100 ألف، المشكلة مش في السيرفر. المشكلة في تعقيد الخوارزمية. شرح Big O للمبتدئ بمثال دفتر التليفونات، تعريف علمي دقيق، كود Python شغّال، أرقام مقاسة، وحالات ما تشغلش بالك بيها فيها.