آیا فلوتر واقعاً یک چارچوب توسعه برنامه است؟

نگاه انتقادی
در حالی که برای اولین بار سعی می کنید ، سوال فوق در ذهن من افزایش یافت. بعد از انجام تحقیقاتی از من جواب این سوال را پیدا کردم. این پست به سادگی نظر من و تحقیق در مورد نحوه عملکرد آن است. بگذارید آن را به وضوح ذکر کنم ، من یک نفرت از فلاتر نیستم. من عاشق فناوری هستم و معماری آن است اما باید بدانید که آیا مانند یک چارچوب توسعه برنامه کار می کند یا خیر.
ارائه دهنده
برای کسانی که از سایه بان ها می دانستند و کار می کنند و از کجا استفاده می شود ، شما به راحتی نظر من را خواهید گرفت زیرا فلوتر برای هر قسمت از UI از سایه بان استفاده می کند. بشر اما چرا؟ من یک لحظه WTF وقتی این را کشف کردم
برای کسانی که در مورد سایه بان ها نمی دانند ، بگذارید به زبان ساده برای شما توضیح دهم. سایه بان ها برنامه ای هستند که به زبان C نوشته شده است که نحوه نقاشی یا ترسیم در فرم پیکسل را در صفحه نمایش می دهد. آنها در درجه اول در توسعه بازی استفاده می شوند. هر پلت فرم Android و iOS می دانستند که چگونه می توانند متن را در صفحه یا هر عنصر در صفحه بکشند زیرا به شکلی برای انجام انواع عملیات اساسی مانند ارائه متن ، دکمه و غیره ایجاد شده است. اما در Flutter ، ما یک لایه اضافی اضافه می کنیم که این کار را انجام می دهد.
سایه بان ها برای ترسیم عناصر پیچیده و سفارشی در بازی ها معرفی شدند زیرا بازی های ویدیویی به عناصر سفارشی احتیاج دارند. سکوی همه چیز را در آن داشت. ارائه عناصر اصلی در سطح سیستم عامل از پیش تعریف شده بود اما Flutter همه آن چیزها را نادیده می گیرد و لایه اضافی را اضافه می کند که این مواد نقاشی را مجدداً مورد استفاده قرار می دهد. آنها این کار را برای اضافه کردن انیمیشن های سفارشی انجام دادند. من کاملاً این کار را می کنم اما هنوز هم آنها می توانستند این کار را فقط برای عناصر با انیمیشن انجام دهند. در عوض آنها این کار را برای همه عناصر حتی به عناصر اساسی مانند متن انجام دادند.
حال به این موضوع فکر کنید ، چرا ما باید کدی را که شامل نحوه نقاشی یک متن در صفحه است ، ارسال کنیم؟ این حاوی سایه بان هایی است که نسبت به سکوهای بومی کندتر است. سایه بان ها هرگز نمی توانند به ارائه سکو نزدیک شوند. اینها برخی را اضافه می کنند چرب کدی که اندازه و عملکرد برنامه ما را نفخ می کند. هم بدترین فضا و هم پیچیدگی زمان را دارد. مزیت این رویکرد تجربه بهتر توسعه دهنده است. چرا نیاز به فداکاری فضا و زمان فقط برای بهتر DX دارید؟ Kotlin Multiplatform (kmp) با تدوین بومی و DX بهتر ، مشکل مشابهی را حل می کند. پس چرا فلاتر؟
من یک نفرت انگیز نیستم. اما من این رویکرد را برای ساخت برنامه ها دوست ندارم. به نظر می رسد موتور بازی بدون فیزیک است. تنها تفاوت بین موتور پروانه در Flutter و Game Engine فیزیک است. به عبارت دیگر ، پروانه موتور بازی بدون فیزیک است. چرا جهنمی برای توسعه برنامه به موتور بازی نیاز داریم؟
پایان
اگر زبان من را کمی مهم پیدا کردید ، متاسفم زیرا این پست به این روش نوشته شده است. در اینجا افکار من در مورد Flutter ، باید به عنوان موتور توسعه بازی ساخته شود. من فکر می کنم Krafton ، Inc این حقیقت را پیدا کرد و آنها بازی خود را با آن توسعه دادند. نتیجه گیری نهایی من این است که Flutter Framework باید به جای چارچوب توسعه برنامه ، به عنوان چارچوب توسعه بازی متمرکز شود. این مکانیزم کار و DX مناسب برای توسعه بازی های موبایل به جای توسعه برنامه است. امیدوارم که خوب بفهمید