Monthly Archives: شهریور 1397

آموزش دارت: کار با رشته های متنی

به نام دانای بر حق

مقدمه

در این سری آموزش ها قصد داریم syntax زبان برنامه نویسی دارت Dart را با هم یاد بگیریم، برای دنبال کردن سری کلی این آموزش ها و دیدن قست ها اینجا کلیک کنید.

دارت زبان برنامه نویسی flutter می باشد برای نوشتن برنامه های native یعنی با کد محلی برای android و ios هم زمان با طراحی متریالز.

رشته ها در دارت

کار با رشته ها در دارت

رشته یا string در واقع متون ما رو تشکیل میدهند آرایه ای از char کارکتر ها هستند و یکی از کارهای مهم در برنامه نویسی کار کردن با اطلاعات رشته ها هستند در اینجا بخشی از توابع و ویژگی های مورد نظر رو رو بررسی می کنیم.

انواع تعریف رشته در دارت

تعریف با تک و جفت کوتیشن امکان پذیر است و از رشته \ برای گذر و بریده شدن میتوان استفاده کرد.

تعریف به صورت heredoc مثل php در Dart

این نوع تعریف اجازه میدهد از تا بدون مشکل خطوط را جا به جا کنید و رشته چند خطی تعریف کنید.

تعریف رشته به صورت runes

با پیشوند r میتوانید این کار را انجام دهید.

جمع دو رشته یا الحاق دو رشته در Dart

اطلاعات بیشتر

آموزش دارت: حلقه های تکرار و پیمایش

به نام دانای بر حق

مقدمه

در این سری آموزش ها قصد داریم syntax زبان برنامه نویسی دارت Dart را با هم یاد بگیریم، برای دنبال کردن سری کلی این آموزش ها و دیدن قست ها اینجا کلیک کنید.

دارت زبان برنامه نویسی flutter می باشد برای نوشتن برنامه های native یعنی با کد محلی برای android و ios هم زمان با طراحی متریالز.

 

حلقه for در زبان برنامه نویسی دارت

در این نوع حلقه که پر کاربرد ترین حلقه است، مجموعه دستورالعمل ها به تعداد معلوم و مورد نیاز ، تکرار خواهد شد . دقیقا همانند جاواسکریپت و شبیه C :

توضیحات تکمیلی:

این حلقه در هنگام تعریف 3 پارامتر اصلی دارد :

  1. مقدار اولیه متغیر : به وسیله این مقدار ، مقدار اولیه برای شروع شمارنده حلقه تعیین می شود .
  2. عبارت کنترلی : در این قسمت یک عبارت کنترلی مرتبط با شمارنده حلقه تعیین می شود ، که در هر بار اجرای مجدد حلقه ، شرط عبارت کنترل شده و در صورت برقرار بودن شرط ، دستورات حلقه اجرا می شود .
  3. گام افزایش یا کاهش : در این قسمت ، میزانی که متغیر شمارنده حلقه ، در هر بار اجرای دستورات آن افزایش یا کاهش می یابد را تعیین می کنیم .

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

 

به مثال زیر توجه کنید:

حلقه while در زبان برنامه نویسی دارت

در این حالت ، دستورالعمل های حلقه تا زمانی که شرط تعیین شده برای آن درست باشد ، مجددا اجرا خواهد شد .

در این نوع حلقه ابتدا شرط حلقه در مقابل کلمه کلیدی while تعریف می شود . در هر بار اجرای حلقه ، برنامه شرط یا شروط حلقه را چک کرده و در صورت بر قرار بودن آن ، دستورالعمل های حلقه را یکبار اجرا کرده و مجددا به ابتدای حلقه باز می گردد .
در حلقه while نیز می توان از یک متغیر برای کنترل اجرای حلقه استفاده کرد . در صورت استفاده از یک متغیر شمارنده ، باید گام افزایش یا کاهش متغیر در بدنه دستورات حلقه تعریف شود و در صورت عدم استفاده از یک متغیر کنترلی ، باید شرط حلقه در ادامه به نحوی نقض شود ، وگرنه حلقه به صورت بی نهایت ادامه می یابد .
شکل کلی تعریف یک حلقه while به صورت زیر است :

حلقه  do while در دارت

این حلقه کاملا شبیه while بوده با این تفاوت که حداقل یک بار اجرا میشود به کد زیر توجه کنید:

 

پیمایش در زبان برنامه نویسی دارت

for .. in در زبان دارت

برای پیمایش یا به اصطلاح حرکت کردن در یک لیست یا شی object دقیقا مثلا js میتوانید از for .. in استفاده کنید. به ازای خواندن هر یک از اعضا آرایه یا یکی از خواص شی مورد نظر ، یکبار دستورات درون حلقه اجرا خواهد شد .
تعداد دفعات تکرار دستورات حلقه ، برابر با تعداد اعضای آرایه و یا تعداد خواص شی مورد نظر است . در این حلقه معمولا از یک متغیر به عنوان شمارنده یا اندیس آرایه استفاده می شود .

مثال:

 

forEach در دارت

این نوع حلقه برای پیمایش یک آرایه یا همان لیست به کار می آید و زمانی مناسب است که که شما مقدار های شمارنده را نمیدانید و هیچ شباهتی با foreach در php ندارد در واقع چیزی شبیه array_walk در php می باشد که با آن یک تابعی برای اعمال تغییرات روی تک ت اعضای یک لیست میتوانید انجام دهید به مثال ساده زیر توجه کنید:

در بالا f(e) یک تابع برای پرینت اعضا تعریف شده و مثال پیچیده تر زیر نیز می تواند از ابهام این موضوع جدید کاهش دهد

خروج از حلقه و یا ادامه دادن در دارت

دستورات break و continue در C و javascript و یا java معرف حضورتون هستند کار کلی این دو دستور به صورت زیر است:

beark: برای خروج کامل از حلقه در حال اجرا می باشد

break در دارت

 

continue: برای گذشتن از بدنه حلقه در گام جاری می باشد و ادامه دادن از سر حلقه

continue در دارت

 

با تصاویر بالا کاربرد آنها مشخص شد.

اما مثال:

 

هر آنچه دو مورد حلقه ها نیاز بود سعی شد با بیشتر توضیح و کاملترین شکل ممکن مطرح شود

امیدوارم که استفاده کرده باشید.