uz
Feedback
لمحة 👀 برمجية

لمحة 👀 برمجية

Kanalga Telegram’da o‘tish
617
Obunachilar
+124 soatlar
+27 kunlar
+230 kunlar
Postlar arxiv
ByteByteGo-Big-Archive-System-Design-2023.pdf60.24 MB

Pdf system design

https://youtube.com/playlist?list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX&si=yvvsSpdIFa-6lYv0 قناة على يوتيوب لواحد عميق جدا في System design وكثير من المواضيع منها data structure و design patterns والى آخر...

قد سمعت عن Command Design Pattern هذا أسلوب برمجي يشتيك ترتب أوامرك وتخلي كل واحد له كائنه الخاص به بحيث ما عاد يحتاج النظام
+1
قد سمعت عن Command Design Pattern هذا أسلوب برمجي يشتيك ترتب أوامرك وتخلي كل واحد له كائنه الخاص به بحيث ما عاد يحتاج النظام يتعب نفسه يفهم التفاصيل يعني كل أمر مثل شغل المكيف أو طفي النور بيكون ملفوف بكائن مستقل جاهز ينفذ نفسه الفكرة بسيطة تصنع واجهة تقول Execute أو نفذ كل أمر تدي له كائن والكائن هذا يشل معه كل المعلومات اللي يحتاجها للتنفيذ بعدها عندك Invoker أو المرسل هذا اللي يمسك الأوامر وينفذها ليش هذا الأسلوب رهيب لأنه تقدر تخزن الأوامر وتنفذها متى ما تشتي لو شتي تضيف خاصية تراجع Undo تسويها بكل سهولة النظام يظل بسيط وقابل للتطوير مهما كبرت شغلتك تخيل أنك تصمم نظام بيت ذكي تقول افتح الباب الكائن يشتي يفهم بس كيف يفتح الباب مش شغله يعرف مين قال له تقول ارجع أغلق الباب نفس الطريقة كل شيء مرتب بدون ما ترجع تغير كل الشيفرة باختصار هذا النمط ينفعك ترتب أمورك زي اللي يخزن الأوامر ويمشي عليها خطوة بخطوة بلا زحمة ولا فوضى.

من كلامي ومن كلامهم كلنا واحد 💪 لاشكر على واجب.

✅كافة البوتات المجانية التي يحتاجها طلبة الجامعات ✅بوت دمج الملفات ⌛️ t.me/engala1/749 ✅كتابة  البحوث التقارير : ⌛️ t.me/engala1/3846 ✅ ترجمة ملفات PDF مجاناً : ⌛️ t.me/engala313/604 ✅- حل اسئلة الرياضيات : ⌛️ t.me/engala1/683 ✅ تحويل الملفpdf الى Word ⌛️ t.me/engala1/743 ✅-تحويل الصورة الى PDF مجاناً : ⌛️  t.me/coolry100/135 ✅ استخراج النص من الصورة ⌛️ t.me/coolry100/128 ✅بوت تنزيل التقارير ⌛️ t.me/engala1/3846 ✅بوت تنزيل البحوث ⌛️ t.me/engala1/3856 ✅بوت ترجمة الملفات ⌛️ t.me/coolry100/126 ✅بوت الكروبات الجامعية 🌐 @COLRY77BOT ✅بوت قبولاتي @Myuniversity10bot بوت شرح جامعي👇 t.me/coolry111/399 ⚠️ بوت تقارير فقط اكتب عنوانك. يعطيك تقرير كامل 🌐 @REPORTPRO_3BOT 📒بوت شرح جامعي كل ماتحتاجه موجود بالبوت👇 ترجمة: كتابه تقرير: دمج ملفات: حذف صفحات: 🌐 @COLRY72BOT بوت أستخراج أي نص موجود في الصورة 📗 @COLRYBOT ⚜️بوت تحويل الصوت الى نص 🌐 @COLRY90BOT ❤️ اهلا بك المساعد الجامعي في بوت الإمتحانات             📃 يمكنني عمل اسئله MCQ ! معرف البــــــــــــوت 🌐 @Quizmcq3Bot بوت حلول @ALAAHDGBOT

شكرا لك يا عزيزي لتوضيح فكرتك الجميله السلسلة هذه كانت نقل لما اختارته شركة برمجيه في سوق العمل ، وكما هو واضح أكثر من الصورة
شكرا لك يا عزيزي لتوضيح فكرتك الجميله السلسلة هذه كانت نقل لما اختارته شركة برمجيه في سوق العمل ، وكما هو واضح أكثر من الصورة حجم الـ DB الاساسية (تعتبر متوسطه نوعا ما ، لا كبيره ولا صغيرة ، ولكن غالباَ مقارنه بالمشاريع المعروفه لدي انا الـ db اشوفها كبيره جداً) وبرغم هذا ما فيش اي مشكله من الي مذكورة هنا لا أقول ان طريقتهم الأصح ، ولا أقول ان طريقتك الأصح... انا - كما قلت في بدايه الرسائل - مجرد ناقل للفكره + وهي شغالة بكفاءة 👍🏻 + شكرا لك للمشاركه 👍🏻

في مشاريع التخرج وفي سوق العمل بشكل عام... بينتهي بنا الأمر بقاعده بيانات ضخمة جداً.. وعشان نفعل التقارير بينتهي بنا الأمر في SQL مشابه لهذا 🙂💔 طبعاً هذه الصورة مقصوصة بسبب خصوصية السورس كود، والكويري حرفياً اكبير من هذا بكثير وفيبه joins كثيره جداً مشكلة الكويري هذا لما البيانات كبيرة انه كان يأخذ وقت تقريباً 2 الى 5 دقائق عشان يشتغل 🤕 هذا اذا كان مجموع الrows الناتجه 100 ألف صف... فكيف لو كان مليون او أكثر!؟ فهنا بتكلم في سلسلة رسائل تشرح طريقه واحده لتحسين الكويري... سبب عملي للسلسة هذه لان الحل المتواجد معي طويل جداً ولازم نرجع الى ايام سنه ثانيه لكي نعرف الحل كذلك مع أسلوب البارتات سأترك للكم مجال التفكير فقد ربما تجيدوا حل أفضل بكثير وتشاركوه للجميع... #سلسلة #DB رد على هذا البوست : أول انت في نفس النظام وقاعدة بيانات واحده عليك أول شيء ان تتجه إلى الحل الأبسط خطوة بخطوة والله ياعم الحج في عمليات joins على الداتابيز على أكثر من جدول كثيرة أول حل تتجه له هو عمل none indexes والله زاد الضغط اتجه لعمل cashing لل لعمليات الأكثر تكرار في عدت طرق لل كاش سوى in memory او redis أو غيرها طيب عملت الحل الأولي ده شفت بعد فترة في load على السيرفر هنا تتوجه لحل metalized view وفكرته واضحه سيتم فيه تخزين البيانات الي هتحتاجها من كل جدول أنت الآن هنا عليك أن تركز حفظ البيانات كيف بتم في هذا النقطة لو مثلا أضافة إلى جدول ما بيانات ضروري تكون العملية synchronously في نفس transaction هنا تكامل شي يعرف ب strong concency ايش يعني عندما تضيف البيانات في جدولٍ ما هيعمل تحديث في نفس اللحظه على المترليز فيو بعد فتره من الزمن الضغط زاد هو الحل ايه ياسطى الآن عليك أن تتجه إلى نمط بمايسمى CQRS => command query responsibility segregation وهذا التصميم فكرته فصل عملية التغير عن الداتابيز ك command و عمليات القراءة ك query ده هيحسن الأداء بكثير والله بعد فترة من الزمن لحظة ان الضغط زاد اكثر هنا عليك أن تفصل عمليات ال queries على داتابيز أخرى الأفضل NoSQL documents اذا كانت بياناتك مش معقدة إلى حد كبير تمام يابش مهندس مثلا ضفت سجل جديدا كيف سأحدثه في داتابيز NoSQL والله ياسطى هتتصل مع هذا القاعدة مثل مابتتصل مع القاعدة الأساسية تمام بس متى بيحفظ شف عند أي عمليه سوى حذف أو إضافة عمليات تغيير على الداتابيز وانت بتعملها حفظ في كودك هناك هيكون في واجهه أخرى ستتعامل معها وتستخدم دوالها من أجل أن تبعت البيانات المطلوبة تحدثها في داتابيز ال NoSQL لكن طيب حفظت افترض حدث خطأ أثناء عملية الحفظ في الداتابيز الأساسية عمنا قد راح وحدث في الداتابيز الأخرى دي مشكله مع العلم حتى ولو حفظ البيانات لا تحفظ في نفس اللحظه في latency قد يكون network أو غيرها وهذا مايعرف ب evaluation conceny أي بمعنى أحدث ايحين ما أحدث أهم شيء هيحدث نرجع للمشكلة كيف نحله هنا ستتجه إلى massaging asynchronous سوى هتستخدم rabbitmq او Kafka حسب طلبك . طيب لماذا لم اتجه الى هذا الحل كن الأول لاتفكر ياصديقي بل حلول التي ستعقد بها نظامك نعم انت حليت مشكله بس فتحت مشاكل سواء كان جانب صيانه وغيرها هذا كلام بسيط جدا ان راودك عقلك كيف يعني ؟ استخدم Query Optimization مثل Execution Plan Analysis لمعرفة أضعف النقاط مع العلم لو استخدمة metalized view وفي عمليات تغيير على الداتابيز كثير ستكون العمليات التحديث مكلفة على الفيو . وشكرًا!

هل دريت إنك تقدر تشتغل بميزة اسمها Source Generators من .NET 5 ومافوق ذي ميزة أضافتها مايكروسوفت في .NET 5، وتخليك تولد كود أثناء وقت الترجمة (Compile Time) بناءً على الكود اللي كتبته. فكرة Source Generators إنك تقدر تكتب كود يساعد على تحسين الأداء وتقليل التكرار في وقت التشغيل (Runtime). يعني مثلًا لو عندك كود بيتكرر كثير وتريد تحسن من أداء التطبيق، تقدر تستخدمها عشان تولد كود تلقائي يوفر عليك الجهد. ذي الميزة مفيدة بشكل كبير في حالات مثل توليد أكواد الـ DTOs أو الـ Mapping Classes، وبدون الحاجة لمكتبات خارجية مثل AutoMapper في بعض السيناريوهات. دور Source Generators الأساسي هو تقليل التكرار وتوليد كود إضافي في وقت الترجمة. وأيضًا في حالات تحتاج فيها كود ديناميكي بناءً على لوجيك معيّن، فذي الميزة بتساعد تخلي كودك نظيف وتقلل من استخدام if else وأشياء كثيرة غيرها.

الفرق بين العمارة الأحادية (Monolithic) والمايكروسيرفيس (Microservices) يكمن في كيفية بناء الأنظمة البرمجية. في العمارة الأحا
الفرق بين العمارة الأحادية (Monolithic) والمايكروسيرفيس (Microservices) يكمن في كيفية بناء الأنظمة البرمجية. في العمارة الأحادية، يتم تصميم التطبيق ككتلة واحدة مترابطة، حيث تكون جميع الأجزاء مثل الواجهة الأمامية والخلفية وقاعدة البيانات متصلة مع بعضها بشكل مباشر. هذا النوع مناسب للتطبيقات الصغيرة والمتوسطة لأنه بسيط وسهل في البداية، لكن إذا كبر المشروع يصبح تعديل أو توسيع النظام معقدًا. أما المايكروسيرفيس، فهي تعتمد على تقسيم التطبيق إلى خدمات صغيرة مستقلة، وكل خدمة تقوم بمهمة محددة ويمكن تشغيلها أو تحديثها دون التأثير على بقية النظام. هذا النوع من العمارة يوفر مرونة كبيرة ويجعل التوسع أسهل، خاصة للتطبيقات الكبيرة والمعقدة. ولكنها تحتاج إلى خبرة أكبر في التصميم والبنية التحتية، لأنها تضيف طبقة من التعقيد في الاتصال بين الخدمات. بالتالي، إذا كان المشروع بسيطًا وصغيرًا، فالعمارة الأحادية تكون خيارًا أفضل. أما إذا كان المشروع كبيرًا ويتطلب توسعًا مستمرًا، فالمايكروسيرفيس هي الحل الأنسب.

معاني الأخطاء للي شغال api مفيدة 👍
معاني الأخطاء للي شغال api مفيدة 👍

Repost from N/a
يا شباب الذي يشوف نفسه كفو بما فيه الكفاية يرسل لي خاص أجيب له رابط التقديم لأنه طالبين خبرة و عدد معين فقط.. @ahmed_jalalCS

Repost from N/a
مطلوب مبرمجين في عدة مجالات مختلفة: ✅ مهندس ضمان الجودة QA. ✅ مصمم واجهة المستخدم/تجربة المستخدم UX/UI: Figma، Adobe XD، illustrator ✅ مطور frontend: NextJS، ReactJS، Tailwind CSS، GSAP ✅ مطور تطبيقات الجوال: React Native، android Native، Swift Native ✅ مطور backend: nest.js، Node، Express، Django، Rest، WebSocket، gRPC، SOAP، Webhook، GraphQL 🔴 معرفة كيفية دمج واستخدام خرائط جوجل في التطبيقات. 🔴 3 سنوات من الخبرة. 🔴 العمل اونلاين.

اختصارات الكيبورد اللي هتخليك مَلَك في VS Code 👑💻 لو شغال على VS Code ومش عارف تختصر الوقت، يبقى لازم تبقى عارف شوية اختصارات كيبورد تنجز بيها بسرعة الصاروخ 🚀. تعالوا نبدأ: 🎯 أهم الاختصارات اللي لازم تعرفها: 1️⃣ نقل السطر لفوق أو تحت ⬆️⬇️ دوس: Alt + ↑ أو Alt + ↓ علشان تنقل سطر من مكان لمكان بسرعة .. الاختصار ده هيبسط الدنيا عليك. 2️⃣ كرر السطر الحالي 📝 دوس: Shift + Alt + ↓ أو Shift + Alt + ↑ علشان تكرر نفس السطر تحت أو فوق على حسب السهم .. استخدم الاختصار ده وشوف الفرق. 3️⃣ حدد نفس الكلمة وكررها 🔄 دوس: Ctrl + D عايز تعدل نفس الكلمة في كذا مكان؟ ده الاختصار اللي هيخلصلك الدنيا .. حدد الكلمة ودوس الاختصار هيحدد كل الكلمات اللي شبهها. 4️⃣ روح للسطر اللي انت عايزه 🧭 دوس: Ctrl + G مش فاكر الكود في سطر كام؟ روحله في ثانية بالاختصار ده. 5️⃣ نسّق الكود بتاعك تلقائيًا 🎨 دوس: Shift + Alt + F لو الكود شكله مكركب .. نفذ الاختصار ده هينسقهولك زي ما الكتاب بيقول. 😄 6️⃣ اظهر الـ Terminal تحت الكود ⚙️ دوس: Ctrl + `` أو Ctrl + J` بدل ما تروح تدور على الزرار فوق وتحت، هات التيرمنال على طول. 7️⃣ انتقل لملف مباشرة بسرعة ⚡ دوس: Ctrl + P البروجكت مليان ملفات وعايز تفتح ملف من وسطهم بسرعة .. دوس ع الاختصار ده واكتب اسم الملف أو أول حرف منه هيظهرلك. 🫡❤️ 8️⃣ التنقل بين التابات المفتوحة 🌀 دوس: Ctrl + Tab لو عندك كذا ملف مفتوح، ده هيساعدك تتنقل بينهم بسرعة. 9️⃣ ابحث جوه المشروع كله 🕵️‍♂️ دوس: Ctrl + Shift + F مش فاكر كتبت الكود ده فين؟ الاختصار ده هيجيبلك أي حاجة هتدور عليها. 🔟 احفظ شغلك بسرعة 💾 دوس: Ctrl + S عشان شغلك ما يضيعش... كل شوية Ctrl + S أو شغل الـ Auto Save وهتبقى في الأمان. 🔢 افتح ملف موجود عندك 🔍 دوس: Ctrl + O عايز تجيب أي ملف من جهازك؟ الاختصار ده الحل السريع. 🔟 افتح ملف جديد بسرعة 🗂️ دوس: Ctrl + N هتلاقي نفسك فاتح ملف جديد من غير لف ودوران. --- 🏆 نصيحة للتنانين: لو فيه اختصار ناقصك أو مش مريحك، ممكن تروح على File > Preferences > Keyboard Shortcuts وتظبط اللي يناسبك. 💡💻✨

حرفيا كل 3 ساعات تنزل مكتبة او فريمورك جديد js... بس فريمورك عربي؟ وبإسم كوكب؟ ما تحصل كل 3 ساعات... فكره جميله 🔥 رابط المقا
حرفيا كل 3 ساعات تنزل مكتبة او فريمورك جديد js... بس فريمورك عربي؟ وبإسم كوكب؟ ما تحصل كل 3 ساعات... فكره جميله 🔥 رابط المقال كامل: https://kawkab-docs.vercel.app/ar

لو انت Backend Developer وعايز تطور نفسك وتتعلم حاجات جديدة تساعدك تبني مواقع وتطبيقات أحسن، البوست ده هيبقى مفيد جدًا ليك! 👌❤️ هنا هنتكلم عن 6 GitHub Repos قوية ممكن ترفع مستواك من 0 لـ 100 في مجال الـ Backend. 1️⃣ Free for Dev 💎 إيه ده؟ ده GitHub Repعبارة عن كنزلانه فيه ليسته بكل الادوات المجانيه اللي ممكن تستخدماه كمبرمج هتلاقي حاجات زي Cloud Storage مجاني، أدوات testing، والsecurity. اللستة دي دايمًا بتتحدث، يعني هتلاقي أحدث الحاجات المتاحة بسهولة. 🎯 اللينك: https://free-for.dev 2️⃣ System Design Primer 📊 إيه ده؟ لو بتشتغل على Scalable Systems أو بتحضر لمقابلات System Design في شركات التقنية، يبقى الريبو ده دليل ممتاز ليك. هيعرفك أساسيات زي قواعد البيانات، الـ Scalability، والـ Microservices. فيه أسئلة تدريبية، أكواد جاهزة، ورسومات توضيحية تساعدك تفهم بشكل أسهل. 🎯 اللينك: https://github.com/donnemartin/system-design-primer 3️⃣ Roadmap.sh 🗺️ إيه ده؟ لو نفسك تطور نفسك خطوة بخطوة وتتعلم حاجات جديدة ف دي فيها كل ال roadmaps اللي ممكن تتخيلها فيه خطط تتعلم اي حاجة: سواء تطوير ويب، AI، DevOps أو أي مجال تقني. هو مشروع معتمد على الcommunity، يعني فيه ناس كتير بتستخدمه وبتضيف عليه دايمًا. 🎯 اللينك: https://github.com/kamranahmedse/developer-roadmap 4️⃣ Node.js Clean Architecture 🛠️ إيه ده؟ لو عايز تعرف إزاي تبني RESTful APIs باستخدام Node.js بشكل نظيف ومنظم، الريبو ده هيكون مفيد جدًا. بيعرفك إزاي تنظم الكود في Layers (زي Controllers وEntities). بيشرح إزاي تدمج MongoDB وRedis بسهولة، ويضمن إن كل جزء في الكود يتعامل مع الجزء المناسب ليه. 🎯 اللينك: https://github.com/panagiop/node.js-clean-architecture 5️⃣ Realworld 🌍 إيه ده؟ ده مشروع مفتوح المصدر بيعلمك إزاي تبني نسخة من موقع Medium (Conduit) باستخدام تقنيات زي React, Node, Django وغيرها. الفكرة الحلوة فيه إنك تقدر تجمع أكتر من Backend مع أكتر من Frontend بنفس الـ API Specifications. هيعرفك إزاي التطبيقات الحقيقية بتشتغل بشكل عملي. 🎯 اللينك: https://github.com/gothinkster/realworld 6️⃣ Awesome Backend Engineer 📚 إيه ده؟ ده GitHub Repo مليان مصادر قوية لأي حد عايز يبقى Pro Backend Developer. بيغطي كل حاجة: من أساسيات علوم الكمبيوتر، الشبكات، الأمان، تطوير الويب، وقواعد البيانات. فيه مشاريع، كتب موصى بيها، ونصايح لبناء سيستمز قوية وآمنة. 🎯 اللينك: https://github.com/zhashkevych/awesome-backend #it_blogs

رسائل git commit مش مجرد نصوص، هي مفتاح لفهم وحل المشاكل في مشروعك البرمجي في المستقبل! لو كنت تكتب رسائل زي: 'Update file' أو 'Fix bug' او رساله الجحيم '.' فأنت تضيع وقتك ووقت فريقك. 🚫 تقدر تقرأ اكثر عن طريق: - X - Linkedin - bsky

🔸️ملخص للـ OOP 📝 🔸️ لو عندك إنترفيو وتريد تراجع على الـ OOP، الملف هذا سيسهل لك الموضوع جدًا 👌 تقدر تعتمد على المصادر المكتوبه، لأنها ستوفر علك وقت ومجهود كبير