Pengembangan UI yang cepat dengan Flutter untuk Windows

Ada banyak hal yang bisa dikatakan untuk alat yang memudahkan untuk menargetkan banyak platform dari satu basis kode, mengurangi beban pada pengembang dan meningkatkan jangkauan aplikasi Anda. Microsoft Xamarin adalah contoh yang sangat baik untuk ini, memperluas .NET ke iOS dan Android. Tapi bagaimana dengan arah lain, di mana alat pengembangan seluler yang mapan menambahkan Windows sebagai platform baru?

Itu tidak sering terjadi, tetapi yang mengejutkan, lingkungan pengembangan seluler Flutter Google menambahkan target build baru di Windows, di samping dukungan yang sudah ada untuk Android, iOS, macOS, Linux, dan web. Dengan rilis pengembangan terbaru, Anda sekarang dapat membuat aplikasi Flutter untuk Win32, menggunakan alat kontrol dan desain yang sama untuk mengirimkan kode desktop pada saat yang sama saat Anda membuat aplikasi seluler.

Menargetkan Windows masuk akal bagi Google, karena entri blog rilis mencatat lebih dari separuh pengembang Flutter menggunakan alat pengembangan Windows. Alat UI Flutter adalah kode asli dan karena berfungsi dengan panggilan API Windows standar, Anda dapat menggunakannya dengan kode baru atau yang sudah ada.

Menggunakan Flutter di Windows

Flutter dibuat berdasarkan versi terbaru bahasa Dart Google. Ini adalah bahasa mirip C dengan struktur yang mengingatkan pada JavaScript dan C #. Jika Anda datang dari latar belakang .NET tidak terlalu banyak hal baru untuk dipelajari; konstruksi bahasa akan familiar. Hambatan rendah untuk masuk adalah hal yang baik, karena Anda harus siap untuk memulai pengkodean dengan sangat cepat.

Dukungan Flutter untuk Windows bersifat eksperimental, jadi Anda harus membuat beberapa perubahan pada penginstalan standar dari baris perintah. Pertama, alihkan ke saluran dev, lalu tingkatkan versi untuk memastikan Anda menjalankan build saluran dev terbaru. Terakhir, gunakan alat Flutter baris perintah untuk mengaktifkan dukungan desktop Windows. Setelah selesai, mulai ulang editor yang terbuka. Anda dapat memeriksa apakah dukungan Windows diaktifkan dengan memeriksa perangkat yang terhubung; Jendela akan muncul di sini. Sebaiknya jalankan utilitas dokter Flutter untuk memeriksa apakah semua dependensi yang sesuai telah diinstal, karena ini akan menginstal fitur yang hilang jika diperlukan.

Tidak seperti Flutter versi perangkat seluler, versi desktop memerlukan Visual Studio 2019, dengan alat pengembangan desktop C ++. Anda masih dapat bekerja dalam Visual Studio Code jika Anda memiliki aplikasi Flutter seluler yang ingin Anda bawa ke desktop, tetapi Flutter desktop perlu menggunakan kompiler Windows C ++ untuk membuat aplikasi Windows dengan semua pustaka pendukung yang diperlukan.

Menulis aplikasi Flutter di Windows

Meskipun Anda memerlukan alat C ++ Visual Studio, Anda masih mengedit dan membangun banyak aplikasi desktop Flutter Anda dalam Visual Studio Code dengan plugin Flutter, beralih ke Visual Studio saat Anda perlu mengedit C ++ atau menggunakan Windows SDK. Membuat proyek baru akan secara otomatis menghasilkan perancah yang diperlukan untuk membangun aplikasi desktop Windows bersama dengan versi Android dan iOS default. Anda kemudian dapat mengedit kode aplikasi Anda di file main.dart umum, yang akan dikompilasi menjadi versi yang sesuai pada waktu pembuatan.

Kode Dart umum tetap ada di folder lib. Folder Windows adalah tempat Anda menulis kode khusus platform, menjaganya tetap terpisah dari fungsi lintas platform apa pun. Pendekatan ini memungkinkan Anda untuk mengembangkan investasi yang ada dalam kode Windows dan API menggunakan Saluran Platform Flutter untuk memberikan interoperabilitas antara kode Windows C ++ dan Flutter's Dart.

Alat Visual Studio Code Flutter dan Dart masih memerlukan Android Studio untuk diinstal, karena mereka diperlukan untuk membangun versi Android aplikasi Anda. Jika Anda mengerjakan aplikasi lintas platform, sebaiknya tulis kode Android apa pun di Android Studio, simpan kode Kotlin ke dalam pohon kode Android aplikasi Flutter Anda. Berbagi struktur kode dengan cara ini masuk akal; sementara Anda memiliki pilihan untuk menggunakan Visual Studio Code untuk mengedit kode Windows C ++, Visual Studio IDE lengkap memiliki lebih banyak biaya dan dukungan perpustakaan yang lebih baik, menjadikannya lingkungan pengembangan yang lebih disukai untuk kode yang perlu menggunakan Win32 SDK dan pustaka.

Menggunakan SDK Windows, API, dan pustaka dengan Flutter

Flutter dirancang untuk bekerja di seluruh tumpukan pengembangan dan menawarkan dua rute berbeda untuk bekerja dengan API asli Windows. Yang pertama, saluran platform, menyediakan cara untuk meneruskan pesan dari UI Flutter ke API asli menggunakan plugin platform sebagai pembungkus untuk API. Meskipun ini adalah metode yang disetujui untuk bekerja melintasi batas tumpukan, ini berbasis pesan dan asinkron, jadi tidak cocok untuk semua API Windows.

Atau, Anda dapat menggunakan Antarmuka Fungsi Asing untuk menautkan langsung ke pustaka asli dan menggunakan panggilan API-nya. Pendekatan ini kemungkinan besar menjadi cara terbaik untuk menghadirkan fungsionalitas Windows ke aplikasi Flutter, karena Anda dapat menautkan ke kode yang ada atau baru secara langsung, dengan tautan statis atau dinamis. Kode asli harus memiliki simbol C yang tersedia sehingga kode Flutter Anda dapat menautkannya; kode C ++ apa pun perlu mengekspornya dalam format C melalui externopsi.

Sebagian besar pustaka Windows SDK sudah dikompilasi, jadi Anda perlu menggunakan tautan dinamis untuk membawanya ke aplikasi Flutter Anda. Gunakan DynamicLibrary.openfungsi Flutter untuk menambahkannya ke aplikasi Anda, lalu perlakukan mereka seperti Anda memperlakukan plugin Flutter. Faktanya, tim Flutter sudah mengerjakan plugin Win32 yang akan menyediakan akses ke sebagian besar API Windows, siap digunakan di kode Anda.

Alat untuk pengembangan UI kolaboratif yang cepat

Salah satu keuntungan dari perkakas pengembangan Flutter adalah opsi muat ulang panasnya. Anda dapat membuat salinan kode Anda berjalan dan dilampirkan ke debugger, membuat perubahan pada kode, dan menekan tombol muat ulang panas di terminal Kode Visual Studio untuk memuat ulang aplikasi tanpa mengubah statusnya. Ada opsi restart panas jika Anda lebih suka memulai dengan keadaan baru.

Mampu mengubah UI atau logika bisnis dengan cepat tanpa memulai ulang aplikasi adalah fitur yang sangat berguna untuk Flutter. Pemrograman menjadi lebih interaktif, terutama jika Anda bekerja di samping seorang desainer atau pengguna akhir. Anda dapat menanyakan apa yang berhasil, membuat perubahan yang disarankan dengan cepat, dan mendapatkan tanggapan instan dari mitra pengembangan Anda. Setelah Anda siap untuk menerbitkan dan menerapkan kode Anda, Anda menjalankan build untuk menghasilkan file exe dengan semua DLL dukungan yang sesuai, siap untuk dikemas dengan pilihan penginstal Anda.

Anda juga tidak terbatas pada Win32, karena shell Flutter UWP saat ini sedang dikembangkan (dan telah digunakan untuk aplikasi Store). Hasilnya adalah lapisan UI lintas platform yang fleksibel dan kuat yang akan bekerja dengan kode asli di berbagai platform, yang berskala ke layar PC yang lebih besar, bekerja dengan Windows SDK modern dan lama, dan harus siap untuk bekerja dengan Project Reuni saat diluncurkan.