<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های هادی نوروزی</title><link>https://virgool.ir/feed/@hadinorouzi</link><description></description><language>fa</language><pubDate>2026-11-12 13:07:31</pubDate><image><url>https://files.virgool.ir/upload/users/49292/avatar/Bkl5Hd.png</url><title>هادی نوروزی</title><link>https://virgool.ir/@hadinorouzi</link></image><item><title>قراردادهای زبان Dart</title><link>https://virgool.ir/flutter-community/قراردادهای-زبان-dart-v34qkd3qkqrv</link><description>در هر زبان برنامه نویسی قرارداد هایی وجود داره که برگرفته از لایبرری های استاندار خود اون زبان هست و رعایت آن ها در تیم ها باعث فهم بهتر کد برای دیگران و یکپارچگی میشود.به اون Convention یک زبان و یا به طور کلی تر که در جاهای دیگر مثل طراحی استفاده میشود  Style Guide گفته میشه.در دارت برای نام گذاری از سه حالت استفاده میشود:1. UpperCamelCase2. lowerCamelCase3. lowercase_with_underscoresکلاس ها ٬ enum ها ٬ typedef ها و نوع پارامترهای توابع باید UpperCamelCase باشند.class HttpRequest {}&#xA;typedef Camel = ...همینطور در extension ها که در نسخه ۲.۷ اضافه شده از UpperCamelCase استفاده میشه.extension MyFancyList&lt;T&gt; on List&lt;T&gt; { ... }نام لایبرری ها ٬ پکیج ها ٬ پوشه ها و فایل های سورس کد رو lowercase_with_underscores بنویسیم.library peg_parser;                 // library name&#xA;import &#39;file_system.dart&#39;;           // imports&#xA;my_main_file.dart                    // source files&#xA;widget_test.dart                     // test filesمتغیر های کلاس ها (properties) ٬ متغیرها ٬ پارامترهای توابع و حتی ثوابت (constants) var item;                      // variables&#xA;HttpRequest httpRequest;        &#xA;void align(bool clearItems) {  // function names&#xA;}از _ (underscore) قبل از نام ٬ فقط برای مواقعی استفاده کنید که نمیخواهید به متغیر خارج از scope خود دسترسی داشته باشید.var _name;    //فقط در این فایل قابل دسترسی است&#xA;&#xA;class Foo {&#xA;  String _name;   //فقط در این فایل قابل دسترسی است&#xA;}در import ها باید ترتیب به شکل زیر رعایت شود:در بالاترین جا library قرار میگیره و بعد از اون لایبرری های استاندارد Dart ٬ بعد از اون پکیج های خارجی و بعد فایل هایی که مسیر نسبی (relative path) دارند.و در آخر هم به صورت الفبایی مرتب شده باشند.library peg_parser;&#xA;&#xA;import &#39;dart:async&#39;;&#xA;import &#39;dart:html&#39;;&#xA;&#xA;import &#39;package:bar/bar.dart&#39;;&#xA;import &#39;package:foo/foo.dart&#39;;&#xA;&#xA;import &#39;util.dart&#39;;&#xA;import &#39;src/error.dart&#39;;&#xA;import &#39;src/foo_bar.dart&#39;;به همراه sdk دارت ابزارهایی هم نصب میشن که یکی از اون ها dartfmt هستش.که براساس استاندارد هایی که دارد فایل شما را فرمت میکند و فضا های خالی  اضافی را حذف میکند.در ترمینال: $ dartfmt main.dartدر vscode:در تنظیمات format رو سرچ کرده و گزینه Format On Save را فعال کرده.وقتی که در فایل های خود در vscode ٬ ctrl + s را بزنید کد شما فرمت می شود.در Android Studio و Intellij:دوبار shift رو که بزنید صفحه بالا ظاهر میشه و گزینه ای که آبی شده رو بزنید کد شما فرمت میشه.منبع: https://dart.dev/guides/language/effective-dart/style</description><category>هادی نوروزی</category><author>هادی نوروزی</author><pubDate>Sun, 07 Jun 2020 20:24:33 +0430</pubDate></item></channel></rss>