Barah Taijon

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

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

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

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

خوارزمية الترتيب بالجذر Radix Sort

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

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

كيف تصبح مهندس برمجيات

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

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

الخوارزميات في برمجة الحاسوب Algorithms

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

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

هندسة البرمجيات العكسية Software Reverse Engineering

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

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

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

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

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

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

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

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

أنواع قوائم الانتظار في هياكل البيانات وتطبيقاتها Queue

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

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

هيكلة البيانات بواسطة القائمة المرتبطة Linked List

مفهوم القائمة المرتبطة Linked List:   مثل المصفوفات، فإن القائمة المرتبطة هي بنية بيانات خطية، لكنها تختلف عن المصفوفات بأنه لا يتم تخزين عناصر القائمة المرتبطة في مكان قريب بل يتم الربط بين العناصر باستخدام المؤشرات، والقائمة المرتبطة هي سلسلة من البيانات التي ترتبط ببعضها البعض عبر الروابط، وهذه السلسلة من الروابط تحتوي على عناصر، […]

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

كيفية تمثيل مخطط E-R

يُظهر مخطط (E-R) العلاقة بين مجموعات الكيانات التي تملك مجموعة سمات وتربط بينهم مجموعة من العلاقات، حيث أن "مجموعة الكيانات" في برنامج إدارة قواعد البيانات هي الجدول، والسمة هي سمة أو خاصية لجدول،

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

الخوارزميات الجشعة Greedy algorithms

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

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

نصائح حول كيفية كتابة كود نظيف clean code

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