Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

ملخص - أمان الـ Null

جزء من قسم Logic & Flow في رحلة C# على Coddy — الدرس 35 من 66.

challenge icon

التحدي

سهل

قم بإنشاء طريقة (method) تسمى SafelyProcessData تأخذ معاملين:

  1. سلسلة نصية name يمكن أن تكون null
  2. عدد صحيح قابل للإلغاء (nullable int) age

يجب أن تقوم الطريقة بما يلي:

  1. التحقق مما إذا كان name هو null أو فارغاً باستخدام أنماط التحقق من القيم الفارغة (null checking) المناسبة
  2. التحقق مما إذا كان age يحتوي على قيمة
  3. إرجاع سلسلة نصية منسقة كما يلي:
    • إذا كان name هو null، فقم بإرجاع "No name provided"
    • إذا كان name فارغاً أو يحتوي على مسافات بيضاء، فقم بإرجاع "Invalid name"
    • إذا كان age هو null، فقم بإرجاع "Name: [name], Age: Unknown"
    • خلاف ذلك، قم بإرجاع "Name: [name], Age: [age]"

تأكد من استخدام تقنيات البرمجة الدفاعية للتعامل مع جميع سيناريوهات null المحتملة!

جرّب بنفسك

using System;

class Program
{
    // قم بتنفيذ طريقة SafelyProcessData هنا
    
    static void Main(string[] args)
    {
        string nameInput = Console.ReadLine();
        string ageInput = Console.ReadLine();
        
        // تعامل مع الحالة التي يكون فيها الإدخال هو السلسلة النصية "null"
        string name = nameInput == "null" ? null : nameInput;
        
        int? age = null;
        if (ageInput != "null")
        {
            age = int.Parse(ageInput);
        }
        
        string result = SafelyProcessData(name, age);
        Console.WriteLine(result);
    }
}

جميع دروس Logic & Flow