Barah Taijon

التقنيةلغات البرمجة

النموذج الحلزوني لتطوير البرمجيات Spiral Model

يعد النموذج الحلزوني أحد أهم نماذج دورة حياة تطوير البرمجيات، إذ يُفضل استخدام هذا النموذج للمشاريع الكبيرة التي تتضمن تحسينات مستمرة. هناك أنشطة محددة يتم إجراؤها في التكرار واحد (حلزوني) حيث يكون المخرجات نموذجًا أوليًا صغيرًا للبرنامج الكبير، ثم يتم تكرار نفس الأنشطة لجميع اللوالب حتى يتم بناء البرنامج بالكامل. ما هو النموذج الحلزوني   […]

التقنيةلغات البرمجة

مرحلة تحليل بناء الجملة في عملية ترجمة الكود Syntax Analysis

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

التقنيةلغات البرمجة

مرحلة إنشاء كود وسيط في عملية ترجمة الكود Intermediate Code Generation

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

التقنيةلغات البرمجة

مخطط التسلسل Sequence Diagram

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

التقنيةلغات البرمجة

خوارزميات التعلم الآلي التي عليك معرفتها

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

التقنيةلغات البرمجة

الفرق بين النسخة الضحلة والنسخة العميقة في البرمجة Shallow vs. Deep Copy

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

التقنيةلغات البرمجة

أسباب لتعلم أنماط التصميم Design patterns

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

التقنيةلغات البرمجة

موقع Dataquest

ما هو موقع Dataquest؟   يقدم موقع (Dataquest) دورات تدريبية في علوم البيانات عبر الإنترنت على مدار (24) أسبوعًا،  ويتم التركيز على تحليل البيانات باستخدام لغتي (R و Python)، إذ يقوم موقع (Dataquest) على استخدام نهج عملي فريد لتعليم علوم البيانات باستخدام الاختبارات ومشاريع كتابة الكود التفاعلية، ويأخذ المنهج الطلاب خطوة بخطوة لأتقان المهارات اللازمة […]

التقنيةلغات البرمجة

كيف ستفيدك البرمجة التنافسية في العمل Competitive Programming

البرمجة التنافسية هي لعبة فكرية تحدث على الإنترنت، أو على شبكة محلية حيث يتعين على المبرمجين البرمجة وفقًا لقيود المحددة، العديد من الشركات الرائدة مثل (Google) و (Facebook) استضافت مسابقات البرمجة، مثل، (Codejam) و (Hackercup)، لكن كيف يمكن لمسابقات البرمجة التنافسية هذه أن تساعدك في الحصول على وظيفة؟

التقنيةألعاب إلكترونيةلغات البرمجة

من هو مطور الألعاب Game Developer؟

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

التقنيةلغات البرمجة

ما هي دورة حياة تطوير البرمجيات SDLC

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

التقنيةلغات البرمجة

أنواع أنظمة التحكم في الإصدارات Version Control System

التحكم في الإصدار هو نظام يسجل التغييرات في ملف أو مجموعة ملفات بمرور الوقت بحيث يمكنك استدعاء إصدارات معينة لاحقًا، حيث يسمح لك بإعادة الملفات إلى حالة سابقة، أو إعادة المشروع بأكمله إلى حالته السابقة، ومقارنة التغييرات بمرور الوقت، ومعرفة من قام آخر مرة بتعديل شيء قد يتسبب في حدوث مشكلة،

التقنيةلغات البرمجة

ما هو الكود النظيف clean code؟

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