ตอนแรกของชุดบทความพัฒนาผลิตภัณฑ์อิสระของผม

ในฐานะนักพัฒนาอุปกรณ์เคลื่อนที่ ความปรารถนาสูงสุดของผมย่อมเป็นการ เขียนแอปแล้วนั่งรอเงินไหลมา ( ͡° ͜ʖ ͡°) นั่นเอง

เราจะพบปัญหาอะไรบ้างระหว่างสร้างแอปด้วยตัวเอง เมื่อไม่นานมานี้ผมเพิ่งเผยแพร่แอปของตัวเอง จึงอยากแบ่งปันปัญหาที่พบและวิธีแก้ไข

1. กำหนดความต้องการ

เหตุผลที่แต่ละคนอยากสร้างแอปอิสระอาจแตกต่างกันเล็กน้อย

ในภาพใหญ่ คุณอาจมองเห็นความต้องการเร่งด่วนที่หากแก้ได้ก็เปลี่ยนโลกได้ ขาดเพียงโปรแกรมเมอร์คนหนึ่ง

ในภาพเล็ก คุณอาจแค่อยากเห็นแอปของตัวเองใน App Store อาจเป็นการทดลองเทคโนโลยีใหม่ เช่น หลัง iOS 8 เปิดตัวส่วนขยาย Today ก็มีแอปโดดเด่นจำนวนมากที่สร้างจากแนวคิดนี้ หรืออาจเป็นเครื่องมือที่แก้ความไม่สะดวกในชีวิต เช่น แอปจัดการไฟล์หรือแอปสภาพอากาศที่มีฟีเจอร์ใส่ใจผู้ใช้

ค้นหาความต้องการสักอย่าง ไม่ว่าใหญ่หรือเล็ก สิ่งนั้นจะเป็นแรงผลักดันให้คุณทำต่อไป

ผมสร้างแอปจัดการไฟล์ชื่อ “File Manager” เพื่อตอบโจทย์ของภรรยา

File Manager เปลี่ยนโทรศัพท์ให้เป็นเซิร์ฟเวอร์ อุปกรณ์อื่นในเครือข่าย Wi-Fi เดียวกันจัดการไฟล์ผ่านเบราว์เซอร์ได้ ทั้งจัดกลุ่มโฟลเดอร์ คัดลอก ย้าย อัปโหลด และดาวน์โหลดไฟล์

หลังตัดสินใจทำความต้องการนี้ ผมใช้เวลาราวสามเดือนก่อนเผยแพร่โครงการ และได้เรียนรู้ Swift ไปด้วย

2. ต้นแบบและการโต้ตอบของแอป

เมื่อมีความต้องการและวิธีแก้ คุณน่าจะมีภาพคร่าว ๆ ของต้นแบบและวิธีที่ผู้ใช้จะใช้งาน ขั้นต่อไปคือกำหนดหน้าจอและการโต้ตอบจริง

ผมลองเครื่องมือสร้างต้นแบบอยู่หลายตัว แล้วก็เลิกใช้

ผมพบว่าเวลาที่ต้องเรียนเครื่องมือและจัดหน้าจอนั้นมากพอจะสร้างหน้าจอด้วย xib ได้เลย สุดท้ายจึงแก้ปัญหาต้นแบบด้วยภาพร่างที่วาดด้วยมือ

ต่อมาเมื่อทำผลิตภัณฑ์อื่น ผมจึงตระหนักว่าต้นแบบยังจำเป็น การทำต้นแบบคือกระบวนการจัดระเบียบตรรกะให้สอดคล้องกัน

3. แล้วไอคอนเล็ก ๆ ในแอปล่ะ?

เมื่อต้นแบบลงตัว ผมก็พอมองเห็นโครงสร้างโดยรวมของโครงการ แต่นอกจากโค้ดแล้วยังมีอีกปัญหาที่นักพัฒนาอิสระทุกคนหลีกเลี่ยงไม่ได้!

จะทำอย่างไรกับไอคอนเล็ก ๆ ทั้งหมดที่ใช้ในโครงการ?

ต่อไปนี้คือคลังไอคอนบางส่วนที่ผมเคยใช้:

  • คลังไอคอนของ Alibaba → ชุดไอคอนเวกเตอร์ครบถ้วน ปรับสีและขนาดได้อย่างอิสระ ถือเป็นแหล่งที่ใจกว้างมาก แต่การใช้เชิงพาณิชย์ยังต้องขออนุญาตผู้สร้าง
  • icons8 → ไอคอนแบบแบนฟรี 56,500 ชิ้น! มีไอคอนสำหรับแพลตฟอร์มต่าง ๆ และยังมีแอป Mac
  • iconfinder → มีชุดไอคอนครบเช่นกัน โดยมีรูปแบบเชิงพาณิชย์ที่ชัดเจนกว่า

4. การทดสอบเองและทดสอบเบตา

ในบริษัท เรามีผู้ทดสอบ เพื่อนร่วมงานด้านผลิตภัณฑ์ และทีมอื่นช่วยกันปรับปรุงแอป นักพัฒนาอิสระจะค้นหาและป้องกันบั๊กให้ได้มากที่สุดตั้งแต่เนิ่น ๆ อย่างไร?

4.1 ทดสอบด้วยตัวเอง

ตอนนี้ผมต้องทำงานที่เคยส่งให้ทีมทดสอบเอง นอกจากการทดสอบด้วยมือ เรายังเลี้ยง ลิงทดสอบ ไว้ช่วยทดสอบได้

4.2 รับสมัครผู้ทดสอบเบตา

การสร้างแอปอิสระหมายถึงต้องรับหลายบทบาทนอกเหนือจากนักพัฒนา ทั้งผลิตภัณฑ์ ปฏิบัติการ บริการลูกค้า และอื่น ๆ การประชาสัมพันธ์ก็เป็นหน้าที่ของเรา เริ่มจากเพื่อน เพื่อนร่วมชั้น และครอบครัว แล้วโพสต์บนเครือข่ายสังคมว่า แอปของฉันใกล้เสร็จแล้ว มาช่วยลองกันหน่อย!

ผู้ใช้เบตาไม่ได้มีหน้าที่แค่หาบั๊ก ความต้องการและข้อเสนอแนะใหม่ ๆ ของพวกเขายังช่วยเติมเต็มและปรับปรุงแอปได้มากกว่าเดิม

4.3 แจกจ่ายรุ่นทดสอบ

หากขอรหัสอุปกรณ์ของผู้ทดสอบเบตาได้สะดวก คุณใช้แพลตฟอร์มโฮสต์เบตาอย่าง Pgyer หรือ fir.im ได้ โดยมีข้อจำกัดเรื่องอุปกรณ์

หากขอรหัสอุปกรณ์ได้ยาก คุณใช้ TestFlight ของ Apple ซึ่งเปิดให้ใช้หลัง iOS 8 และรองรับผู้ทดสอบเบตาได้สูงสุด 10,000 คน

5. ภาพหน้าจอ App Store

ทำไมภาพหน้าจอสำหรับเผยแพร่จึงต้องมีหัวข้อของตัวเอง? นักพัฒนาอิสระมีช่องทางประชาสัมพันธ์ไม่มาก ภาพหน้าจอและคำอธิบายในหน้าผลิตภัณฑ์ App Store คือทางเข้าและหน้าร้านของแอป

หากภาพเหล่านั้นดูไม่ดี เราอาจเสียผู้เข้าชมที่เพิ่งค้นพบแอปไป

ในบริษัทมีนักออกแบบ UI และเพื่อนร่วมงานด้านผลิตภัณฑ์ช่วยทำภาพหน้าจอ แต่เมื่อทำงานคนเดียว เราจะได้ภาพขนาดที่ถูกต้องอย่างไร?

5.1 ถ่ายภาพในโปรแกรมจำลอง

คุณจับภาพหน้าจอแอปโดยตรงในโปรแกรมจำลองได้ แม้ผลลัพธ์อาจดูหยาบไปบ้าง

5.2 เติมความสวยงามอีกเล็กน้อย

ผมแนะนำเว็บไซต์ฟรีชื่อ shotbot อัปโหลดสื่อของคุณแล้วเว็บไซต์จะสร้างชุดภาพหน้าจอผลิตภัณฑ์รูปแบบเดียวกันให้ครบ

หมายเหตุ 2022-04-11: ภายหลังผมเขียนแอป Mac โดยเฉพาะเพื่อทำภาพหน้าจอสำหรับเผยแพร่แอปของตัวเองใน App Store

6. ทรัพยากรอื่นที่ผมใช้

เมื่อทำการโต้ตอบและงานออกแบบเฉพาะบางอย่าง เครื่องมือบุคคลที่สามและไอคอนสำเร็จรูปอาจไม่ตรงใจทั้งหมด

ถ้าอย่างนั้นก็แก้ภาพเอง!

แน่นอนว่านักพัฒนาส่วนใหญ่ไม่ถนัด Photoshop มากนัก และบางคนไม่เคยใช้เลย เราจะทำอย่างไร?

มีสองเว็บไซต์คือ PS ออนไลน์ และ เครื่องมือแก้ภาพบนเว็บของ Meitu

คุณแก้ภาพง่าย ๆ ในเบราว์เซอร์ได้โดยไม่ต้องดาวน์โหลดซอฟต์แวร์ Adobe ขนาดใหญ่ ถือเป็นข่าวดีสำหรับคนที่ไม่ถนัด Photoshop

นอกจากการแก้ภาพ ตัวไอคอนแอปเองก็ชวนปวดหัว เว็บไซต์อีกแห่งที่ผมแนะนำคือ MakeIcon: อัปโหลดโลโก้ขนาด 1024×1024 แล้วระบบจะสร้างไอคอนขนาดอื่นทั้งหมดโดยอัตโนมัติ และยังรองรับ iMessage บน iOS 10

7. ส่งท้าย

ผมพัฒนาเสร็จด้วยทรัพยากรที่มีอยู่โดยไม่มีนักออกแบบ UI ช่วย ถ้าคุณมีนักออกแบบก็เชิญออกทางนี้ได้เลย  ̄ヘ ̄

ผมอยากทำแอปของตัวเองมานาน เพิ่งได้เริ่มจริงจังไม่นานนี้หลังจัดสิ่งที่ต้องใช้ให้เรียบร้อย ที่สำคัญที่สุดคือในที่สุดผมมีความต้องการชัดเจนให้แก้ และได้เรียน Swift ไปพร้อมกัน

ระหว่างพัฒนา ผมเคยแทบไม่ได้เขียนโค้ดตลอดหนึ่งสัปดาห์ จึงตระหนักว่าเมื่อทำแอปอิสระ ความต้องการคือแรงผลักดันที่แท้จริงให้เราทำต่อ ขนาดไม่สำคัญ การแก้ปัญหาต่างหากที่สำคัญ

เมื่อพัฒนาต่อ ความต้องการก็เพิ่มขึ้น ทั้งการแชร์ AirDrop การเชื่อม iCloud และการพัฒนา ShareExtension ยังไม่เสร็จ เดินหน้าต่อและค่อย ๆ ปรับปรุงทีละนิด! ʘʚʘ (ผมจะไม่ยอมรับเด็ดขาดว่าเหตุผลแรกที่ทำแอปนี้คืออยากแชร์ “collection.avi” ระหว่าง PC โทรศัพท์ และ iPad)

นี่คือลิงก์แอปของผม: วิธีจัดการไฟล์ที่เรียบง่ายที่สุด File Manager

หมายเหตุ 2022-04-11: ตอนนี้ค้นหาแอปไม่พบแล้ว เนื่องจากไม่มีวิธีสร้างรายได้ที่ดี ผมจึงขายให้บริษัทรับจ้างพัฒนาแห่งหนึ่ง การขายครั้งนั้นทำให้ผมทบทวนหลายอย่าง บทความถัดไปจะเล่ารายละเอียดมากขึ้น

บทความต้นฉบับเผยแพร่บน Jianshu ต่อมาบัญชี Jianshu ของผมถูกยึด และบทความอื่นถูกบล็อกอยู่เรื่อย ๆ ตอนนี้ผมจึงย้ายบทความทั้งหมดไปยัง github.io