حَامِد | tech
404 subscribers
217 photos
47 videos
10 files
251 links
قناة انشر فيها خواطر و نصائح برمجية ، تطورات السوق و تعليقات على مواضيع تقنية
Download Telegram
الي مو فاهم شي
القصة باختصار
python for backend?
naaaaaaaaaah
اكتشفت اني احب الرياضيات
او لازلت احب الرياضيات
👍2
الي يستعمل nestjs
اعطينا تجربتك و ليش اخترتها و شو المييزات
ولا مرة جرّبتها صراحة
Forwarded from هيثم النائب - Haitham alnaeb (Haitham)
تجربة تحويل الباك ايند من php الى NestJs
ضمن أحد المشاريع اللي عملناها مؤخرا

خلفية عن المعطيات:
- مشروع تقني مع أكثر من مئة ألف مستخدم بمجال ال FinTech
- الإصدار الأول (الحالي) من المشروع مبني على خدمتين الأولى لارافل و التانية كود ايجنايتور
- الاصدار التاني تم كتابته ب NestJs TypeScript Monorepo (almost microservices) using kafka, auto generated swagger
- المشروعين تم اختبارهم على نفس سيرفر الاختبار
- المطورين نفسهم اللي كتبوا php كتبوا ال NestJS
- المطورين أول مرة بيكتبوا مشروع نود أو NestJs
- ما عطيت تنبيه للمطورين عن تقارير السونار أثناء العمل، ما تم التركيز على الجودة أولا، كنت ناطر شوف النتيجة بالأول

النتيجة:
- الاصدار الأول 387 ألف سطر، الاصدار التاني 9 آلاف سطر، كود أقل ب 97% !
- الاصدار الأول يحوي أكثر من ألفين مشكلة حساسة، الاصدار الثاني يحوي مشكتلين فقط، يعني تكنكال ديبت أقل ب 99.9%
- سرعة استجابة طلب للسيرفر على الاصدار الأول 85 مل ثانية، على الاصدار الثاني 22 مل ثانية، أسرع بأربع أضعاف (هاد امر معروف بين النود و البي اتش بي)

الخلاصة:
- سهولة التطوير لا تقارن اطلاقا، انضباط عالي بالكود، و رح نبدأ بتعميم هالشي على كل المشاريع الجديدة
- سرعة اداء عالية مباشرة، رح توفر تكاليف تشغيلية كتير و توفر معاناة استخدام مكتبات طرف تالت وطرق لمحاولة تحسين اداء
- استخدام فريمورك صاعد رح يساهم كتير بدعم المشروع بالمستقبل القريب، التعصب لفريمورك معين قد يؤدي لمسح الكود بالكامل بالنهاية (في عالم لهلء مصرين كود اجنايتور!!!)
- مشروع جديد من الصفر اكيد حيكون كود أقل ومشاكل أقل، بس مو بهالنسبة هي، أحد الاسباب المساعدة بمنع المشاكل ان التايب سكربت بتظهر الخطأ أثناء الكتابة وبتجبره يكتب صح، وأيضا فريمورك النيست كونه بدأ حديثا، اختصر كتير أمور داخليا ما في داعي يكتبها المطور كل مرة، مثلا ما في داعي لكتابة تعريف الراوت أو الفاليديشن أو ديبندنسي انجكشن أو ...
- ممكن لمطور الباك ايند اللي بيعرف المفاهيم (معه خبرة 3 سنين) انو يكتسب لغة تانية بدون ما يكون تحدي كبير، أو ممكن الدخول للنيست سهل كونه جافاسكربت

* الصورة من SonarQube
2
جميل
منقول من التعليقات
👍1
من أكتر الحاجات الى ضيعت فيها وقتي موضوع إني اتفرج على فيديوهات وكتب هروبًا من التطبيق العملي.

كتاب عن تعلم أسرار السباحة لا يغني عن النزول في الماء وتخاف من الغرق شوية وهكذا.
1
صح الموديلات حتصير اغلا في السنوات القادمة
لكن لا تتوقع هذا قبل سنتين لثلاث سنوات

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

خلصلي نص الشغل بنص دولار😂
2😁2
اللهم لا سهلَ إلا ما جعلتَه سهلاً، وأنت تجعل الحزنَ إذاشئتَ سهلاً
3
احبابنا مستخدمي codex

عم تحسو بصرف زايد عن اللزوم في التوكينز اخر فترة؟
I miss cringe frontend vs backend memes :)
قديما مكنش في docker كان في xampp

فا حاليا استعمل docker و فكك من القرف
😁7