Bersama kolega dari komunitas Flutter, kami membuat podcast tentang Flutter. Episode pertama ditayangkan pada 29 Januari 2019. Sejak saat itu, setiap bulan kami mengundang kolega dari dunia Flutter dan bidang TI lainnya: kami membahas berita, peristiwa, nuansa teknis, memberikan saran dari pengalaman pertempuran - secara umum, kami melihat Flutter dari berbagai sudut.
Bagaimana dan mengapa kita melakukan podcast, saya berbicara secara rinci pada vc.ru . Pada artikel ini, saya mengulas episode paling menarik dan populer dari Flutter Dev Podcast.
Saya membuka Flutter dari Android: Saya belajar tentang teknologi baru di sela-sela konferensi dari Zviad Kardava, Hubungan Pengembang dari Google Rusia, yang kemudian menjadi tamu pertama podcast kami. Ide untuk membuat media tentang Flutter muncul karena kami adalah salah satu orang pertama di negara ini yang mulai melakukan sesuatu dengan kerangka kerja ini: ceruknya gratis.
Flutter adalah teknologi pengembangan aplikasi lintas platform untuk iOS, Android, web, dan desktop dari Google.
Saya meluncurkan Flutter Dev Podcast dengan kolega saya Artyom Zaitsev - kami bekerja sama di Surf . Saat itu, kami praktis tidak tahu apa-apa tentang Flutter, dan, bisa dibilang, kami tumbuh besar bersama podcast. Sejalan dengan podcast, Flutter dikembangkan di Surf. Kami sekarang memiliki seluruh departemen Flutter dengan 13 orang . Saya dan saya mengelola repositori SurfGear publik di GitHub , tempat kami memposting segala macam kegunaan untuk pengembangan di Flutter: satu set pustaka, standar, alat.
Terima kasih kepada Google dan secara pribadi kepada Ekaterina Vinnichenko dan Zviad Kardava yang telah mendukung podcast kami dan telah mengundang saya untuk meninjau episode di blog Google.
Rilis Podcast Flutter Dev: Fresh to Early
"Seluruh platform untuk membuat semua jenis orang"
# 19 Yandex.Pro
Gennady Evstratov: "Tujuan globalnya adalah membuat Frankenstein yang sangat besar, di mana persentase Flutter akan tumbuh, tumbuh, berkembang, dan Anda cukup mengambil kode Android dengan spatula kecil, membuangnya, dan meninggalkan aplikasi Flutter saja."
Tim Flutter dari Yandex adalah tamu tetap podcast tersebut. Di edisi awal, mereka membicarakan tentang Yandex.Taxometer - ini, juga masuk ke dalam ulasan kami. Sekarang Yandex.Taxometer telah terlahir kembali menjadi Yandex.Pro. Versi iOS ditulis murni di Flutter, dan versi Android adalah hibrida: versi Flutter murni belum mengejar fungsionalitas versi Android, jadi belum bisa dibuang.
Tamu dari Yandex memberi tahu mengapa dan dalam bentuk apa Flutter menembus ke dalam proyek perusahaan: kerangka kerja sudah digunakan untuk modul individu di Yandex.Lavka, Yandex.Taxi, Yandex.Go. Mereka berbicara tentang apa yang mencegah beralih sepenuhnya ke Flutter saat ini, masalah apa yang terungkap saat bekerja dengan Fish Redux karena penskalaan, dan apa yang perlu dilalui pengembang untuk mengintegrasikan Flutter ke dalam aplikasi asli.
"Saya melakukan banyak hal di tim Flutter, tetapi perhatian utama saya adalah developer eksternal memiliki pengalaman yang baik."
# 17 Flutter Day 2020
Chris Sells: “Anda selalu dapat menulis kode native di aplikasi Anda atau bahkan membuat plugin Anda sendiri. Jika Anda membuat plugin Anda sendiri, dan kami tidak memilikinya, silakan bagikan dengan dunia. Beginilah cara ekosistem Flutter tumbuh. "
Ini adalah episode yang tidak biasa dalam banyak hal: untuk pertama kalinya kami menyelenggarakan sebagian podcast dalam bahasa Inggris dan untuk pertama kalinya kami membuat siaran online di Youtube.
Chris Sells, manajer produk dari Google, datang mengunjungi Flutter Dev Podcast: bersama dengan tim Flutter, dia mengembangkan Flutter. Kami membahas berbagai hal: kemampuan untuk melakukan debug secara bersamaan pada sejumlah besar perangkat dan emulator, dari mana Dash berasal - simbol Flutter, masalah apa yang dimiliki perintah Flutter dalam mode kerja jarak jauh.
Chris berbicara tentang bagaimana keamanan Null akan diimplementasikan dan apa yang paling mempengaruhi arsitektur aplikasi (dan ini bukan pilihan manajemen Negara). Anda akan mengetahui apakah Flutter akan memiliki Jetpack sendiri, mengapa API Refleksi dihapus dari versi awal Dart dan apakah itu akan ditambahkan kembali, apakah mereka akan mendukung objek nilai data. Para presenter juga berdiskusi dengan Chris yang menyusun aplikasi Flutter untuk prosesor Arm di perangkat Apple baru, yang mencegah rilis Flutter versi alfa dengan dukungan untuk membangun aplikasi untuk Windows dan Linux dan apakah Flutter akan memuat kode dinamis.
"Media adalah jenis aktivitas manusia di mana segala sesuatu selalu berjalan salah seperti yang Anda inginkan."
# 16 Meduza
Boris Goryachev : “Saya menemui penolakan yang selalu saya temui dengan pengembang asli. Ketika mereka mendengar sesuatu tentang lintas platform, mereka segera berpose, mereka mengatakan itu menyebalkan, semuanya bekerja dengan buruk, semuanya lambat dan umumnya menyebalkan. Argumen mereka kira-kira seperti ini:
- Bagaimana jika Anda perlu menunjukkan ini, ini, ini?
“Tapi kami tidak harus menunjukkannya.
- Tidak, tapi bagaimana jika harus?
- Sangat tidak mungkin.
- Nah, kinerja buruk!
- Yah, sepertinya tidak.
- Tidak, baik, buruk, di native akan lebih cepat.
Aplikasi Meduza baru ditulis dalam Flutter dari awal. Dalam episode 16 dari Flutter Dev Podcast CTO Meduza, Boris Goryachev menjelaskan mengapa Meduza membutuhkannya. Kami mulai dari awal: kami membahas mengapa konsep seluler pertama kali gagal pada tahun 2014, kami berbicara tentang hubungan yang sulit dengan pengembang asli, dunia pengembangan media yang menakjubkan, permainan dengan font, beban bekerja dengan WebView dan UI yang Didorong oleh Backend. Dan Boris pun menanggapi klaim Artemy Lebedev.
Menceritakan kembali secara mendetail tentang rilis Flutter Dev Podcast bersama Boris Goryachev
"Awalnya saya ingin melakukan sesuatu yang mirip dengan VS Code, tetapi lebih baik."
# 15 Flide - IDE pada Flutter
Andrey Lesnitsky: “Saya memulai sebuah produk untuk diri saya sendiri untuk meningkatkan produktivitas saya. Jika ini meningkatkan produktivitas saya, itu juga dapat meningkatkan produktivitas semua pengembang di ekosistem Flutter. "
Andrey Lesnitsky dari Minsk menulis lingkungan pengembangan di Flutter. Dia terinspirasi oleh Android Studio dan VS Code, dan mencoba memanfaatkan yang terbaik - tetapi ingin menjadikan IDE miliknya sendiri. Mengapa dia memilih Flutter untuk proyeknya: apakah itu tantangan atau ide khusus? Bagaimana produk itu dipahami dan bagaimana hasilnya?
Dalam episode tersebut, Andrey menceritakan bagaimana dia mendapatkan ide ini, apa tantangan utama yang dia hadapi dan bagaimana keadaan proyek hari ini.
“Saya sangat menikmati menjadi sopir taksi. Jika tarifnya lebih tinggi, saya akan melatih kembali "
# 11 Yandex.Taxi
Gennady Evstratov: "Layanan keamanan berkata: 'React Native - hanya melalui mayat mereka.'
Tim Yandex.Taxi membuat "paket perangkat lunak untuk layanan taksi" di Flutter - aplikasi Yandex.Taxometer. Dalam masalah ini, mereka memberi tahu mengapa mereka pertama kali menggergaji proyek di React Native, tetapi kemudian beralih ke Flutter, mengapa karyawan Yandex mengenakan pajak di malam hari dan karena itu aplikasi di Flutter dibuat dua setengah kali lebih cepat daripada di Android. Dan juga tentang hieroglif dalam dokumentasi redux Fish, integrasi Yandex Map Kit, dan paket widgetnya sendiri.
"CI / CD akan melakukan segalanya untuk Anda, meskipun Anda tidak memiliki teknologi Apple"
# 9 CI / CD - Jenkins, Bitrise, Codemagic
Mikhail Tokarev: “Ketika kami berbicara dengan Tim Flutter tentang CI / CD, mereka mengatakan dengan sangat jelas:“ Kami ingin melihat CI, yang bahkan dapat digunakan oleh nenek saya ”. Dengan penyiapan inilah kami mulai membuat Codemagic. "
Bersama dengan CTO Codemagic, kami menemukan alasan mengapa kami membutuhkan CI / CD, pada titik mana menjadi jelas bahwa kami tidak dapat hidup tanpanya, dan build lokal apa yang penuh. Kami membandingkan Jenkins, Bitrise, dan Codemagic dalam semua parameter yang dapat mereka capai: fitur, batasan, stabilitas, penyesuaian, harga. Kami menemukan dari mana Codemagic berasal dan mengapa itu diposisikan persis sebagai CI / CD untuk Flutter, dan bukan untuk semuanya dalam satu baris, apa perbedaannya dari alat lain dan kompensasi apa yang diberikan kepada pengguna jika perakitan jatuh karena kesalahan alat.
"Bekerja pada segala hal dengan layar"
# 7 Segala sesuatu tentang lintas platform
Maxim Salnikov: “Taruhan dari proses kami putus begitu saja, kami tidak membutuhkannya. Ini adalah aplikasi web umum yang dapat Anda gunakan dan instal di perangkat Anda jika Anda mau. "
Maxim Biyanov: “Xamarin telah mendekati kematangan maksimum. Ke keadaan ketika semua masalah utama telah diselesaikan dan pembangunan ekstensif telah dimulai. Ada keripik yang hampir tidak terlihat. Fokusnya sekarang pada iOS asli. "
Alexander Fedorov: “React Native adalah solusi perantara antara native dan web. Native lebih cepat, web lebih lambat. Sesuatu di antaranya adalah React Native. Mungkin nilai tambah terbesar adalah bahwa itu ditulis dalam JS. Ada banyak pengembang JS, proses masuk ke dalam pengembangan sangat cepat. React juga tidak terlalu rumit. "
Artyom Zaitsev:“Perbedaan utama antara Flutter dan React atau Xamarin adalah ia memiliki mesin sendiri di bawah kapnya. Dan dia tidak menggunakan elemen asli, dia hanya menggambar yang sama. "
Roman Yatsyna: “Kotlin Native secara keseluruhan adalah Kotlin yang sama, hanya dibatasi. Saat ini sangat sulit menemukan orang yang mau menulis di Jawa. Banyak orang langsung meninggalkan perusahaan mereka karena tidak ada Kotlin di sana. "
Alexander Efremenkov: “Mari kita mulai dengan fakta bahwa ini adalah C ++. C ++ tidak layak dipelajari jika Anda tidak ingin menggali tentang bagaimana memori dialokasikan, cara kerjanya, dan mencoba mempelajari lebih dalam tentang pekerjaan dengan perangkat keras. "
React Native, Xamarin, PWA, QT, C ++, Kotlin Native, Flutter ... Cross-platform adalah kata yang cukup umum, di belakangnya terdapat banyak teknologi berbeda.
Mengapa mengambil teknologi, ruang lingkup, ambang masuk, pro dan kontra - dalam masalah ini kita membahas kriteria untuk memilih teknologi untuk tumpukan Anda.
"Pengembang seluler datang ke Flutter, melihat asinkron / menunggu dan merasa ngeri."
# 6 Asynchronous
Evgeniy Kot: "Untuk memahami aliran, Anda perlu memahami cara kerja pipa ledeng."
Ada async / await, Future API, Stream API, ada metode Compute, bahkan ada RXDart. Bagaimana memahami dari keragaman ini apa yang harus digunakan dari ini dan apa yang tidak boleh. Apa yang harus dilakukan dengan semua async ini jika Anda berasal dari dunia iOS atau Android. Mengapa isolate seperti pai dari rak, dan bagaimana Flutter menangani operasi asinkron saat Dart berulir tunggal.
"Semua mesin virtual benar-benar terlihat sama"
Dengarkan episode # 5 dari VM Dart
Vyacheslav Egorov: “Anda dapat memulai dengan nama VM Dart - ini sedikit salah. Benar untuk menyebutnya Dart Runtime, karena tidak selalu mewakili mesin virtual. Orang yang membayangkan sebuah mesin virtual, mereka membayangkan bahwa di dalam semacam bytecode dijalankan. Mungkin lebih tepat menyebutnya Dart Runtime. ”
Vyacheslav Egorov, pengembang VM Dart, memberi tahu mengapa Flutter ditulis dalam Dart, apa yang digunakan ulang oleh sihir hitam Hot, apa saja fitur dari Pengumpul Sampah. Tentang kompilasi dari tahun 90-an, hot functions, dan Flutter-web. Bagaimana isolat di Dart terkait dengan multithreading, apa aplikasi Flutter dikompilasi dalam versi rilis, dan apa yang Flutter lakukan rekayasa balik.
Semua Flutter Dev Podcast di Soundcloud