iOS Digest No. 6 (17 Mei - 30 Mei)


Kurang dari satu minggu tersisa sebelum konferensi Apple WWDC , mari kita lihat apa harapan komunitas pengembang dan peristiwa apa yang telah terjadi di dunia pengembangan iOS selama beberapa minggu terakhir.

Berita industri


  • Menuju "Ours at WWDC": 8 siswa dari Rusia diundang ke konferensi. Mereka akan dapat menghadiri acara secara gratis (ingat, di samping itu, bahwa tiket, penerbangan, dan akomodasi membutuhkan biaya yang nyata, Anda juga perlu berpartisipasi dalam lotere untuk tiket) dan mengambil gambar dengan Tim Cook.
  • Apple mendorong minat publik dan membuat umpan berita pada 3 Juni. Misalnya, iPod Touch diperbarui untuk pertama kalinya dalam empat tahun, sementara desainnya tidak berubah, pada dasarnya hanya prosesor dan harga perangkat yang berubah - versi dengan tubuh merah muda dengan 32GB on board di Rusia dapat dibeli seharga 18.990 rubel.
    Apakah Anda sebagai pengembang seluler harus membuat dukungan iPod Touch untuk aplikasi mereka? Apakah Anda menguji pada perangkat jenis ini? Di akhir artikel adalah survei.
  • MacBook Pro juga mengetahui pembaruan tersebut . Benar, sekali lagi, hanya prosesor yang ditingkatkan, dan sekali lagi (sudah di ketiga!) Mereka mencoba menyelesaikan masalah dengan keyboard.
  • Pengembang, seperti biasa, menunggu pengumuman besar dan perubahan dari konferensi dan membagikannya di jejaring sosial: seseorang sedang menunggu kerangka kerja untuk UI deklaratif, seseorang menggunakan bahasa Swift-like, bukan JavaScriptCore, dan beberapa di Terminal dan Xcode untuk iPad :


    Apa harapan Anda dari WWDC tahun ini? Apa kekurangan pengembang iOS untuk pemrograman yang lebih nyaman? Bagikan rasa sakit di komentar.
    Ngomong-ngomong, Paul Hudson, yang tweetnya diberikan di atas, sangat akrab bagi kami: ia datang ke Moskow tahun lalu ke konferensi Mobius dan berbicara tentang cara menulis kode yang lebih aman menggunakan protokol, generik, dan ekstensi Swift. Sementara itu, kami mengadakan Mobius 2019 Piter minggu lalu - kami akan membagikan detailnya di pos terpisah.

  • Bukan rahasia lagi bahwa beberapa aplikasi menggunakan kemampuan iOS di latar belakang untuk mengirim data tentang perangkat dan pengguna. Sebuah studi dipublikasikan dengan daftar perusahaan yang aplikasinya mengirim data pada malam hari tanpa sepengetahuan pengguna. Dalam komentar, pengguna keamanan menyarankan beralih ke Android.

Berita Pengembangan IOS


  • Untuk penghapusan objek lebih cepat dari CoreData, disarankan untuk menggunakan NSBatchDeleteRequest, tetapi hati-hati dengannya jika aplikasi Anda memiliki entitas dan aturan penghapusan dikonfigurasikan; beberapa jenis objek dihapus; penyimpanan non-SQLite di bawah CoreData digunakan. Jika tidak, Anda bisa mendapatkan artefak menarik di penyimpanan dan macet saat runtime. Lihat Menggunakan NSBatchDeleteRequest untuk menghapus kumpulan dalam Core Data untuk informasi lebih lanjut .
  • Selain CoreData, kami mencari cara untuk menyimpan gambar dengan benar untuk entitas kami (misalnya, pratinjau miniatur): di sebelah atribut lain seperti bidang BinaryData atau pada sistem file secara terpisah dari penyimpanan CoreData.
  • Dalam wawancara teknis, saya sering mendengar dari kandidat bahwa Anda bisa lupa dan menolak untuk menggunakan @autoreleasepool di Swift. Jika aplikasi Anda tiba-tiba membuat objek UIImage atau CoreData dalam satu lingkaran, maka ini adalah potensi kebocoran memori, yang dapat menyebabkan crash aplikasi selama iterasi besar dalam loop. Anda dapat memahami prinsip otorisasi kumpulan setelah membaca artikel yang menggunakan @autoreleasepool di Swift 2019 di https://swiftrocks.com .
  • Salah satu inovasi yang paling berguna di Swift 5.1 adalah kemampuan untuk menemukan perbedaan antara dua koleksi di luar kotak, yang pasti akan lebih nyaman saat memperbarui daftar UITableView agar tidak membebani seluruh tabel atau menulis kode Anda sendiri untuk mencari perubahan antara dua array data. Contoh penggunaan ada di sini .
  • Setelah Anda belajar cara memperbarui daftar data dengan benar tanpa reboot lengkap pada paragraf sebelumnya, Anda harus dapat menampilkan detail pengguna dengan mengklik pada daftar item. Untuk melakukan ini, kami menangani transisi antar layar untuk kasus ketika animasi transisi standar tidak cukup. Serangkaian besar artikel dalam empat bagian akan membicarakan hal ini secara lebih rinci.
  • Banyak pengembang pemula didorong menjauh dengan mempelajari bahasa Swift karena penggunaannya yang terbatas (pengembangan iOS saja). Namun belakangan ini, Swift semakin sering digunakan untuk memecahkan masalah Machine Learning, sebagaimana dibuktikan oleh argumen yang meyakinkan dalam artikel Mengapa Swift Mungkin Menjadi Hal Besar Selanjutnya dalam Pembelajaran Jauh .
  • Juga sulit untuk menetapkan batasan autolayout dengan benar, bagaimana memutuskan cara mana untuk mengubah panah pada diagram kelas UML dalam arsitektur seluler Anda. Untuk memperbaiki ini, kita belajar memecahkan masalah dengan konstanta tanpa me-restart aplikasi .
  • Dan akhirnya: jika Anda telah menerapkan semua fitur dalam aplikasi Anda dan memperbaiki semua bug, perhatikan masalah aksesibilitas, minggu ini ada utas di Twitter tentang topik ini dengan tips praktis bagi mereka yang tertarik.

Source: https://habr.com/ru/post/id454018/


All Articles