DevGuide 🇵🇸
10.9K subscribers
2.57K photos
17 videos
127 files
3.54K links
Join our channel for top-notch programming hacks, epic discussions, and brilliant career moves. 🚀

⚡️ Stay connected with me: linktr.ee/AliSamir

📍 To advertise on the channel: https://telega.io/c/the_developer_guide
Download Telegram
كورس ممتاز هيساعدك في التحضير لانترفيو الـ Problem Solving 💯

Neetcode 150 Course - All Coding Interview Questions Solved 🚀


The NeetCode 150 is the most important LeetCode problems you need to master, selected to cover all major algorithmic patterns that top tech companies test for.

https://youtu.be/T0u5nwSA0w0

———

وده شيت فيه مجموعة مسائل لذيذة هتساعدك في عالم الـ Problem Solving

📍 Most Asked Technical Interview Questions:
https://docs.google.com/spreadsheets/d/1hzP8j7matoUiJ15N-RhsL5Dmig8_E3aP/edit
8
الفرق بين Containerization و Virtualization 🔻
.
.
إزاي السيرفرات بتشغل أكتر من تطبيق أو نظام تشغيل في نفس الوقت؟

علشان نجاوب على السؤال ده محتاجين نعرف مصطلحين مهمين في عالم السوفتوير [ Containerization و Virtualization ] ... الاتنين بيعملوا نفس المهمة تقريبًا: تشغيل أكتر من حاجة على نفس الجهاز.

تعال نوضح الفرق بينهم وإمتى تختار كل واحد...

https://www.linkedin.com/posts/dev-alisamir_softwaredevelopment-softwaredeveloper-devabrguide-activity-7292074985139892224-Z3-J
4
📌 Master server-side data fetching in Next.js 15

Avoid race conditions, prevent collisions, and make parallel routes work smoothly.
3
8
3
🔰 Awesome Free APIs for Developers that you should know about
5
البرمجة الوظيفية (Functional Programming) 💯
.
.
البرمجة الوظيفية (Functional Programming) تعتبر نمط من الأنماط البرمجية اللي بتختلف عن النمط التقليدي اللي بنسميه الـ Imperative Programming.

الفكرة الأساسية في البرمجة الوظيفية إنها بتركز على استخدام الدوال (functions) كعنصر أساسي في كتابة الكود، وبتعتمد على فكرة إن الكود يكون واضح وسهل التتبع، بدون ما نغير الـ state أو البيانات بشكل مباشر.

———

📌 إيه اللي بيميز البرمجة الوظيفية؟

في البرمجة الوظيفية، بنستخدم حاجة اسمها pure functions، ودي دوال بتستقبل مدخلات (inputs) وتطلع مخرجات (outputs) من غير ما تأثر على أي حاجة بره الدالة نفسها.

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

كمان في البرمجة الوظيفية بنبعد تمامًا عن فكرة side effects، اللي هي تغيير في البيانات أو الـ state خارج الدالة. وده بيدي الكود ميزة إنه يبقى قابل للتوقع (predictable) وسهل الصيانة.

———

📌 الـ Higher-Order Functions؟

البرمجة الوظيفية بتعتمد بشكل كبير على نوع خاص من الدوال اسمه Higher-Order Functions. الدوال دي بتستقبل دوال تانية كمدخلات أو بتطلع دوال كمخرجات.

مثلًا في JavaScript عندنا دوال زي map, filter, reduce، ودي أمثلة ممتازة على الـ Higher-Order Functions.

الدوال دي بتخليك تقدر تعمل عمليات معقدة على البيانات بطريقة مختصرة ومنظمة، وبدون ما تكتب كود كتير. مثلًا لو عاوز تعدل قيم معينة في Array، بدل ما تستخدم for loop، ممكن تستخدم map واللي بتخليك تقدر تعيد بناء الـ Array بطريقة أسرع وأنضف.

———

📌 الـ Immutable Data

واحدة من المفاهيم الأساسية كمان في البرمجة الوظيفية هي immutable data، يعني البيانات مبتتغيرش. بدل ما نعدل على نفس الـ Array أو الـ Object، بنرجع نسخة جديدة من البيانات بعد التعديل.

ده بيدي الكود أمان أكتر، وبيمنع الأخطاء اللي ممكن تحصل لما البيانات تتغير بطريقة غير متوقعة.

البرمجة الوظيفية بتتطبق في لغات زي Haskell و Elm بشكل كبير، لكن الأفكار دي كمان ممكن تتطبق في لغات زي JavaScript, Python وحتى Java و #C.

———

📌 ليه تستخدم البرمجة الوظيفية؟

- الكود بيكون واضح جدًا وسهل التتبع.

- التقليل من الأخطاء بفضل استخدام الـ pure functions.

- سهولة اختبار الكود.

- دعم الـ parallelism والـ concurrency بشكل أفضل.

———

وفقكم الله لكل خير 🌿
2