۵ دلیل که شما را عاشق فلاتر می‌کند

چکیده این مطلب : انتشار : ۱۲ مرداد ۱۳۹۸ بدون نظر 36 بازدید

احتمالا می‌دانید، فلاتر یک راه‌حل برای ایجاد برنامه‌های موبایل
با رابط کاربری زیبا می‌باشد. روش فلاتر برای طراحی ظاهری شبیه برنامه‌های وب است،
بنابراین شما می‌توانید شباهت بسیاری با HTML / CSS پیدا کنید.

در رویداد Google I/O ’17 گوگل، فلاتر – یک کتابخانه جدید متن‌باز برای ایجاد برنامه‌های موبایل معرفی کرد.

احتمالا می‌دانید، فلاتر یک راه‌حل برای ایجاد برنامه‌های موبایل با رابط کاربری زیبا می‌باشد. روش فلاتر برای طراحی ظاهری شبیه برنامه‌های وب است، بنابراین شما می‌توانید شباهت بسیاری با HTML / CSS پیدا کنید.

طبق قولی که گوگل داده بود:

با فلاتر ساختن اپلیکیشن موبایل آسان و سریع است

عالی به نظر می‌رسد، اما در نگاه اول، من در مورد آن چندان مطمئن نبودم. ما بسیاری از پلتفرم‌های مشابه را داریم – Xamarin، PhoneGap، Ionic, React Native و غیره. همه ما می‌دانیم گزینه‌های زیادی وجود دارد و همه آن‌ها مزایا و معایبی دارند. مطمئن نبودم که آیا فلاتر چیز متفاوتی از آن‌ها خواهد بود یا نه. اما من غافلگیر شدم.

فلاتر دارای ویژگی‌های بسیار زیادی است که می‌تواند از ‌نظر توسعه دهنده اندروید بسیار جذاب باشد. در این مقاله، می‌خواهم قسمتی از چیزهایی را که واقعا مرا درگیر کرده، به شما نشان بدهم. پس بیایید شروع کنیم!

چرا فلاتر؟

شاید کنجکاو باشی و از خودت یک سوال بپرسی؛

“چه چیزی در مورد فلاتر نوآورانه است؟ چطور کار می‌کند؟ چه تفاوتی با React Native دارد؟”

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

در یک میان‌بر، فلاتر یک SDK سیار است که به ما اجازه می‌دهد تا اپلیکیشن موبایل را ایجاد کنیم (بنابراین شما می‌توانید یک کد را بنویسید و هم بر روی اندروید و iOS اجرا کنید). شما کد آن را در  زبان برنامه نویسی Dart بنویسید، زبانی که توسط گوگل ساخته شده‌است، که اگر از جاوا استفاده می‌کردید خیلی برای شما آشنا به نظر می‌رسد. به جای پرونده‌های XML، شما یک چیدمان درختی مانند این را ایجاد می‌کنید:


چیدمان درختی

import 'package:flutter/material.dart';

class HelloFlutter extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: "HelloFlutter",
      home: new Scaffold(
        appBar: new AppBar(
          title: new Text("HelloFlutter"),
        ),
        body: new Container(
          child: new RaisedButton(onPressed: _handleOnPressed),
        ),
      ),
    );
  }
}

همانطور که می‌بینید، یک چیدمان از اجزا (widgets) ساخته شده‌است. هسته اصلی MaterialApp (یعنی کل برنامه) است، سپس ما Scaffold (ساختار اصلی چیدمان) را داریم و سپس درون برنامه AppBar (مانند نوار ابزار اندروید) و برخی Containerها به عنوان اجزای بدنه داریم. در داخل بدنه، چیدمان ما – متن‌ها، دکمه‌ها و غیره قرار می گیرد.

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

دلیل اول – بارگزاری فوری (Hot Reload)

با برنامه اولیه شروع می‌کنیم. ما سه دکمه داریم که هر یک از آن‌ها رنگ متن را تغییر می‌دهد:

اکنون، ما از یکی از جالب‌ترین ویژگی‌ها – بارگزاری فوری استفاده خواهیم کرد. این ویژگی به شما این امکان را می‌دهد که بلافاصله پروژه خود را بازسازی کنید، گویی تنها یک صفحه وب است. نگاهی به این اقدام بیندازید:

ما در اینجا چه کاری انجام می دهیم؟  چیزی را در کد تغییر می‌دهیم  (به عنوان مثال متن روی دکمه)، سپس بر “بارگزاری فوری” (در بالای محیط برنامه‌نویسی IntelliJ) کلیک کرده و در عرض چند ثانیه نتیجه را خواهیم دید. چه عالی، نه؟

بارگزاری فوری نه تنها سریع است، بلکه هوشمند است – اگر شما برخی از داده‌ها را قبلا نمایش داده باشید (به عنوان رنگ متن در این مثال)، شما می‌توانید رابط کاربر را در زمان اجرای برنامه تغییر دهید، کاری که در سایرین امکان‌پذیر نیست.

دلیل دوم – مجموعه ای کامل از ویجت ها (Materia Design)

نکته مهم دیگر در مورد فلاتر این است که ما یک کاتالوگ بسیار غنی از قطعات از پیش آماده برای استفاده در رابط کاربری داریم. دو مجموعه از ویجت ها – متریال (برای Android) و Cupertino (برای IOS) وجود دارد. شما می‌توانید هر آنچه که می‌خواهید را انتخاب کنید و به راحتی اجرا کنید. شما دوست دارید FloatingActionButton جدید ایجاد کنید؟ با من همراه باشید:

و بهترین چیز این است که شما می‌توانید هر ویجت را در هر پلتفرم اجرا کنید. اگر برخی از ابزارهای Material Design و یا Cupertino را اجرا کنید، در اندروید و iOS نیز به همان شکل خواهد بود. لازم نیست نگران باشید که موردی در دستگاه‌های مختلف متفاوت باشد.

دلیل سوم – همه چیز ویجت است

همانطور که در تصویر قبلی دیدید، ایجاد رابط کاربری بسیار آسان است. این لطف اصول هسته فلاتر، که در آن همه چیز یک ویجت است. کلاس برنامه شما ویجت (MaterialApp) است، ساختار کلی شما یک ویجت (Scaffold)، و اساسا همه چیز یک ویجت (AppBar، Drawer، SnackBar) است.

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

این مورد همچنین با اصل دیگری مرتبط است – در ترکیب فلاتر ارث‌بری وجود دارد. این به این معنی است که اگر می‌خواهید یک ویجت جدید ایجاد کنید به جای آن که کلاس ویجت را گسترش دهید (همانطور که شما با گسترش برخی از کلاس نمایش در اندروید انجام خواهید داد) به جای آن می‌توانید ویجت جدید را با کمی ویجت‌های کوچک ترکیب‌بندی کنید.

دلیل چهارم – تفاوت قالب در اندروید و آی او اس

معمولا ما می‌خواهیم برنامه اندروید ما متفاوت از یک برنامه iOS باشد. تفاوت‌ها نه تنها در رنگ‌ها، بلکه در ابعاد و سبک آنها وجود دارند. ما می‌توانیم با قالب‌ها به این اتفاق برسیم:

همانطور که می‌بینید، ما رنگ و ارتفاع متفاوتی را برای نوار ابزار (AppBar) قرار می‌دهیم. ما این کار را با استفاده از Theme.of(context).platform  انجام می‌دهیم. پارامتر پلتفرم برای رسیدن به پلتفرم فعلی (اندروید/iOS):


import 'package:flutter/material.dart';

class HelloFlutter extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
        title: "HelloFlutter",
        theme: new ThemeData(
            primaryColor:
                Theme.of(context).platform == TargetPlatform.iOS
                    ? Colors.grey[100]
                    : Colors.blue),
        home: new Scaffold(
          appBar: new AppBar(
            elevation:
                Theme.of(context).platform == TargetPlatform.iOS
                    ? ۰٫۰
                    : ۴٫۰,
            title: new Text(
              "HelloFlutter",
            ),
          ),
          body: new Center(child: new Text("Hello Flutter!")),
        ));
  }
}

دلیل پنجم – پکیج های بسیار بسیار بسیار زیاد

اگرچه فلاتر هنوز در نسخه های اولیه است، اما جامعه آماری واقعا بزرگی دارد. به لطف این فلاتر، از پکیج‌های بسیاری (کتابخانه‌ها، مانند گریدل‌ها در اندروید) پشتیبانی می‌کند. ما پکیجی برای باز کردن تصاویر، ایجاد درخواست‌های HTTP، به اشتراک گذاری محتوا، ذخیره تنظیمات، دسترسی به حسگرها، پیاده‌سازی پایگاه داده آنلاین Firebase و بسیاری از موارد دیگر داریم. البته همه از اندروید و iOS پشتیبانی می‌کنند.

چطور شروع کنیم؟

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

منبع : medium.com

دوستانی که این مطلب را مطالعه کرده اند، از مطالب زیر نیز استقبال کرده اند

۱۳ دلیل برای انتخاب فلاتر

۱۳ دلیلی که شما باید فلاتر را انتخاب کنید.
۱۳ دلیلی که شما باید به سمت دارت روی بیاورید و فلاتر را برای توسعه ی اپلیکیشن بعدی تان انتخاب کنید یا فلاتر را بیاموزید تا اپلیکیشن تولید کنید.

چرا توسعه دهندگان اندروید باید در سال ۲۰۱۹ به فلاتر توجه کنند؟

اندروید و فلاتر هر دو نوزادان گوگل هستند. توسعه نرم‌افزار اندروید در شرکت اندروید که در سال ۲۰۰۵ توسط گوگل خریداری شد آغاز شد. پروژه فلاتر در گوگل آغاز شد و اولین پروژه فلاتر SDK در سال ۲۰۱۷ منتشر شد. مقایسه توسعه اندروید بومی (Native) با توسعه نرم‌افزار فلاتر بسیار جالب است و مشاهده کنید […]

نظرات

برای ارسال نظر لطفا ابتدا وارد شوید

تماس با ما