پرش به محتوا

کاربرد کلمه‌ی Required در زبان دارت

    در زبان دارت، کلمه‌ی required به عنوان یک مدیفایر (modifier) برای پارامترهای تابع یا constructor استفاده می‌شود. با استفاده از این مدیفایر، شما می‌توانید تضمین کنید که پارامترهای موردنیاز برای فراخوانی تابع یا constructor وارد شده‌اند و در غیر این صورت، خطایی به شکل MissingRequiredParamterException نمایش داده می‌شود.

    به عنوان مثال، فرض کنید شما یک تابع به نام printName دارید که یک پارامتر از نوع String به نام name دریافت می‌کند. برای اطمینان از این که پارامتر name به درستی ارسال شده است، می‌توانید از کلمه‌ی required برای آن استفاده کنید. به شکل زیر:

    void printName({required String name}) {
      print('Hello $name');
    }
    

    در کد بالا، پارامتر name با استفاده از {} به صورت نام‌گذاری شده تعریف شده است و با استفاده از کلمه‌ی required، تضمین شده است که این پارامتر برای فراخوانی تابع لازم است و در غیر این صورت، خطایی پرتاب می‌شود.

    با استفاده از کلمه‌ی required، شما می‌توانید از پارامترهای اضافی در تابع‌ها و constructorها جلوگیری کنید و در عین حال، اطمینان حاصل کنید که پارامترهای موردنیاز برای فراخوانی تابع وارد شده‌اند.

    علاوه بر استفاده از کلمه‌ی required برای پارامترهای تابع و constructor، در زبان دارت می‌توانید از آن برای فیلدهای یک کلاس نیز استفاده کنید. با استفاده از کلمه‌ی required برای فیلدهای یک کلاس، می‌توانید تضمین کنید که این فیلدها همواره مقداری دارند و در غیر این صورت، خطایی پرتاب می‌شود.

    به عنوان مثال، فرض کنید شما یک کلاس به نام Person دارید که دارای دو فیلد firstName و lastName است. برای این که اطمینان حاصل کنید که هر دو فیلد همیشه مقداری دارند، می‌توانید از کلمه‌ی required برای آن‌ها استفاده کنید. به شکل زیر:

    class Person {
      final String firstName;
      final String lastName;
      
      Person({required this.firstName, required this.lastName});
    }
    

    در کد بالا، دو فیلد firstName و lastName با استفاده از کلمه‌ی final تعریف شده‌اند و با استفاده از کلمه‌ی required، تضمین شده است که هر دو فیلد برای ساخت شیء از کلاس Person لازم هستند و در غیر این صورت، خطایی پرتاب می‌شود.

    با استفاده از کلمه‌ی required برای فیلدهای یک کلاس، شما می‌توانید از ایجاد شی‌های نامناسب جلوگیری کنید و اطمینان حاصل کنید که همه‌ی فیلدهای موردنیاز برای ساخت یک شیء از کلاس وارد شده‌اند.

    همچنین، در زبان دارت می‌توانید از کلمه‌ی required برای بازگشتی‌های تابع نیز استفاده کنید. با استفاده از کلمه‌ی required برای بازگشتی یک تابع، می‌توانید تضمین کنید که تابع به هر حالتی یک مقدار برمی‌گرداند و در غیر این صورت، خطایی پرتاب می‌شود.

    به عنوان مثال، فرض کنید شما یک تابع به نام findPerson دارید که یک لیست از اشخاص و یک نام به عنوان ورودی دریافت می‌کند و یک شیء از نوع Person را با نام مشخص شده برمی‌گرداند. با استفاده از کلمه‌ی required برای بازگشتی این تابع، می‌توانید تضمین کنید که تابع همواره یک شیء از نوع Person برمی‌گرداند و در غیر این صورت، خطایی پرتاب می‌شود. به شکل زیر:

    Person findPerson(List<Person> people, String name) {
      for (var person in people) {
        if (person.name == name) {
          return person;
        }
      }
      throw ArgumentError('Person not found');
    }
    

    در کد بالا، تابع findPerson یک لیست از اشخاص و یک نام به عنوان ورودی دریافت می‌کند و به دنبال یافتن شخص با نام مشخص شده است. با استفاده از کلمه‌ی required برای بازگشتی این تابع، تضمین شده است که همواره یک شیء از نوع Person برای خروجی تابع وجود دارد و در غیر این صورت، خطایی نمایش داده می‌شود.

    با استفاده از کلمه‌ی required برای بازگشتی تابع، شما می‌توانید از بازگشتی‌های نامناسب جلوگیری کنید و اطمینان حاصل کنید که همواره یک مقدار به عنوان خروجی تابع برگشت داده می‌شود.

    5/5 - ( 1 امتیاز )

    دیدگاه شما نگاه ما رو عوض میکنه !

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

    پشتیبانی آنلاین