برنامه نویسی

شروع با Flutter – انجمن DEV

توسعه اپلیکیشن موبایل می تواند یک کار چالش برانگیز باشد، به خصوص زمانی که چندین پلتفرم را با زبان ها و ابزارهای برنامه نویسی مختلف هدف قرار دهید. هدف Flutter ساده کردن این فرآیند با ارائه یک پایگاه کد واحد است که می تواند در هر دو برنامه اندروید و iOS کامپایل شود و زمان و تلاش مورد نیاز برای توسعه و نگهداری برنامه شما را کاهش دهد.

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

فلاتر چیست؟

Flutter یک کیت توسعه نرم افزار UI (SDK) منبع باز است که توسط Google ایجاد شده است. برای ساخت برنامه های کاربردی با کارایی بالا، جذاب بصری و بومی برای پلتفرم های موبایل، وب و دسکتاپ استفاده می شود. Flutter از زبان برنامه نویسی دارت استفاده می کند که هم برای برنامه های سمت مشتری و هم برای برنامه های سمت سرور طراحی شده است.

مزایای فلاتر

فلاتر در سال های اخیر به دلیل مزایای بی شمارش محبوبیت زیادی پیدا کرده است. این چارچوب بارگذاری مجدد داغ را ارائه می دهد و به توسعه دهندگان این امکان را می دهد که تغییرات را بلافاصله مشاهده کنند. همچنین از یک پایگاه کد واحد برای چندین پلتفرم استفاده می کند که زمان و هزینه های توسعه را کاهش می دهد. علاوه بر این، ویجت‌ها، انیمیشن‌ها و اجزای رابط کاربری (UI) Flutter را می‌توان برای مطابقت با هر طرح و برندی سفارشی کرد.

از موارد برای فلاتر استفاده کنید

فلاتر در برنامه های مختلفی استفاده می شود، از اپلیکیشن های ساده موبایل گرفته تا اپلیکیشن های دسکتاپ پیچیده. در صنایعی مانند امور مالی، بهداشت و درمان، آموزش و تجارت الکترونیکی محبوب است. برخی از برنامه های معروفی که با استفاده از Flutter ساخته شده اند عبارتند از Alibaba، Reflectly و Hamilton Musical.

راه اندازی محیط توسعه

قبل از شروع ساخت برنامه های Flutter، باید محیط توسعه خود را راه اندازی کنید. این شامل نصب Flutter SDK، یک محیط توسعه یکپارچه (IDE) و پیکربندی متغیرهای محیط شما است.

نصب فلاتر SDK

برای شروع توسعه با Flutter، Flutter SDK باید نصب شود. این را می توان از وب سایت Flutter برای Windows، macOS یا Linux بارگیری کرد. Flutter همچنین به نصب Android SDK و Xcode (برای توسعه iOS) نیاز دارد.

در اینجا مثالی از نحوه دانلود و نصب Flutter در سیستم macOS آورده شده است:

  • Flutter SDK را از وب سایت Flutter دانلود کنید.
  • فایل دانلود شده را در یک پوشه استخراج کنید، به عنوان مثال /Users/yourusername/flutter.
  • با اجرای این دستور در ترمینال، دایرکتوری Flutter bin را به متغیر محیطی PATH خود اضافه کنید:
export PATH="$PATH:/Users/yourusername/flutter/bin"
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

در اینجا مثالی از نحوه دانلود و نصب Flutter در سیستم ویندوز آورده شده است

  • ابتدا آخرین نسخه Flutter SDK برای ویندوز را از وب سایت رسمی Flutter دانلود کنید.
  • فایل دانلود شده را در دایرکتوری مورد نظر خود استخراج کنید. به عنوان مثال، شما می توانید آن را استخراج کنید C:\src\flutter.
  • Flutter SDK را با افزودن خط زیر به مسیر سیستم خود اضافه کنید Path متغیر محیطی: **C:\src\flutter\bin**

    این به شما امکان می دهد تا اجرا کنید flutter از هر کجای سیستم خود فرمان دهید.

نصب یک IDE (به عنوان مثال VSCode)

از هر محیط توسعه یکپارچه (IDE) می توان برای ساخت برنامه های Flutter استفاده کرد، اما VSCode محبوب ترین است. VSCode از افزونه‌های Dart و Flutter پشتیبانی می‌کند و کدنویسی، اشکال‌زدایی و آزمایش برنامه‌ها را آسان‌تر می‌کند.

در اینجا مثالی از نحوه نصب VSCode و پسوندهای Dart و Flutter آورده شده است:

  • VSCode را از وب سایت VSCode دانلود و نصب کنید.
  • VSCode را باز کنید و به پنل Extensions در سمت چپ بروید.
  • پسوندهای “Dart” و “Flutter” را جستجو کرده و آنها را نصب کنید.

پیکربندی محیط فلاتر

پس از نصب Flutter SDK و یک IDE، پیکربندی متغیرهای محیطی آنها در مرحله بعدی قرار می گیرد. این به IDE اجازه می دهد تا به Flutter SDK و ابزارهای مرتبط دسترسی پیدا کند.

در اینجا مثالی از نحوه پیکربندی محیط Flutter خود در سیستم macOS آورده شده است:

  • ترمینال خود را باز کنید و این دستور را اجرا کنید:
code ~/.bash_profile

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • خطوط زیر را به انتهای فایل اضافه کنید:
export PATH="$PATH:/Users/yourusername/flutter/bin"
export ANDROID_HOME=/Users/yourusername/Library/Android/sdk

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • فایل را ذخیره کنید و آن را ببندید.

در اینجا مثالی از نحوه پیکربندی محیط Flutter در سیستم ویندوز آورده شده است:

  • باز کن Environment Variables گفتگو با کلیک راست بر روی This PC و انتخاب Properties. سپس، بر روی کلیک کنید Advanced system settings در سمت چپ صفحه نمایش کلیک کنید روی Environment Variables دکمه در Advanced برگه زیر User variables بخش، روی آن کلیک کنید New برای اضافه کردن یک متغیر محیطی جدید
  • وارد FLUTTER_HOME به عنوان نام متغیر و مسیر دایرکتوری Flutter SDK به عنوان مقدار متغیر. به عنوان مثال، اگر Flutter SDK را استخراج کرده باشید C:\src\flutter، وارد می شدی C:\src\flutter به عنوان ارزش
  • در بخش «متغیرهای سیستم»، به پایین بروید و متغیر «مسیر» را پیدا کنید. برای تغییر متغیر روی “ویرایش” کلیک کنید.
  • را کلیک کنید New و وارد شوید %FLUTTER_HOME%\bin به عنوان مسیر جدید
  • کلیک OK برای ذخیره تغییرات

تایید نصب

تأیید نصب Flutter را می توان با اجرای آن انجام داد flutter doctorدستور در ترمینال این دستور هرگونه وابستگی یا مشکل پیکربندی گم شده را بررسی می کند.

در اینجا مثالی از نحوه اجرای آن آورده شده است flutter doctor دستور:

ترمینال خود را باز کنید و این دستور را اجرا کنید:

flutter doctor
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

خروجی باید چیزی شبیه به این باشد:

[✓] Flutter (Channel stable, 2.10.0, on macOS 11.1 20C69 darwin-arm, locale en-US)
    • Flutter version 2.10.0 at /Users/username/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5f2d227 (10 days ago), 2022-02-11 13:12:15 -0800
    • Engine revision 3f8bd2f (10 days ago), 2022-02-11 11:10:57 -0800
    • Dart version 2.16.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/username/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7387471)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 13.2.1, Build version 13C100
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7387471)

[✓] VS Code (version 1.64.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.30.1

[✓] Connected device (2 available)
    • iPhone 13 (mobile) • 192.168.1.10 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-15-0 (simulator)
    • Chrome (web)        • chrome        • web-javascript • Google Chrome 98.0.4758.102

• No issues found!
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

این خروجی نشان می دهد که Flutter به همراه ابزارهای لازم توسعه اندروید و iOS بر روی یک سیستم macOS نصب شده و به درستی کار می کند. همچنین نشان می دهد که توسعه دهنده اندروید استودیو، کد ویژوال استودیو و یک شبیه ساز/شبیه ساز به سیستم خود متصل است.

ایجاد یک اپلیکیشن Flutter ساده

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

ایجاد یک پروژه فلاتر جدید

برای ایجاد یک پروژه Flutter جدید، دستور زیر را در ترمینال خود اجرا کنید:

flutter create myapp
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

این دستور یک پروژه Flutter جدید به نام ایجاد می کند myappدر فهرست فعلی شما این پروژه شامل تمام فایل‌ها و پوشه‌های لازم برای شروع ساخت اپلیکیشن شماست.

درک ساختار فایل

بیایید نگاهی به ساختار فایل یک پروژه فلاتر بیندازیم.

myapp/
  android/
  ios/
  lib/
    main.dart
  test/
  pubspec.yaml
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  • android/ و ios/: این پوشه ها به ترتیب حاوی کدهای مخصوص پلتفرم اندروید و iOS هستند. این فایل ها به ندرت نیاز به اصلاح دارند.
  • lib/: این پوشه حاوی کد Dart برای برنامه شما است. را main.dart فایل نقطه ورود برنامه شما است.
  • test/: این پوشه حاوی فایل های آزمایشی برای برنامه شما است.
  • pubspec.yaml: این فایل وابستگی های اپلیکیشن شما را تعریف می کند.

اجرای برنامه بر روی شبیه ساز یا دستگاه فیزیکی

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

flutter run
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

این دستور کد Flutter را کامپایل می کند و آن را در دستگاه شما مستقر می کند. می توانید برنامه را در حال اجرا در دستگاه خود مشاهده کنید.

اینجاست myapp مثال نمایش متن “Hello, World!” روی صفحه نمایش:


import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'MyApp',
      home: Scaffold(
        appBar: AppBar(
          title: Text('MyApp'),
        ),
        body: Center(
          child: Text('Hello, World!'),
        ),
      ),
    );
  }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

قطعه کد بالا یک برنامه Flutter ساده را راه‌اندازی می‌کند که پیام متنی مرکزی را نشان می‌دهد که می‌گوید Hello, World!.

در اینجا آنچه که کد با جزئیات بیشتر انجام می دهد آورده شده است:

  • خط اول واردات material بسته، که اجزای رابط کاربری مانند دکمه‌ها، فیلدهای متنی و نمادها را برای برنامه ما فراهم می‌کند.
  • را main() تابع نقطه ورود برنامه است. را فرا می خواند runApp() تابع با یک نمونه از MyApp کلاس به عنوان یک استدلال این برنامه را راه اندازی می کند و UI را روی صفحه نمایش می دهد.
  • را MyApp کلاس را گسترش می دهد StatelessWidget class، به این معنی که رابط کاربری برنامه در طول زمان تغییر نخواهد کرد. را build() روش از MyApp برمی گرداند a MaterialApp ویجت، که ریشه برنامه ما است.
  • را MaterialApp ویجت دارای چندین ویژگی از جمله title ویژگی، که عنوان برنامه را تعیین می کند. در این حالت عنوان را روی «MyApp» قرار می دهیم.
  • را home دارایی از MaterialApp صفحه اصلی برنامه ما را مشخص می کند که a Scaffold ویجت را Scaffold ویجت یک ساختار اساسی برای برنامه ما ارائه می دهد و دارای چندین ویژگی از جمله appBar ویژگی، که نوار برنامه را در بالای صفحه مشخص می کند.
  • را appBar دارایی از Scaffold نوار برنامه را مشخص می کند، که نواری در بالای صفحه است که عنوان برنامه را نمایش می دهد. در این حالت، عنوان نوار برنامه را روی آن قرار می دهیم MyApp.
  • را body دارایی از Scaffold محتوای اصلی برنامه ما را مشخص می کند. در این مورد از a استفاده می کنیم Center ویجت به مرکز a Text ویجتی که متن “Hello, World!” را نمایش می دهد.

این کد ساختار اصلی یک برنامه Flutter را تنظیم می کند و نحوه استفاده از برخی از اجزای اصلی UI را نشان می دهد. در زیر تصویری از نحوه ظاهر برنامه در دستگاه/شبیه ساز شما آمده است.

نتیجه

Flutter یک انتخاب عالی برای ساخت اپلیکیشن های با کارایی بالا، جذاب بصری و بومی برای پلتفرم های موبایل، وب و دسکتاپ است. Flutter با مزایای متعدد خود، از جمله بارگذاری مجدد داغ، یک پایگاه کد واحد برای چندین پلتفرم، و ویجت های قابل تنظیم و اجزای رابط کاربری، به سرعت در میان توسعه دهندگان محبوبیت پیدا می کند. با دنبال کردن مراحل ذکر شده در این مقاله، می توانید محیط توسعه خود را راه اندازی کنید و از امروز شروع به ساخت برنامه Flutter خود کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

همچنین ببینید
بستن
دکمه بازگشت به بالا