لمحة 👀 برمجية – Telegram
لمحة 👀 برمجية
606 subscribers
144 photos
8 videos
13 files
141 links
Download Telegram
Forwarded from اللجنة العلمية CS 22 (ʙʀʜᴏᴏᴍ ⑇)
كل يوم framework جديد

فريمورك Intent مبني من Nestjs واتوقع انه بيكون بديل اقوى من Adonis.js

https://tryintent.com/
Forwarded from Deleted Account
Forwarded from حازم السقاف
Deepseek هو أداة ذكاء اصطناعي مبتكرة تقدم تجربة متقدمة ومجانية للاستخدام، مما يجعلها خيارًا مثاليًا لكل من الأفراد والمحترفين الذين يبحثون عن حلول ذكية في مجالات متعددة. يمكنكم تجربته عبر الرابط التالي: chat.deepseek.com.
لماذا تختار Deepseek؟
1. مجاني ومتاح للجميع
Deepseek يتيح لكل مستخدم يوميًا ما يصل إلى 50 سؤالًا مجانيًا مع ميزة متقدمة تُسمى reasoning. هذه الميزة تعزز من قدرته على تقديم إجابات منطقية ودقيقة، ما يجعله أداة قيمة للبرمجة، البحث، وحتى التحليل العميق.
2. أداء مذهل يتفوق على ChatGPT
وفقًا للعديد من التقييمات، أداء Deepseek في مجالات مثل البرمجة والمساعدة في حل المشكلات يتفوق على أحدث إصدارات ChatGPT (O1 Preview). إذا كنت تبحث عن حلول دقيقة ومتطورة في أقل وقت ممكن، Deepseek هو الخيار الأمثل.
3. دعم البرمجة والمجالات التقنية
Deepseek أثبت فعاليته الكبيرة في مساعدة المطورين، حيث يقدم حلولًا دقيقة وسريعة للتحديات البرمجية. كما يدعم العديد من اللغات والأطر البرمجية الحديثة.
4. مقارنة مباشرة مع ChatGPT
لمن يرغب في التأكد من مزايا Deepseek، يمكن الاطلاع على هذا المقال الذي يقارن بينه وبين ChatGPT بشكل مباشر، مما يبرز نقاط القوة في أدائه.
كيف يمكنك الاستفادة منه؟
إنجاز المشاريع البرمجية: يساعدك Deepseek في حل المشاكل البرمجية بسرعة وكفاءة.
تحليل البيانات والبحث: إذا كنت باحثًا أو تعمل في تحليل البيانات، فإن ميزة الاستدلال المنطقي (Reasoning) ستكون مفيدة للغاية.
توفير الوقت والموارد: كونه مجاني الاستخدام حتى 50 سؤالًا يوميًا، فهو يوفر بديلًا اقتصاديًا لأدوات الذكاء الاصطناعي الأخرى.
لا تفوت فرصة استكشاف إمكانات Deepseek بنفسك وتجربة الفرق. جربه اليوم!
🔥1
Forwarded from اللجنة العلمية CS 22 (خالد العبسي)
السلام عليكم
تقريبا كثير مننا يحاول يصنع بايلود ويستخدم msfvenom لكن الأداة هذي معاناه عشان تحفظ خطواتها وصعب تفهم الإختيارات عشان كذا جبت
لكم أداة TheFatRat هذي الأداة تشتغل على msfvenom and metaoploite تسهل لك الأستخدام ومتوفر خيارات أداااااة رهييبه مرة وكبيرة أنا أستخدمها عشان
البايلود فيها حاجات أكبر تقدر تكتشفها بنفسك
1- تنزيل الأداة:

git clone https://github.com/Screetsec/TheFatRat.git
cd TheFatRatchmod +x setup.sh && ./setup.sh
2- تحديث الأداة

./update && chmod +x setup.sh && ./setup.sh
كملاحظة: الأداة تحتاج كثير أشياء عشان تشتغل يعني أتأكد من مساحة جهازك والأنترنت عندكإذا واجهتك مشكله أو عندك أي استفسار --> @spa6k
Forwarded from الرسمية CS4 Class-22 (أحمد جلال | 𐩱𐩢𐩣𐩵 𐩴𐩡𐩱𐩡)
Forwarded from الرسمية CS4 Class-22 (أحمد جلال | 𐩱𐩢𐩣𐩵 𐩴𐩡𐩱𐩡)
🎉 يسر مجموعة مطوري جوجل في صنعاء (GDG Sana’a) 🌐 أن تعلن لكافة التقنيين من مطورين ومبرمجين عن تنظيمها مؤتمر المطورين (DevFest Sana'a 2024) 🖥️، والذي سوف يتم استضافته في قاعة مؤتمرات مؤسسة اليتيم التنموية 🏢 يوم السبت الموافق 21/12/2023.
🌟 يأتيكم مؤتمر المطورين لهذا العام برعاية من قِبل شركة جوجل|Google إلى جانب مجموعة من الرعاه المتميزين والذي ستم الإعلان عنهم تِباعاً.

📢 كما يسعدنا أن نعلن لجميع المهتمين عن تنظيمنا لمعرض المطورين المهني – للعام الثالث على التوالي - 🚀 والذي سوف يترافق مع فعاليات مؤتمر DevFest Sana’a، المعرض المهني سوف يستضيف مجموعة من الشركات التقنية الرائدة في السوق اليمني في مجال صناعة البرمجيات والتطبيقات والمواقع، والتي بدورها سوف تشارك زائري المعرض والمشاركين في المؤتمر تجاربها وخبراتها 🌐📊، إلى جانب قيامها بتقديم فرص مهنية مختلفة من تدريب وتوظيف 🚀 - كلاً بحسب احتياجه - وفي مجالات عدة منها: تطوير البرمجيات، تصميم المواقع، تصاميم الواجهات، تسويق، تسويق رقمي وغيرها... سيتم نشر مزيد من التفاصيل والمعلومات حول معرض المطورين والمشاركين فيه قريباً.

💡 مؤتمر المطورين لهذا العام سوف يركز على تقنيات الذكاء الاصطناعي والسحاب والفلاتر بشكل رئيسي 🧠، كما سيتخلل جلساته عروض تقديميه وتطبيقيه تتناسب مع أغلب فئات المبرمجين/المطورين المهتمين بتلك التقنيات سواء كانوا مبتدئين أو متقدمين أو محترفين. كما يعقد المؤتمر جلسة نقاشية تناقش توجهات السوق اليمنية في مجالات تصميم وتطوير البرمجيات وأهم تحدياتها 🗣️، والتي تهدف إلى إعطاء المشاركين رؤيا واضحة حول أهم متطلبات سوق العمل البرمجي وتوقعات توجهاته ومتطلباته في الفترة القادمة... يقدم محتوى فقرات المؤتمر وجلسته النقاشية نخبة من أبرز المطورين والتقنيين اليمنيين المشاركين كمتحدثين في هذا المؤتمر.

🔗 لطلب المشاركة في مؤتمر المطورين DevFest Sana’a يرجى التسجيل من خلال الرابط التالي: https://bit.ly/DevFestSanaa2024
📅📅 نبذة عامة عن مؤتمر المطورين Devfest Sana’a 2024 📅📅
🗓️ موعد المؤتمر: السبت – 21/12/2023
📍 المكان: قاعة مؤتمرات مؤسسة اليتيم التنموية – بجانب مسبح النهضة
🌐 نوع المؤتمر: تقني متعلق بمجال تطوير البرمجيات والتطبيقات.
مدة المؤتمر: يوم واحد فقط (8 صباحاً - 5 مساءً)
🪑 عدد المقاعد المتاحة: 500 مقعد.
💸 رسوم المشاركة: مجاناً - لا توجد أي رسوم.
📝 طريقة تقديم طلب حضور المؤتمر: عبر رابط التسجيل (https://bit.ly/DevFestSanaa2024)

📋 شروط التسجيل والقبول في المؤتمر 📋
🎯 مؤتمر المطورين DevFest موجه بشكل رئيسي للمطورين والمبرمجين وطلاب تخصصات الحاسوب المهتمين في تطوير البرمجيات والتطبيقات وتصميم المواقع والواجهات.
🚶‍♂️ المعرض المهني المرافق للمؤتمر سيكون متاح لجميع الزوار المهتمين بدون اي طلبات تسجيل.
📝 بعض محتويات فقرات المؤتمر ستكون باللغة الإنجليزية، لذا يُفضل أن يكون لدى من يرغب بالمشاركة القدرة على فهم اللغة الإنجليزية.
👥 سيتم إعطاء أولوية في اختيار المشاركين (50 مقعد) للأعضاء المنضمين/المسجلين في مجتمع المجموعة الرسمي على الواتس آب (https://bit.ly/GDGYemen).
♀️ سيتم تخصيص 40% من اجمالي المقاعد للمهتمات بالحضور من الإناث.
📞 سيتم التواصل مع المقبولين هاتفياً.
📅 آخر موعد لاستقبال طلبات المشاركة في المؤتمر: يوم الأحد - الموافق 08/12/2023 - الساعة 01:00 ظهراً.
⚠️ نرجو ملاحظة أنه بسبب عدد المقاعد المحدود فإن التسجيل في النموذج أعلاه لا يضمن قبولك. 🪑

📊📊 طريقة اختيار المشاركين: سيتم اختيار المشاركين بناءً على التالي 📊📊
🏁 أولوية التسجيل.
👥 تنوع تخصصات ومجالات المشاركين.
💼 الخبرات والأعمال المنفذة "إن وجدت".
✍️ مدى جدية الشخص في الإجابة على نموذج التسجيل والتزامه بحضور المؤتمر. 💬
🎲 إجراء قرعة الكترونية في حال ازدياد عدد المقبولين بعد الفرز الأولي. 🎲

📢👀 ترقبوا مزيد من المعلومات حول أجندة المؤتمر والمتحدثين الرسميين فيه إلى جانب تفاصيل أكثر حول معرض المطورين المهني وكيفية المشاركة فيه خلال الأيام القليلة القادمة.

🖥️ لمزيد من المعلومات والاستفسارات:
📲 يرجى التواصل معنا عبر صفحتنا في الفيسبوك (https://fb.com/gdgyemen) أو عبر البريد الإلكتروني info@gdgsanaa.com 📧
#DevFestSanaa
#GDGSanaa
#gdg_yemen
#GDG_Sanaa
👍1
Forwarded from InfoTechnology (IT4_2024) (Ahmed_Askar)
💥 شوية مواقع سوف تفيدك جداً لو بتشتغل في الـ Frontend .
السلام عليكم ورحمة الله وبركاته ،جبت لكم شوية مواقع أنا جربتها وفعلاً سهلت عليّ الدنيا جدًا ! لو شغال في الـ Web Development، سوف تحتاج إلى الحاجات هذي :
🔸️🔸️🔸️
1 - لـ Tailwind :
لو بتحب Tailwind، هذا موقع تحفة بيسهل عليك الكتير ! فيه كل الـ Components تبعه Bootstrap، بس مخصوص لـ Tailwind لن تحتاج إلى إن تبني من الصفر من جديد !
👇
[ Flowbite ] :( https://flowbite.com )



2 - لـ Tailwind أيضا :
لو تريد Components جاهزة أكتر، سوف تجدها هنا
👇

[ HyperUI ] : ( https://www.hyperui.dev )



3 - لو تريد تعمل Dashboard :
في مكتبتين جامدين لو تريد تبني Dashboard تبعك باستخدام Chart . js أو GoogleChart .

👇
[ Dashboard 1 ] : ( https://lnkd.in/dP6DTViw )

[ Dashboard 2 ] : ( https://lnkd.in/d5e4M63w )



4 - موقع حلو للـ Animations :
لو تريد تضيف تأثيرات وحركات لموقعك، هنا سوف تجد أفضل الأنيميشنز الجاهزة .

👇
[ Animations ]: ( https://lnkd.in/dyinag2q )



5 - شيتات ملخصة للـ Frontend :
لو بتبحث على ملخصات للـ Frontend في مكان واحد، سوف تجد كل حاجة هنا
👇
[ Frontend Cheatsheet ] : ( https://lnkd.in/dRtsBShz )




6- ءAuto Prefix للكود تبعك :
لو ماتريد تتعب في إضافة البريفكسات للكود عشان يشتغل على كل المتصفحات، الموقع هذ سيسهل عليك الموضوع .
👇
[ Auto Prefixer ]: ( https://lnkd.in/dJex763r )

7 - ءSweetAlert :
لو تريد تحط Alerts في موقعك، مكتبة SweetAlert

👇
[ SweetAlert ] ( https://lnkd.in/dJSmxfhH )



8 -ءTest لـ Regular Expressions :
لو شغال على Validation في الكود تبعك، الموقع ده سيساعدك تختبر الـ Regular Expressions بسرعة .
👇
[ Regex101 ] : ( https://regex101.com )



9 - موقع APIs مجانية :
هذا موقع فيه APIs مجانية لكل المجالات تقريبا ! لو تريد تسحب بيانات من مكان ثاني أو تستخدم API في مشروعك، ستجد كل اللي محتاجه هنا .
👇
[ Free APIs ] : ( https://lnkd.in/d-2h7n6m )



10 أسئلة انترفيو ( Frontend و Backend ) :
لو بتجهز ل Interview، لازم تكون جاهز بأسئلة Frontend و Backend . ستجد كل اللي محتاجه هنا .
👇
[ Interview Questions ] ( https://lnkd.in/dRVv5X28)
1
Forwarded from اللجنة العلمية CS 22 (Osama Dammag)
سلام ي شباب 👋🏻

جبنا لكم افضل طريقة للتعامل مع ال firebase 🔥.

هذا البوست على linkedin فيبه طريقة الاستخدام والريبو حق المشروع الذي استخدمت فيه ال firebase.

المشروع هو عباره عن chatting app بسيط 😁.

https://www.linkedin.com/posts/osama-dammag-%F0%9F%87%B5%F0%9F%87%B8-b40739221_flutter-firebase-provider-activity-7270586885364707328-5UfW?utm_source=share&utm_medium=member_android

إن شاء الله تستفيدوا من البوست ب اكبر قدر ممكن وأيضاً لو في اي سؤال عادي بأي وقت. ولا تنسوا إذا تشتوا تعدلوا على المشروع ف براحتكم. الهدف انكم تفهموا 🤍.

#مساعد
#جمعتكم_طيبة
👍1
Forwarded from اللجنة العلمية CS 22 (خالد العبسي)
السلام عليكم،
إذا كنت تخطط تسوي أداة أو مشروع بالبايثون وبتضيف لمسة جمالية، بدل ما تحاول تنسق المينو أو النصوص يدويًا، جبت لكم مكتبة ممتازة تسهّل عليكم كتابة النصوص بأسلوب ASCII Art بشكل أنيق وسريع.

المكتبة هي: pyfiglet

- طريقة التثبيت:
pip install pyfiglet

- طريقة الاستخدام:
بكل بساطة

import pyfiglet
print(pyfiglet.figlet_format("Your Name"))
Forwarded from InfoTechnology (IT4_2024) (Ahmed_Askar)
OOP Summary.pdf
11 MB
Forwarded from InfoTechnology (IT4_2024) (Ahmed_Askar)
InfoTechnology (IT4_2024)
OOP Summary.pdf
🔸️ملخص للـ OOP 📝 🔸️

لو عندك إنترفيو وتريد تراجع على الـ OOP، الملف هذا سيسهل لك الموضوع جدًا 👌
تقدر تعتمد على المصادر المكتوبه، لأنها ستوفر علك وقت ومجهود كبير
4
Forwarded from InfoTechnology (IT4_2024) (Ahmed_Askar)
لو انت 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
👍1
Forwarded from اللجنة العلمية CS 22 (ʙʀʜᴏᴏᴍ ⑇)
حرفيا كل 3 ساعات تنزل مكتبة او فريمورك جديد js... بس فريمورك عربي؟ وبإسم كوكب؟ ما تحصل كل 3 ساعات...

فكره جميله 🔥
رابط المقال كامل:
https://kawkab-docs.vercel.app/ar
🔥1
اختصارات الكيبورد اللي هتخليك مَلَك في 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 وتظبط اللي يناسبك.

💡💻
👍4
Forwarded from الرسمية CS4 Class-22 (أحمد جلال | 𐩱𐩢𐩣𐩵 𐩴𐩡𐩱𐩡)
مطلوب مبرمجين في عدة مجالات مختلفة:

مهندس ضمان الجودة 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 سنوات من الخبرة.

🔴 العمل اونلاين.
👍1
Forwarded from الرسمية CS4 Class-22 (أحمد جلال | 𐩱𐩢𐩣𐩵 𐩴𐩡𐩱𐩡)
يا شباب الذي يشوف نفسه كفو بما فيه الكفاية يرسل لي خاص أجيب له رابط التقديم لأنه طالبين خبرة و عدد معين فقط..

@ahmed_jalalCS
👍1
Forwarded from اللجنة العلمية CS 22 (Ayham Al-Akhali)
معاني الأخطاء للي شغال api مفيدة 👍
👍1
الفرق بين العمارة الأحادية (Monolithic) والمايكروسيرفيس (Microservices) يكمن في كيفية بناء الأنظمة البرمجية. في العمارة الأحادية، يتم تصميم التطبيق ككتلة واحدة مترابطة، حيث تكون جميع الأجزاء مثل الواجهة الأمامية والخلفية وقاعدة البيانات متصلة مع بعضها بشكل مباشر. هذا النوع مناسب للتطبيقات الصغيرة والمتوسطة لأنه بسيط وسهل في البداية، لكن إذا كبر المشروع يصبح تعديل أو توسيع النظام معقدًا.

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

بالتالي، إذا كان المشروع بسيطًا وصغيرًا، فالعمارة الأحادية تكون خيارًا أفضل. أما إذا كان المشروع كبيرًا ويتطلب توسعًا مستمرًا، فالمايكروسيرفيس هي الحل الأنسب.
👍1
هل دريت إنك تقدر تشتغل بميزة اسمها Source Generators من .NET 5 ومافوق
ذي ميزة أضافتها مايكروسوفت في .NET 5، وتخليك تولد كود أثناء وقت الترجمة (Compile Time) بناءً على الكود اللي كتبته.

فكرة Source Generators إنك تقدر تكتب كود يساعد على تحسين الأداء وتقليل التكرار في وقت التشغيل (Runtime). يعني مثلًا لو عندك كود بيتكرر كثير وتريد تحسن من أداء التطبيق، تقدر تستخدمها عشان تولد كود تلقائي يوفر عليك الجهد.

ذي الميزة مفيدة بشكل كبير في حالات مثل توليد أكواد الـ DTOs أو الـ Mapping Classes، وبدون الحاجة لمكتبات خارجية مثل AutoMapper في بعض السيناريوهات.

دور Source Generators الأساسي هو تقليل التكرار وتوليد كود إضافي في وقت الترجمة. وأيضًا في حالات تحتاج فيها كود ديناميكي بناءً على لوجيك معيّن، فذي الميزة بتساعد تخلي كودك نظيف وتقلل من استخدام if else وأشياء كثيرة غيرها.
في مشاريع التخرج وفي سوق العمل بشكل عام... بينتهي بنا الأمر بقاعده بيانات ضخمة جداً.. وعشان نفعل التقارير بينتهي بنا الأمر في 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 وفي عمليات تغيير على الداتابيز كثير ستكون العمليات التحديث مكلفة على الفيو .
وشكرًا!
👍1