دروس البرمجة

دروس برمجة عملية بأمثلة واضحة وأفضل الممارسات لبايثون وC++ وجافاسكربت وغيرها. طوّر مهاراتك في التصميم والاختبار والأداء.

تكلفة تطوير واجهات API المخصصة: ما الذي تدفع مقابله

من يقدّر تكلفة تطوير واجهات API المخصصة انطلاقاً من عدد نقاط النهاية سيكون مخطئاً، وبمعامل ثلاثة عادةً. نقاط النهاية هي الجزء الأرخص. اثنتا عشرة منها تقرأ وتكتب بيانات تملكها أصلاً هي عمل بعد ظهر واحد لمطوّر خلفي كفء. ما يكلف المال هو كل ما يحوّل تلك النقاط إلى شيء تبني عليه شركة أخرى أعمالها: مصادقة تنجو من مراجعة...

خدمات تحديث COBOL: كيف تختار المورّد المناسب

شراء خدمات تحديث COBOL ليس كشراء أي نوع آخر من أعمال البرمجيات. فالنظام المعني يعمل منذ ثلاثين أو أربعين سنة، ولا أحد من الموظفين الحاليين يفهمه بالكامل، وعواقب الخطأ تُقاس بإخفاقات في التقارير التنظيمية لا بمراحل تسليم فائتة. وفي الوقت نفسه، تَعِد كل العروض على مكتبك بالنتيجة ذاتها بأسعار متباينة بشدة. يوضّح هذا...

توظيف مطوّر C++‎: الأسعار والتخصصات والتقييم

يصل قرار توظيف مطوّر C++‎ عادةً ومعه مشكلة محددة. شيء يجب أن يكون سريعاً، أو يجب أن يعمل على عتاد، أو يجب أن يتصل بمكتبة لا تُشحن إلا بواجهة أصلية. وما يلي ذلك عملية توظيف تعامل C++‎ بوصفها مهارة واحدة، وذلك الافتراض هو مصدر معظم النتائج المخيبة. C++‎ ليست وظيفة واحدة. فمبرمج محركات الألعاب اللامع قد يكون غير منتج...

تكامل واجهات الطرف الثالث: التكاليف وأنماط الفشل

تكامل واجهات الطرف الثالث هو العمل الأكثر تقليلاً لتقديره باستمرار في البرمجيات التجارية. الوثائق تُقرأ بوضوح، والمزوّد ينشر مكتبة عميل، وأحدهم يقول أسبوعان. وبعد ستة أسابيع لا يزال الفريق يتجادل حول ما ينبغي أن يحدث حين يصل webhook مرتين لطلب جرى استرداده أصلاً. الفجوة ليست قلة كفاءة. بل أن الجزء المثير في أي تكامل...

توظيف مطوّر Qt: المهارات والأسعار ومزالق الترخيص

الشركات التي تحتاج إلى توظيف مطوّر Qt تبني عادةً شيئاً يجب أن يعمل على جهاز لا في متصفح: لوحة أجهزة، أو أداة تشخيص، أو تطبيق تحكم لعتاد لا يدعمه أحد غيرها. مجموعة المرشحين جزء صغير من حجم سوق الويب، والمفردات مختلفة، والاختصارات المعتادة في التوظيف لا تنجح. فالموظِّف الذي يرشّح على «C++» سيسلّمك أشخاصاً لم يكتبوا سطر...

أدوات ترحيل الحاسبات المركزية: ما ينجح وما يفشل

يبدأ كل ترحيل لحاسب مركزي ببحث أحدهم عن أدوات ترحيل الحاسبات المركزية، وكل عرض تقديمي يتبع ذلك يبدو مقنعاً بشكل لافت. تدخل بضعة آلاف من أسطر COBOL، وتخرج Java مقروءة، وتنجح مجموعة الاختبارات، ويَعِد العرض بأتمتة بنسبة سبعين أو ثمانين بالمئة. العرض صادق عادةً. وهو أيضاً يُشغَّل عادةً على شيفرة لا تشبه شيفرتك إطلاقاً....

تحديث البرمجيات القديمة: إعادة الكتابة أم إعادة الهيكلة؟

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

تقليل زمن استجابة نماذج LLM: التخزين المؤقت واستراتيجيات الحافة

يُعدّ تقليل زمن استجابة نماذج LLM أحد أكثر التحديات أهمية للمهندسين الذين يبنون تطبيقات ذكاء اصطناعي سريعة الاستجابة. وبينما تواصل نماذج اللغة الكبيرة (LLMs) تنامي قدراتها، فإن توليدها رمزًا تلو الآخر قد يخلق اختناقات مُحبِطة للمستخدمين النهائيين، كما تؤدي أوقات الانتظار الطويلة مباشرةً إلى انخفاض التفاعل وهجر...

تطبيقات سطح المكتب متعددة المنصات مع Qt وQML

بناء تطبيق سطح مكتب واحد يعمل بشكل أصلي على Windows وmacOS وLinux من قاعدة شيفرة واحدة هو بالضبط ما صُمم Qt من أجله. في عام 2026، يظل Qt واحدًا من أقوى الخيارات لبناء تطبيقات سطح المكتب متعددة المنصات والبرمجيات المضمّنة، خصوصًا حيث يهم الأداء والإحساس الأصلي وقابلية الصيانة طويلة الأمد. يشرح هذا الدليل كيف يتعامل Qt...

دليل الترحيل من Qt 5 إلى Qt 6 لعام 2026

يُعد Qt 6 إصدارًا رئيسيًا، وترحيل تطبيق Qt 5 حقيقي إليه هو أكثر من مجرد إعادة تجميع. فقد تمت هيكلة إطار العمل في وحدات، وتحوّل نظام البناء نحو CMake، وأُزيلت أو استُبدلت بعض واجهات برمجة التطبيقات، وانتقلت وحدات إلى أماكن أخرى. لا شيء من ذلك مستحيلاً، لكن الترحيل الناجح من Qt 5 إلى Qt 6 يُخطَّط له، ولا يحدث بالصدفة....