أحمد مجدي

Full Stack Software Developer , Geek

مشروع مركز بنك الدم في مستشفى

السلام عليكم انتهينا بفضل من برمجة تطبيق انترنت لـ بنك الدم, كان العمل ممتع جدا مع صديقي أحمد و إبراهيم وخصوصاً انها اول مرة نعمل سوياً, حاولنا ان نجعل التطبيق بسيط وسهل قدر الامكان مع عدم التقليل من المميزات ومراعات الحالات الخاصة والكثير من الاشياء. التطبيق يشمل على عدة مميزات : – امكانية معرفة طلبات

تعرف مراحل الInterview في الشركات كـ Software Engineer مع بعض النصائح والإرشادات

نصائح وارشادات عامة علشان تقدر تخليك تعدي أي انترفيو في شركة كبيرة باذن الله أول مرحلة : مرحلة الفلترة (CV Filtering): حاول تصغير الcv  بتاعتك على قد ماتقدر , علشان لو انت ماليه بيانات وحاجات وخبرات حشو وخلاص وبقا صفحات كثير مش هتفرق مع معاهم ومحدش هيقرأ “No Body Reads” خليه صفحة واحدة فيها الحاجات

مبادئ تصميم البرمجيات كائنية التوجيه OOD

السلام عليكم يوجد عدة مبادئ لتصميم البرمجيات بالطريقة كائنية التوجيه Object Oriented Desing هذه المبادئ تجعل من البرمجيات التي نقوم بكتابتها واضحة اكثر في طريقة عملها وسهلٌ صيانتها وتطويرها بدون إلحاق اي تغيير او ضرر في اساس برامجك. اول خمس مبادئ مجموعة في كلمة SOLID Principles وقد قام ببدء هذه المبادئ Robert Cecil Martin المعروف باسم Uncle Bob.

ماهي Yarn وماذا اضافت

السلام عليكم بالامس اعلنت فيس بوك بالتعاون مع جوجل عن مدير حزم Package Manager جديد يدعى Yarn  فماهو وماذا اضاف وهل نحن في حاجة الى الاستغناء عن npm(Node Package Manager) سنتعرف على هذا سوياً في البداية Yarn ليس شئ جديد كلياً بل هو التطوير الطبيعي لل npm يسير على نفس النمط في تثبيت ال Packages وملف package.json

رأيي في البرمجة لمسابقات حل المشكلات ACM ECPC مقابل الحياة الواقعية

السلام عليكم في الفترة الاخيرة لاحظت ان كثيراً من معارفي اتجهو لطريق حل المشكلات البرمجية وتعلم اجزاء معينة حصراً بدون الالمام باي شئ اخر  فاحببت التكلم والمقارنة بين البرمجة في حياتنا الواقعية vs التحضر لحل المشكلات والمسائل ومسابقتها   ملاحظة: كل ماسأقوله عبارة عن راي شخصي لا أكثير , ليس بالالزام ان يكون مناسب لك

لماذا المصفوفات في لغات البرمجة تبدأ رتبتها من الصفر Zero Based Index

السلام عليكم  سؤال سألته لنفسي كثيراً لماذا المصفوفات تبدأ من الصفر في معظم اللغات البرمجية مثل c/c++ , java , c# , python , js ,etc… لماذا لاتبدأ من واحد كي لايحدث تشتت بين الطول “عدد العناصر” ورتب العناصر  فمثلا لو لدي مصفوفة  أحتاج لاصل لاول عنصر  names[0]  بدلاً من names[1] سنوضح السبب  الامر له علاقة

ماذا بعد تعلمي لغة برمجة و الانتهاء منها

“انا خلصت لغة البرمجة الفلانية اعمل ايه بعد كده “ سؤال يسأله لي الكثير لكن مالجواب ! دعنا نتفق اولاً ان لغة البرمجة لاتنتهي وان ماانتهيت منه هو اساسيات التعامل مع مكتبات اللغة الاساسية , اياً كانت تلك اللغة كل مازادت معرفتك كلما ما أيقنت انك في بحر واسع كل ماتقترب من نهايته تبتعد, على اي حال

Python للمبرمجين

السلام عليكم بصورة سريعة سنتحدث عن لغة بايثون والفروقات بينها وبين اللغات التي لها Syntax يشبه لغة C مثل  c# , java , etc..  –  لغة Python تمتاز بانها strongly and  dynamically typed اي انه يمكن تغير نوع المتغير في وقت ال runtime لكن المتغير يكون له خصائص ونوع حسب مايحتويه. – لا يوجد semi colon “;” في نهاية

كيفية بناء RESTful API باستخدام Node.js و Express.js الجزء الثاني

في المرة السابقة تحدثنا عن كيفية اعداد بيئة العمل وتطرقنا الى جزء بسيط من اعداد الـ API الخاصة بنا. كيفية بناء RESTful API باستخدام Node.js و Express.js الجزء الأول في هذه المرة باذن الله سنكمل مابدأناه. أولاً لتنظيم العمل ننشئ ملف جديد يحتوي على الاعدادات الرئيسية ونسميه “config.js” سيحتوي على رابط قاعدة البيانات و رقم

كيفية بناء RESTful API باستخدام Node.js و Express.js الجزء الأول

السلام عليكم في هذا الشرح بسيط سنتعلم سوياً كيفية عمل RESTful API عن طريق node  و express الAPI اختصار لـ “Application Programming Interface” وهي عبارة عن واجهة برمجية تبنيها ومن ثم تقوم بعمل implementation لها باي لغة او على اي platform تريده. ومعنى RESTful API وهي اختصار لـ “Representational state transfer” وسيلة لنقل البيانات بين السيرفر