Bagian pertama dari seri pengembangan produk independen saya

Sebagai pengembang seluler, harapan terbesar saya tentu saja adalah menulis sebuah aplikasi lalu duduk santai sambil menunggu uang mengalir ( ͡° ͜ʖ ͡°).

Masalah apa yang mungkin ditemui ketika membangun aplikasi seorang diri? Baru-baru ini saya merilis aplikasi sendiri dan ingin membagikan masalah yang saya hadapi serta cara menyelesaikannya.

1. Tentukan kebutuhan

Setiap orang punya alasan yang sedikit berbeda untuk membuat aplikasi independen.

Dalam skala besar, Anda mungkin melihat kebutuhan mendesak yang solusinya dapat mengubah dunia—tinggal membutuhkan seorang pemrogram.

Dalam skala lebih kecil, Anda mungkin hanya ingin melihat aplikasi sendiri di App Store. Aplikasi itu bisa menjadi percobaan teknologi baru: setelah iOS 8 memperkenalkan ekstensi Today, muncul banyak aplikasi unik yang memanfaatkannya. Atau bisa juga berupa utilitas yang mengatasi ketidaknyamanan sehari-hari, seperti aplikasi pengelola file atau cuaca dengan fitur yang dirancang cermat.

Tentukan satu kebutuhan, sebesar atau sekecil apa pun. Itulah motivasi yang membuat Anda terus melangkah.

Saya membuat aplikasi pengelola file bernama “File Manager” untuk menjawab kebutuhan istri saya.

File Manager mengubah ponsel menjadi server. Perangkat lain di jaringan Wi-Fi yang sama dapat mengelola file melalui browser: menata folder, menyalin dan memindahkan file, serta mengunggah atau mengunduhnya.

Setelah menetapkan kebutuhan ini, saya menghabiskan sekitar tiga bulan hingga proyek dirilis. Di sepanjang proses itu saya juga belajar Swift.

2. Prototipe dan interaksi aplikasi

Begitu memiliki kebutuhan dan solusi, Anda mungkin sudah membayangkan garis besar prototipe dan cara pengguna berinteraksi. Langkah berikutnya adalah menetapkan layar dan interaksi yang sebenarnya.

Saya mencoba beberapa alat prototipe, lalu menyerah menggunakannya.

Saya merasa waktu untuk mempelajari alat prototipe dan menyusun layar sudah cukup untuk membangunnya dengan xib. Akhirnya, masalah prototipe saya selesaikan dengan sketsa tangan.

Ketika kemudian membuat produk lain, saya menyadari bahwa prototipe memang perlu. Membuat prototipe sebenarnya adalah proses menata logika agar konsisten.

3. Bagaimana dengan semua ikon kecil aplikasi?

Setelah prototipe ditetapkan, saya mendapat gambaran umum struktur proyek. Namun, di luar kode, masih ada satu masalah yang harus dihadapi setiap pengembang independen!

Apa yang harus dilakukan dengan semua ikon kecil yang digunakan di seluruh proyek?

Berikut beberapa pustaka ikon yang pernah saya gunakan:

  • Pustaka ikon Alibaba → Kumpulan ikon vektor lengkap dengan warna dan ukuran yang bebas disesuaikan, sebuah sumber yang sangat kaya. Penggunaan komersial tetap memerlukan izin pembuat.
  • icons8 → 56.500 ikon datar gratis! Tersedia ikon untuk berbagai platform dan bahkan aplikasi Mac.
  • iconfinder → Juga menyediakan kumpulan ikon lengkap, dengan model komersial yang lebih jelas.

4. Pengujian mandiri dan beta

Di perusahaan, penguji, rekan produk, dan anggota tim lain membantu menyempurnakan aplikasi. Bagaimana pengembang independen dapat menemukan dan mencegah sebanyak mungkin bug sedini mungkin?

4.1 Menguji sendiri

Sekarang saya harus mengerjakan hal yang dahulu diserahkan kepada tim pengujian. Selain pengujian manual, kita juga dapat memelihara monyet penguji untuk membantu melakukan pengujian.

4.2 Merekrut penguji beta

Membangun aplikasi independen berarti mengenakan lebih banyak topi daripada sekadar pengembang: produk, operasi, layanan pelanggan, dan lainnya. Promosi juga menjadi tanggung jawab kita sendiri. Mulailah dari teman, teman sekolah, dan keluarga, lalu unggah di jejaring sosial: aplikasi saya hampir siap, ayo bantu mencobanya!

Pengguna beta tidak hanya menemukan bug. Permintaan dan saran baru dari mereka dapat memberi kontribusi lebih besar untuk memperkaya dan menyempurnakan aplikasi.

4.3 Mendistribusikan versi uji

Jika mudah memperoleh pengenal perangkat penguji beta, Anda dapat menggunakan platform hosting beta seperti Pgyer atau fir.im. Batasan perangkat berlaku.

Jika pengenal perangkat sulit diperoleh, Anda dapat menggunakan TestFlight dari Apple, yang dibuka sejak iOS 8, dengan hingga 10.000 tempat pengujian beta.

5. Tangkapan layar App Store

Mengapa tangkapan layar rilis mendapat bagian tersendiri? Pengembang independen memiliki saluran promosi yang relatif sedikit. Tangkapan layar dan deskripsi di halaman produk App Store adalah pintu masuk dan etalase aplikasi.

Jika tangkapan layar itu tampak buruk, kita mungkin kehilangan pengunjung yang baru menemukan aplikasi.

Di perusahaan, desainer UI dan rekan produk membantu membuat tangkapan layar. Jika bekerja sendiri, bagaimana kita mendapatkan tangkapan layar dengan ukuran yang tepat?

5.1 Tangkapan layar di simulator

Anda dapat menangkap layar aplikasi langsung di simulator, meskipun hasilnya mungkin terlihat agak kasar.

5.2 Sedikit pemolesan

Saya merekomendasikan situs gratis bernama shotbot. Unggah bahan Anda dan situs itu akan menghasilkan satu set tangkapan layar produk dengan format yang konsisten.

Catatan, 2022-04-11: kemudian saya menulis aplikasi Mac khusus untuk membuat tangkapan layar rilis App Store saya sendiri.

6. Sumber lain yang saya gunakan

Ketika mengerjakan interaksi dan desain tertentu, alat pihak ketiga serta ikon siap pakai kadang tidak sepenuhnya memenuhi keinginan.

Kalau begitu, sunting gambarnya sendiri!

Tentu saja, kebanyakan pengembang tidak terlalu mahir menggunakan Photoshop, bahkan ada yang belum pernah memakainya. Apa yang dapat dilakukan?

Berikut dua situs: PS Daring dan editor web Meitu

Anda dapat melakukan penyuntingan gambar sederhana di browser tanpa mengunduh perangkat lunak Adobe yang berat. Ini kabar baik bagi kita yang tidak begitu mahir menggunakan Photoshop.

Selain penyuntingan gambar, ikon aplikasi sendiri juga dapat memusingkan. Situs lain yang saya rekomendasikan adalah MakeIcon: unggah logo 1024×1024 dan situs itu otomatis menghasilkan semua ukuran ikon lainnya. Bahkan mendukung iMessage di iOS 10.

7. Penutup

Saya menyelesaikan pengembangan dengan sumber yang tersedia tanpa bantuan desainer UI. Kalau Anda punya desainer, silakan keluar sendiri  ̄ヘ ̄.

Saya sudah lama ingin membuat aplikasi sendiri. Baru belakangan ini saya benar-benar memulai setelah merapikan apa yang dibutuhkan. Yang terpenting, akhirnya ada kebutuhan jelas yang ingin saya jawab, dan dalam prosesnya saya belajar Swift.

Selama pengembangan saya bahkan pernah hampir tidak menulis kode selama seminggu. Saya menyadari bahwa ketika membuat aplikasi independen, kebutuhanlah yang benar-benar membuat kita bertahan. Besar kecilnya tidak penting; yang penting adalah menyelesaikan masalah.

Seiring pengembangan, kebutuhan bertambah: berbagi melalui AirDrop, integrasi iCloud, dan pengembangan ShareExtension masih belum selesai. Teruskan dan lakukan iterasi sedikit demi sedikit! ʘʚʘ (Saya tentu tidak mengakui bahwa alasan awal membuat aplikasi ini adalah untuk berbagi “koleksi.avi” di PC, ponsel, dan iPad.)

Berikut tautan ke aplikasi saya: Cara paling sederhana mengelola file, File Manager

Catatan, 2022-04-11: aplikasi itu tidak lagi dapat ditemukan melalui pencarian. Karena tidak ada cara monetisasi yang baik, saya menjualnya kepada perusahaan alih daya. Penjualan itu menimbulkan banyak refleksi; artikel berikutnya membahasnya lebih lanjut.

Artikel asli diterbitkan di Jianshu. Akun Jianshu saya kemudian dibajak dan artikel lain terus diblokir. Kini saya memindahkan semua tulisan blog ke github.io.