
Pada tahun 2018, App Store dan Google Play berusia 10 tahun. Selama dekade ini, beberapa aplikasi, mulai dari startup kecil, telah tumbuh menjadi proyek raksasa - dan seiring dengan cara mereka mengatasi banyak transformasi, mengisi banyak kerucut dan belajar banyak pelajaran.
Kami membuka video Mobius 2018 Moscow, dan menerbitkan 10 teratas di Habré (menurut peringkat pemirsa). Dan di beberapa dari mereka, pembicara yang bekerja di perusahaan besar hanya menggambarkan perubahan yang terkait dengan pertumbuhan. Ada topik lain juga: misalnya, apakah Anda sering turun ke level codec dan soket dalam hal video?
Laporan dalam daftar diberi peringkat dengan urutan yang meningkat - sehingga pemirsa yang paling dicintai berada di bagian paling akhir teks. Dan bagi mereka yang tertarik dan tidak termasuk dalam sepuluh laporan teratas, kami juga memberikan
tautan ke daftar putar.
Monorepo: perjalanan kembali. Sejarah modularisasi di Badoo
Platform:
iOSPembicara:
Anton SchukinPresentasi laporanDi tempat ke-10 - hanya "kisah pertumbuhan dan pengalaman yang menyertainya." Di badoo
Mereka telah terlibat dalam pengembangan iOS selama sembilan tahun, dan selama ini tidak hanya perusahaan, tetapi seluruh industri telah berubah (sulit untuk dibayangkan, tetapi begitu manusia ada tanpa CocoaPods).
Tidak mengherankan bahwa pendekatan terhadap struktur repositori dan proyek-proyek di Badoo juga berubah secara signifikan, dan ini bukan gerakan linier dari titik A ke titik B - mulai dari satu repositori, Anda akhirnya dapat kembali ke sana, tetapi pada tingkat yang berbeda. Apa rutenya, dan apa alasan untuk perubahan dalam setiap kasus?
Bagaimana cara menyimpan informasi di aplikasi Android dan tidak menembak diri sendiri
Platform:
AndroidPembicara:
Dmitry VasilievPresentasi laporanTampaknya tugas caching (termasuk di Android) bukanlah hal baru - tetapi tidak menjadi kurang relevan dari ini, dan kesalahan di dalamnya tidak berhenti membuat, sehingga laporan tetap berguna. Yah, bukan tanpa alasan salah satu dari dua masalah utama ilmu komputer adalah caching!
Jenis caching yang ditampilkan dalam laporan:
- Cache malas
- Cache yang disinkronkan
- Tembolok tembusan
- Cache LRU.
Arsitektur seluler dalam tim besar
Platform:
Android / iOSPembicara:
Alexander MikhailovPresentasi laporanUber mungkin adalah contoh paling terkenal dari "tim ponsel besar" di dunia, ratusan pengembang telah menjadi buah bibir. Tidak mengherankan, perusahaan dihadapkan dengan kesulitan yang tidak disentuh tim kecil. Pada saat yang sama, dia, seperti Badoo, datang ke pengembangan seluler sebagai startup, sehingga jalan menuju keadaan saat ini panjang dan berliku. Apa tepatnya, kesulitan apa yang Anda hadapi, dan bagaimana Anda menghadapinya?
Jumlah manfaat praktis yang dapat Anda peroleh dari laporan, sebagian berkorelasi dengan ukuran tim Anda - jika Anda bekerja dalam jumlah kecil, ini mungkin tidak berguna dalam tugas langsung Anda. Tapi bagaimanapun juga, menarik apa yang dimiliki para raksasa di sana!
Pendekatan arsitektur untuk penanganan kesalahan
Platform:
Android / iOSPembicara:
Dmitry MikhailovPresentasi laporanSiapa yang ingin berurusan dengan penanganan kesalahan? Saya ingin membuat kunci ramping dari sistem baru, dan tidak mengacaukan kasus-kasus di mana terjadi kesalahan. Akibatnya, topik penting sering kali tetap tidak diperhatikan.
Tetapi laporan ini, menggabungkannya dengan masalah arsitektur, dapat membuat kita melihat masalah dengan cara yang baru: untuk menangani kesalahan dengan benar, kita hanya perlu membangun sistem yang seimbang yang sesuai dengan masing-masing lapisan.
Cara memasak MVI yang dilakukan dengan baik untuk Android
Platform:
AndroidPembicara:
Sergey RyabovPresentasi laporanDari laporan tersebut, di mana judul arsitekturnya, seseorang dapat mengharapkan diagram UML yang solid. Itu dia: ada banyak kode spesifik pada slide. Sedemikian rupa sehingga beberapa pemirsa bahkan mengeluh - untuk melihat begitu banyak orang dalam deretan hidup itu sulit. Tetapi ketika menonton video, ada tombol jeda, sehingga Anda dapat menggunakan "MVI yang digoreng dengan baik" di bagian-bagian dan menikmati, daripada tersedak.
Kotlin Puzzlers vol. 2
Platform:
AndroidPembicara:
Anton KeksApa yang terjadi jika di Kotlin Anda mencoba meneruskan nilai -2_147_483_648.inc () ke parameter Int? Mengapa Anton menunjukkan kasus-kasus di mana Kotlin tidak berperilaku dengan cara yang jelas, dan menyarankan terlebih dahulu menebak pilihan yang tepat, dan kemudian menjelaskan apa yang terjadi.
Ini adalah laporan keduanya tentang perilaku bahasa yang tidak jelas, dan untuk kedua laporan ini kami membuat versi teks tentang Habré - jadi di sini Anda tidak hanya dapat melihat, tetapi membaca:
Streaming dan mainkan video di atas soket dan codec kosong
Platform:
Android / iOSPembicara:
Alexander Tobol dan Ivan GrigorievKonsumsi konten video dalam OK sangat besar, dan dengan munculnya OK Live, streaming ditambahkan ke dalamnya. Tidak mengherankan bahwa dalam pengembangan ponsel mereka mendekati isu-isu yang relevan lebih dalam daripada “mengambil pemain standar dan mengeluarkannya”, dan dalam laporan mereka berbagi keahlian mereka. Bagaimana teknologi HLS Apple lebih rendah daripada DASH? Apa tiga prioritas dalam streaming yang tidak dapat dicapai pada saat yang sama, dan yang mendukung WebRTC? Kapan sebaiknya melakukan sendiri bukan solusi standar?
Laporan ini dibagi menjadi dua bagian, pada transmisi sederhana dengan pemutaran (ketika pengguna hanya mengonsumsi video) dan pada streaming seluler (tempat pengguna membuat sendiri siaran langsung) - dan jika yang kedua tidak relevan bagi Anda, sebaiknya tonton setidaknya yang pertama.
Kompiler Dalvik. ART. Dan segala sesuatu di antaranya
Platform:
AndroidPembicara:
Jonathan LevinSeseorang mengingat Jonathan dengan keynote show, tetapi alih-alih penampilan berkostum, dia naik lebih dalam: apa D8 dan R8, mengapa itu diperlukan, dan bagaimana dengan bagian dalam Android yang perlu Anda ketahui untuk memahami hal ini? Dan ternyata keseimbangan yang baik serius dan mempesona: topiknya cukup serius untuk dirinya sendiri, tetapi berkat Jonathan semuanya tidak berubah menjadi kuliah yang monoton, tetapi disajikan dengan sangat hidup.
Tidak seperti Kotlin Puzzlers, kami tidak mendekripsi laporan ini, tetapi Jonathan sendiri membuat
posting blog di jejaknya - jadi di sini, jika Anda lebih nyaman membaca, ada opsi seperti itu.
Ekstrim pengujian: trik dari sudut-sudut gelap antarmuka seluler
Platform:
Android / iOSPembicara:
Vitaliy FridmanJika pengguna menghabiskan rata-rata 169 menit per hari dalam aplikasi seluler dan 11 menit di peramban seluler, apa kesimpulannya bagi perusahaan tertentu? "Aplikasi ini 15 kali lebih penting daripada situs seluler, fokuslah pada itu." Tetapi jika Anda perhatikan dengan seksama, ternyata hampir semua dari 169 menit ini pengguna jatuh pada beberapa aplikasi favorit - dan semua jenis facebook menetap di sana, sangat sulit untuk bersaing dengan mereka. Dan dalam hal ini, penjajaran kekuatan menjadi kurang jelas.
Ini adalah salah satu fakta aneh yang disuarakan oleh Vitaly Friedman. Tidak seperti laporan dengan banyak kode, ada keynote di mana mereka tidak mengajarkan spesifik - tetapi mereka melaporkan banyak hal umum yang menarik yang membantu untuk memahami spesifik mana yang umumnya lebih baik untuk diterapkan.
Android dibangun di Lyft
Platform:
AndroidPembicara:
Artyom ZinnatullinAkhirnya, pemimpin peringkat. Jumlah modul dalam aplikasi Android Lyft melebihi 800, yang memengaruhi perakitan. Kemudian seseorang mungkin berpikir "jika kita tidak mendapatkan ini dalam hidup, lalu mengapa kita harus mendengarkannya" - tetapi perkiraan audiens menunjukkan bahwa laporan itu menarik bukan untuk para raksasa, tetapi untuk semua orang.
Antara lain, laporan itu mengatakan "Bazel adalah masa depan," dan pada saat itu tampaknya sangat berani. Tapi ini berita terbaru: dalam
dokumentasi Android Q, mereka melihat contoh konfigurasi Bazel. Tampaknya masa depan akan datang, dan laporan itu sekarang layak untuk dilihat untuk mempersiapkannya.
Seperti yang Anda lihat, ada banyak hal menarik di Mobius Desember. Jika Anda ingin laporan seperti itu, tetapi juga dengan kesempatan untuk secara pribadi bertanya kepada pembicara, harap dicatat bahwa Mobius berikutnya akan diadakan di St. Petersburg pada 22-23 Mei , dan situs tersebut sudah memiliki deskripsi sebagian besar laporan. Harga tiket saat ini berlaku hingga akhir Maret, kemudian harganya akan naik.