Mohcin Space

Description
{فَأَمَّا الزَّبَدُ فَيَذْهَبُ جُفَاءً ۖ وَأَمَّا مَا يَنفَعُ النَّاسَ فَيَمْكُثُ فِي الْأَرْضِ} [الرعد: 17]

خواطر في الدين و الدنيا و هندسة البرمجيات في محاولة لإصلاح نفسي ولعلني اجعل لنفسي أثرا في إصلاح الاخرين.. على قلتهم، لعلنا نلقى الله بهذا.
We recommend to visit

قناة احمد علي على تيليجرام ( شروحات تقنية ، تطبيقات ، ‏أفلام ومسلسلات ، خلفيات ، و المزيد )

Last updated 3 months, 4 weeks ago

يرمز تيليجرام إلى الحريّة والخصوصيّة ويحوي العديد من المزايا سهلة الاستخدام.

Last updated 5 months ago

- بوت الإعلانات: ? @FEFBOT -

- هناك طرق يجب ان تسلكها بمفردك لا اصدقاء، لا عائلة، ولا حتى شريك، فقط انت.

My Tragedy Lies With Those Things That Happen in One Second And Remain

- @NNEEN // ?: للأعلانات المدفوعة -

Last updated 5 months, 3 weeks ago

4 months, 2 weeks ago

السلام عليكم و رحمة الله.

مفاهيم تطوير البرمجيات وأساسيات البرمجة عموما مهمة جدا (قد ابدو لك انني اكرر شيء بديهيا..)، ففضلا، لا تتعلمها فقط لاجتياز الاختبارات أو المقابلات ولكن للمنفعة العامة في مسيرتك المهنية على المدى البعيد.

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

4 months, 2 weeks ago

مقال متعوب عليه قليلا، يوضح الفرق بين asynchronous و synchronous في مجال البرمجة عموما. المقال بسيط بالبساطة التي احاول بها فهم الاشياء، لذلك احاول ان يكون ما انشر بسيطا او ابسط.. لو في حد عنده ملاحظات مرحبا بها. الرابط: https://mohcinbounouara.com/synchronous…

4 months, 2 weeks ago

اعذرونا لو اننا نخطئ في اشياء حينما ننشر.. و الله لانني انشر و انا اخشى النشر..

لم اتصدر للنشر الا بعد سنوات، حتى بلغت ال 30 من العمر.. و انشر ما اتعلم و انشر اخطاءا وقعت فيها لعلها تنفع اخرين او تصحح مسارهم.

فاعتذر عن اخطاء ربما تكون في المقاطع و المنشورات.

دعواتكم لنا :)

6 months, 4 weeks ago

مقطع حول مسألة سد الفجوات التقنية في مجال هندسة البرمجيات.

*في كل المقطع اقول "ثغرة عوض فجوة" ههه فارحموا ضعفنا و خوفنا في اول مقطع.

بارك الله لكم وفيكم

7 months ago

في ال Backend Engineering، فهم مفهومي (Synchronous) و (Asynchronous) يُعتبر مهما جدا.. شخصيًا، واجهت لبسًا كبيرًا في هذا المفهوم، ورغم أنني لم أصل إلى درجة التعمق الكامل فيه، إلا أنني سأشارك ما تعلمته لعله ينفع.

الخلاصة:
هناك مفهومان أساسيان:
- الأول (Synchronous) يمثل طريقة تقليدية لعمل request معينة وفي نفس الوقت يشكل مشكلة.
- الثاني (Asynchronous) هو الحل الذي أتى لمعالجة المشكلة الأولى

التحليل قادم..

--- Synchronous ---
يعني أن المرسل يقوم بإرسال طلب (Request) وينتظر ردًا فوريًا قبل أن يُكمل أي مهمة أخرى. في هذه الحالة يقوم ال CPU بوقف جميع العمليات الأخرى حتى يتم تنفيذ الطلب، ثم يسمى في العمل بعد ذلك.

--- مثال واقعي---:

تطبيق يطلب منك إدخال اسمك ليُظهر لك رسالة "مرحبًا (اسمك)".

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

---المشكلة---:
هذا الأسلوب يجعل التطبيق غير قادر على التعامل مع مهام متعددة في نفس الوقت.. خصوصا في حالة استخدام الإنترنت.. قد يتسبب ذلك في بطء شديد أو حتى توقف البرنامج إذا تأخر ال input او ال response فب اعطاء output معينة.

---Asynchronous---
يعني أن التطبيق يستطيع معالجة طلبات اخرى دون انتظار الرد الفوري، مما يسمح له بأداء مهام أخرى بالتوازي.

---الحل---:
عند طلب إدخال اسمك في نفس مثال التطبيق السابق، يمكن للتطبيق:
- تجهيز UI في الخلفية.
- تخزين الاسم في قاعدة البيانات.
- تنفيذ مهام أخرى أثناء انتظار عرض الرسالة: "مرحبًا (اسمك)".

---مثال واقعي آخر---:
عند إرسال ايمايل، فإنك لا تنتظر الرد الفوري، بل تواصل أداء مهامك الأخرى، فب انتظار الرد على ايمايلك.

---كيف يعمل ال Asynchronous؟
يتم استخدام ما يُعرف بـ Threads لتنفيذ مهام متعددة في وقت واحد.
- على سبيل المثال، يمكن للتطبيق إرسال طلب إلى ال server وانتظار الرد في خلفية البرنامج، بينما يواصل معالجة واجهة المستخدم أو تنفيذ مهام أخرى..

فهم هذين المفهومين يساعد بشكل كبير في التعامل مع ال request/response model، مما يؤدي إلى:
- تحسين أداء التطبيقات
- زيادة كفاءتهه في التعامل مع عدد كبير من الطلبات أو المهام المتزامنة.
- تقديم تجربة مستخدم أفضل في التطبيقات الحديثة
- جعلك مطوى برمجيات افضل.

## لو أفادك المقال انشره و ادعو لنا بالمغفرة و الصحة و العلم النافع والعمل الصالح، لا حاجة لذكري اسمي في نشره ?

#BackendEngineering #Backend #برمجة #تعلم_مستمر #تعلم

7 months ago

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

هذا تذكير لي ولأي مبرمج سيقرأ هاته الكلمات

بارك الله لنا و لكم.

#تعلم_مستمر #تعلم #هندسة_البرمجيات

7 months, 1 week ago

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

علما ان لدي تجربة اكثر من عام في هذه المجموعة الصغيرة، و قناة صغيرة ايضا على يوتيوب، لكن المشاركات كانت كتابية و تسجلات صوتية فقط!

بارك الله في كل من يشاركنا في هذه المجموعة.

7 months, 1 week ago

في هندسة البرمجيات ستقع في مسألة الفشل الكثير في تحقيق الاهداف..

لا تَعد كل مرة لكتابة الاهداف و تحديد الدورات و المصادر الدراسية من اول و جديد..

تعلم ان تقوم بتعديل الاهداف و الطرق المتبعة للوصول الى الاهداف المحددة سابقا على الطريق..

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

ولا تلتفت كثيرا، فكثرة الالتفات تبطئ المسير.

اللهم علمنا و انفعنا بما علمتنا.

#خاطرة #تعلم_مستمر #تعلم #هندسة_البرمجيات

7 months, 1 week ago

ال refactoring تعني قطعا ان تقوم بعمل تحسينات على كود شغال سابقا.

أيضا:

- اعادة هيكلة كود ما تعني ان طريقة كتابة الكود سيتم تحسينها، لكن دون تغيير الوظيفة التي يؤديها.

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

- و يمكن بدأ تتمة اعادة الهيكلة في مهمة اخرى..

اللهم علمنا و انفعنا بما علمتنا.

#softwaredevelopment #software_engineering_concepts #refactoring #coding

7 months, 1 week ago

من بين الأشياء التي ربما عطلتني في ميسرتي في هندسة البرمجية شيئا ما -رغم انني لا اهتم بهذا التأخر، و لا اقارن نفسي باحد، رغم انني و صلت لهذا بمجهود جبااار جدااا.. بعض فضل الله علي- هي إتباع tutorials معينة لتعلم شيء جديد في البرمجة.. هذا جعلني فقط هاضما للذاك الدرس/الدورة التعليمي(ة).. لا متعاملا مع المشاكل ومحاولا حلها..

- قم باختيار موضوع معين لبناء تطبيق بسيط حوله، باستخدام تقنيات تريد تعلمها او تريد الغوص فيها اكثر.

- حاول ان تتعلم فيها بدون اتباع دورة معينة (يمكنك البدأ بالبحث عبر الانترنيت..)

- حاول البحث و الغوص في مئات المشكلات التي ستواجهك خلال رحلة ايام التعلم هاته.

- قم بالإنتهاء من بناء التطبيق البسيط بقدر ما تستطيع.

في نهاية كل هذا تأكد انك لن تكون نفس الشخص الذي بدأت مسار لغة البرمجة تلك او tool معينة.. ستكون افضل.

#software #تعلم_مستمر #تعلم #learning #problem_solving

We recommend to visit

قناة احمد علي على تيليجرام ( شروحات تقنية ، تطبيقات ، ‏أفلام ومسلسلات ، خلفيات ، و المزيد )

Last updated 3 months, 4 weeks ago

يرمز تيليجرام إلى الحريّة والخصوصيّة ويحوي العديد من المزايا سهلة الاستخدام.

Last updated 5 months ago

- بوت الإعلانات: ? @FEFBOT -

- هناك طرق يجب ان تسلكها بمفردك لا اصدقاء، لا عائلة، ولا حتى شريك، فقط انت.

My Tragedy Lies With Those Things That Happen in One Second And Remain

- @NNEEN // ?: للأعلانات المدفوعة -

Last updated 5 months, 3 weeks ago