diskusi.tech (beta) Community

loading...

Tanya Kodenol: iOS Engineering

mimindeeptech profile image Mimin Deep Tech ・3 min read

Dalam pembuatan aplikasi, kita perlu tau bahwa ternyata membuat aplikasi di sistem operasi yang berbeda membutuhkan skill yang berbeda pula. Untuk itu, bagi kita yang ingin mendalami bidang iOS Engineering perlu meluangkan waktu tersendiri untuk mempelajari sistem operasi ini, di samping kemampuan coding yang sudah kita punya.

Pada tanggal 5 Agustus 2021, Deep Tech berkesempatan untuk tanya jawab soal iOS Engineering bersama Hisma Mulya, Principal Engineer Kata.ai. Berikut rangkumannya.

Deep Tech Foundation (@deeptech_id)
Seperti yang mimin udah janjiin, sekarang mimin mengundang mas @hismamaz - Sr. Software Engineer dari Kata.ai untuk ngobrol-ngobrol soal iOS engineering. Kalian bisa tanya apa aja ke mas Mamaz ya. Jangan lupa pake #KodeNol setiap ngetweet pertanyaan. Yuk mari kita mulai Tanya #KodeNol. Selagi nunggu, mimin mau nanya ni mas @hismamaz, kalo mau jadi iOS engineer harus punya skill dasar apa aja? #KodeNol

A: Basic programming dan struktur data penting untuk dikuasai tentunya, untuk memrogram di platform iOS ini memakai Swift, mengetahui dasar-dasar object oriented programming (OOP) juga diperlukan.

Jika belum bisa memrogram di programming language tertentu, bisa coba nyemplung langsung mencoba Swift, dasar2 nya ada di sini: https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html

kash (@prakashdivyy)
Mas Mamaz, kalau semisalnya pengen develop iOS tapi nggak punya macbook atau iPhone bagaimana ya?

A: Kalau ga punya Macbook, bisa hackintosh sebenernya, memakai PC yang diinstall MacOS, tetapi tidak disarankan.

Kalau tidak punya iPhone sebenernya masih bisa, karena Apple menyediakan simulator, akan tetapi jika aplikasinya menggunakan fitur spesifik hardware, seperti kamera, sensor gerak, tetap mesti memiliki iPhone untuk mendevelop app tersebut.

Q: Apa pendapat mas Mamaz tentang Flutter?

A: Gw belom coba sih, jadi nggak bisa berpendapat, so far gimana?

Q: So far gw nyobain yg di android sih mamazo

A: Hmm.. Concern gw di maintainability issue aja, sama kalau cross platform, kan android ama iOS tentunya walau serupa jelas tak sama, file system beda, fitur kamera berbeda, permission berbeda, kalau untuk sekadar UI bisa sih satu code hasilnya sama, tp yg specific device blm tentu.

Q: Tapi yg gw tau sih dia udah jadi native gitu (?) abstraksinya dah bagus sih

A: Yep, coba aja diexplore terus.

zulfikar fajri (@fajrizulfikar )
Mas Mamaz mau nanya, apa tantangan terbesar dari seorang software engineer dengan background web dev dan hybrid mobile, ketika ingin pindah role menjadi iOS dev?

A: Belajar organise code dengan OOP (Swift) dan rendering UI yang sistemnya berbeda dengan web, akan cukup kaget di beberapa case, karena "melukis" di web yang biasanya mudah, akan cukup sulit jika di lakukan di Native code. Misalnya layout dan positioning, yang lebih strict. Makanya saya ucap di awal, belajar basicnya dulu, jangan langsung nyemplung, soalnya berbeda. Dulu pernah megang React Native juga, cukup shock awalnya, ya mau nggak mau kosongin pikiran, belajar lagi Flexbox ama CSS dari awal.

Adith Widya Pradipta (@adith_wp)
Lebih baik belajar Objective-C dulu kah untuk iOS Engineering?

A: Pertanyaan bagus, kalau 2 tahun lalu saya bilang perlu, kalau sekarang sih engga, jump to Swift aja. Keep in mind Swift masih ongoing development juga, nggak sestabil ObjC yang sudah 3 dekade lebih, tapi ga kayak Swift versi awal-awal sih.

Q: Whaa thanks for the insight. Follow up question.

Mana yang lebih prioritas untuk sekarang, (dimulai dari) belajar UI Kit atau (langsung) SwiftUI?

Anggap konteksnya sudah belajar vanilla Swift
Maap kalo nyebut vanilla.

A: UIKit dulu karena cakupannya ga hanya UI aja, dia handle touch juga dan lainnya, more on this: https://developer.apple.com/documentation/uikit…

SwiftUI ditujukan buat rapid UI development sih. Tapi keduanya itu cocoknya dipelajari sembari ngerjain tutorial. Learning by doing.

Nah itu tadi sesi tanya jawab Tanya Kodenol bersama Hisma Mulya, Principal Engineer Kata.ai. Masih ada yang mau ditanyain soal iOS Engineering? Yuk kirim pertanyaanmu di kolom komentar.

Discussion

pic
Editor guide