تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۴ Masoud Esmailnejad
برداشتن const از متود سازنده MyAppThemeConfig
جامعه فلاتر ایجاد شده در ۱۹ آبان ۱۴۰۰
<p>سلام خسته نباشید </p><p>اگه به جای تعریف کردن primaryColor توی قسمت بالا اون رو توی قسمت themeData قرار بدیم تا متود سازنده کلاس const بمونه مشکلی ایجاد میکنه؟ یعنی منظورم اینه که راه حل بهینه‌تر اینه؟ یا سره مسئله کلین کد بهتره که کنار بقیه رنگا باشه و const از روی متود سازنده حذف بشه؟</p>
<p>متاسفانه سایت امکان اپلود عکس رو بهم نداد</p><p style="direction: ltr;"><span style="color: rgb(86, 156, 214);">class</span> <span style="color: rgb(78, 201, 176);">MyAppThemeConfig</span> {</p><p style="direction: ltr;">  <span style="color: rgb(106, 153, 85);">// final Color primaryColor = Colors.pink.shade400;</span></p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">primaryTextColor</span>;</p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">secondaryTextColor</span>;</p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">surfaceColor</span>;</p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">backgroundColor</span>;</p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">appBarColor</span>;</p><p style="direction: ltr;">  <span style="color: rgb(86, 156, 214);">const</span> <span style="color: rgb(78, 201, 176);">MyAppThemeConfig</span>(</p><p style="direction: ltr;">      {<span style="color: rgb(86, 156, 214);">required</span> <span style="color: rgb(86, 156, 214);">this</span>.<span style="color: rgb(156, 220, 254);">primaryTextColor</span>,</p><p style="direction: ltr;">      <span style="color: rgb(86, 156, 214);">required</span> <span style="color: rgb(86, 156, 214);">this</span>.<span style="color: rgb(156, 220, 254);">secondaryTextColor</span>,</p><p style="direction: ltr;">      <span style="color: rgb(86, 156, 214);">required</span> <span style="color: rgb(86, 156, 214);">this</span>.<span style="color: rgb(156, 220, 254);">surfaceColor</span>,</p><p style="direction: ltr;">      <span style="color: rgb(86, 156, 214);">required</span> <span style="color: rgb(86, 156, 214);">this</span>.<span style="color: rgb(156, 220, 254);">backgroundColor</span>,</p><p style="direction: ltr;">      <span style="color: rgb(86, 156, 214);">required</span> <span style="color: rgb(86, 156, 214);">this</span>.<span style="color: rgb(156, 220, 254);">appBarColor</span>});</p><p style="direction: ltr;">  <span style="color: rgb(78, 201, 176);">ThemeData</span> <span style="color: rgb(220, 220, 170);">getTheme</span>() {</p><p style="direction: ltr;">    <span style="color: rgb(86, 156, 214);">final</span> <span style="color: rgb(78, 201, 176);">Color</span> <span style="color: rgb(156, 220, 254);">primaryColor</span> = <span style="color: rgb(78, 201, 176);">Colors</span>.<span style="color: rgb(156, 220, 254);">pink</span>.<span style="color: rgb(156, 220, 254);">shade400</span>;</p><p style="direction: ltr;">    <span style="color: rgb(197, 134, 192);">return</span> <span style="color: rgb(78, 201, 176);">ThemeData</span>(</p><p style="direction: ltr;">        <span style="color: rgb(156, 220, 254);">primaryColor</span>: <span style="color: rgb(156, 220, 254);">primaryColor</span>,</p>
Masoud Esmailnejad ۱۹ آبان ۱۴۰۰، ۱۲:۲۶
<p>از نظر منطقی وقتی که ما داخل بدنه کلاس تعریف کنیم و نمونه از اون کلاس بگیریم یک بار اینیشیالایز میشه ولی وقتی داخل getTheme قرار بدیم هر بار که این متد صدا زده میشه متغیر هم دوباره مقداردهی میشه و خب این از نظر پرفورمنسی خوب نیست</p>
متین عفتی ۲۵ آبان ۱۴۰۰، ۲۰:۴۲
<p>خوب اگه داخل بدنه قرار بدیم باید const متود سازنده رو برداریم پرفورمنسش بیشتر میاد پایین اگه ویدئو رو دیده باشی استاد شاهینی بالا تعریف کرد و کانست رو برداشت</p>
Masoud Esmailnejad ۲۶ آبان ۱۴۰۰، ۱۰:۴۴

سلام مسعود عزیز برای اینکه ما از shade استفاده کردیم نمیشه از نوع کانست باشه و بهتره که کنار بقیه رنگها باشه

بهترین پاسخ
حامد روشنی ۲۴ آذر ۱۴۰۰، ۱۰:۴۶