Πρώτο μέρος της σειράς μου για την ανάπτυξη ανεξάρτητων προϊόντων

Ως προγραμματιστής κινητών εφαρμογών, η μεγαλύτερη επιθυμία μου είναι φυσικά να γράψω μια εφαρμογή και να κάθομαι ενώ τα χρήματα έρχονται μόνα τους ( ͡° ͜ʖ ͡°).

Ποια προβλήματα μπορεί να συναντήσετε όταν φτιάχνετε μόνοι σας μια εφαρμογή; Πρόσφατα κυκλοφόρησα μια δική μου εφαρμογή και θέλω να μοιραστώ τα προβλήματα που συνάντησα και πώς τα έλυσα.

1. Ορίστε την ανάγκη

Ο καθένας έχει έναν λίγο διαφορετικό λόγο για να θέλει να δημιουργήσει μια ανεξάρτητη εφαρμογή.

Σε μεγάλη κλίμακα, μπορεί να βλέπετε μια επείγουσα ανάγκη της οποίας η λύση θα άλλαζε τον κόσμο — λείπει μόνο ένας προγραμματιστής.

Σε μικρότερη κλίμακα, ίσως απλώς θέλετε να δείτε τη δική σας εφαρμογή στο App Store. Μπορεί να είναι ένα πείραμα με νέα τεχνολογία: όταν το iOS 8 εισήγαγε τις επεκτάσεις Today, εμφανίστηκαν πολλές ξεχωριστές εφαρμογές βασισμένες σε αυτές. Ή μπορεί να είναι ένα βοήθημα που λύνει μια καθημερινή δυσκολία, όπως μια εφαρμογή διαχείρισης αρχείων ή μια εφαρμογή καιρού με προσεγμένες λειτουργίες.

Εντοπίστε μια ανάγκη, μεγάλη ή μικρή. Σας δίνει το κίνητρο να συνεχίσετε.

Δημιούργησα μια εφαρμογή διαχείρισης αρχείων με όνομα «Διαχειριστής αρχείων» για τις ανάγκες της γυναίκας μου.

Ο Διαχειριστής αρχείων μετατρέπει το τηλέφωνο σε διακομιστή. Άλλες συσκευές στο ίδιο δίκτυο Wi-Fi μπορούν να διαχειρίζονται τα αρχεία του μέσω προγράμματος περιήγησης: να οργανώνουν φακέλους, να αντιγράφουν και να μετακινούν αρχεία και να τα μεταφορτώνουν ή να τα κατεβάζουν.

Αφού καθόρισα αυτή την ανάγκη, χρειάστηκα περίπου τρεις μήνες για να κυκλοφορήσω το έργο. Στην πορεία έμαθα λίγη Swift.

2. Πρωτότυπα και αλληλεπιδράσεις εφαρμογής

Όταν έχετε μια ανάγκη και μια λύση, πιθανότατα έχετε μια αδρή εικόνα του πρωτοτύπου και του τρόπου χρήσης του. Το επόμενο βήμα είναι να ορίσετε τις συγκεκριμένες οθόνες και αλληλεπιδράσεις.

Δοκίμασα μερικά εργαλεία πρωτοτυποποίησης και μετά τα εγκατέλειψα.

Διαπίστωσα ότι ο χρόνος για να μάθω το εργαλείο και να σχεδιάσω τις οθόνες θα αρκούσε για να τις κατασκευάσω με xib. Τελικά έλυσα το πρόβλημα του πρωτοτύπου με χειρόγραφα σκίτσα.

Δημιουργώντας άλλα προϊόντα αργότερα, κατάλαβα ότι τα πρωτότυπα είναι απαραίτητα. Η πρωτοτυποποίηση είναι ουσιαστικά η οργάνωση της λογικής και η εξασφάλιση της εσωτερικής της συνέπειας.

3. Τι γίνεται με όλα τα μικρά εικονίδια;

Με το πρωτότυπο καθορισμένο, είχα μια γενική ιδέα της δομής του έργου. Πέρα όμως από τον κώδικα, παρέμενε ένα πρόβλημα που αντιμετωπίζει κάθε ανεξάρτητος προγραμματιστής!

Τι να κάνω με όλα τα μικρά εικονίδια που χρησιμοποιούνται στο έργο;

Ακολουθούν μερικές βιβλιοθήκες εικονιδίων που έχω χρησιμοποιήσει:

  • Βιβλιοθήκη εικονιδίων της Alibaba → Πλήρη σύνολα διανυσματικών εικονιδίων με ελεύθερα ρυθμιζόμενα χρώματα και μεγέθη, ένας γενναιόδωρος πόρος. Η εμπορική χρήση εξακολουθεί να απαιτεί άδεια του δημιουργού.
  • icons8 → 56.500 δωρεάν επίπεδα εικονίδια! Υπάρχουν εικονίδια για διαφορετικές πλατφόρμες και ακόμη και εφαρμογή για Mac.
  • iconfinder → Προσφέρει επίσης πλήρη σύνολα εικονιδίων, με πιο σαφές εμπορικό μοντέλο.

4. Δοκιμές και δοκιμές beta

Σε μια εταιρεία, οι δοκιμαστές, οι υπεύθυνοι προϊόντος και άλλοι συνεργάτες μάς βοηθούν να βελτιώσουμε την εφαρμογή. Πώς μπορεί ένας ανεξάρτητος προγραμματιστής να εντοπίσει και να αποτρέψει όσο περισσότερα σφάλματα γίνεται, όσο νωρίτερα γίνεται;

4.1 Δοκιμάζοντας μόνοι σας

Τώρα πρέπει να κάνω τη δουλειά που παλαιότερα ανέθετα στην ομάδα δοκιμών. Εκτός από τις χειροκίνητες δοκιμές, μπορούμε να μεγαλώσουμε κι έναν πίθηκο δοκιμών για να μας βοηθά.

4.2 Εύρεση δοκιμαστών beta

Η δημιουργία ανεξάρτητης εφαρμογής σημαίνει περισσότερους ρόλους από αυτόν του προγραμματιστή: προϊόν, λειτουργία, εξυπηρέτηση πελατών και άλλα. Η προώθηση είναι επίσης δική μας ευθύνη. Ξεκινήστε από φίλους, συμμαθητές και οικογένεια και γράψτε στα κοινωνικά δίκτυα: η εφαρμογή μου είναι σχεδόν έτοιμη, ελάτε να με βοηθήσετε να τη δοκιμάσω!

Οι χρήστες beta δεν βρίσκουν μόνο σφάλματα. Τα νέα αιτήματα και οι προτάσεις τους μπορούν να συμβάλουν ακόμη περισσότερο στον εμπλουτισμό και στη βελτίωση της εφαρμογής.

4.3 Διανομή δοκιμαστικών εκδόσεων

Αν είναι εύκολο να αποκτήσετε τα αναγνωριστικά συσκευών των δοκιμαστών, μπορείτε να χρησιμοποιήσετε μια πλατφόρμα φιλοξενίας beta όπως το Pgyer ή το fir.im. Ισχύουν περιορισμοί συσκευών.

Αν τα αναγνωριστικά συσκευών είναι δύσκολο να αποκτηθούν, μπορείτε να χρησιμοποιήσετε το TestFlight της Apple, που άνοιξε μετά το iOS 8, με έως 10.000 θέσεις δοκιμών beta.

5. Στιγμιότυπα οθόνης για το App Store

Γιατί να έχουν τα στιγμιότυπα κυκλοφορίας δική τους ενότητα; Οι ανεξάρτητοι προγραμματιστές έχουν σχετικά λίγα κανάλια προώθησης. Τα στιγμιότυπα και η περιγραφή στη σελίδα προϊόντος στο App Store είναι η είσοδος και η βιτρίνα της εφαρμογής.

Αν φαίνονται άσχημα, μπορεί να χάσουμε έναν επισκέπτη που μόλις ανακάλυψε την εφαρμογή.

Σε μια εταιρεία, οι σχεδιαστές διεπαφής και οι υπεύθυνοι προϊόντος βοηθούν στη δημιουργία στιγμιοτύπων. Δουλεύοντας μόνοι μας, πώς βρίσκουμε στιγμιότυπα στα σωστά μεγέθη;

5.1 Στιγμιότυπα στον προσομοιωτή

Μπορείτε να καταγράψετε οθόνες της εφαρμογής απευθείας στον προσομοιωτή, αν και το αποτέλεσμα ίσως φαίνεται λίγο πρόχειρο.

5.2 Λίγη βελτίωση

Προτείνω έναν δωρεάν ιστότοπο που λέγεται shotbot. Ανεβάστε το υλικό σας και δημιουργεί ένα πλήρες σύνολο ομοιόμορφα μορφοποιημένων στιγμιοτύπων προϊόντος.

Σημείωση, 2022-04-11: Αργότερα έγραψα μια εφαρμογή Mac ειδικά για να δημιουργώ στιγμιότυπα για τις δικές μου κυκλοφορίες στο App Store.

6. Άλλοι πόροι που χρησιμοποίησα

Για συγκεκριμένες αλληλεπιδράσεις και σχέδια, τα εργαλεία τρίτων και τα έτοιμα εικονίδια μερικές φορές δεν καλύπτουν τις ανάγκες σας.

Τότε επεξεργαστείτε τις εικόνες μόνοι σας!

Φυσικά, οι περισσότεροι προγραμματιστές δεν είναι ιδιαίτερα εξοικειωμένοι με το Photoshop, και μερικοί δεν το έχουν χρησιμοποιήσει ποτέ. Τι μπορούμε να κάνουμε;

Ακολουθούν δύο ιστότοποι: Online PS και ο διαδικτυακός επεξεργαστής Meitu

Μπορείτε να κάνετε απλές αλλαγές εικόνων στο πρόγραμμα περιήγησης χωρίς να κατεβάσετε βαρύ λογισμικό Adobe. Καλά νέα για όσους δεν τα καταφέρνουμε ιδιαίτερα με το Photoshop.

Πέρα από την επεξεργασία εικόνων, πονοκέφαλος μπορεί να είναι και το ίδιο το εικονίδιο της εφαρμογής. Προτείνω επίσης το MakeIcon: ανεβάστε ένα λογότυπο 1024×1024 και δημιουργεί αυτόματα όλα τα άλλα μεγέθη εικονιδίων. Υποστηρίζει ακόμη και το iMessage στο iOS 10.

7. Τελικές σκέψεις

Ολοκλήρωσα την ανάπτυξη χρησιμοποιώντας υπάρχοντες πόρους χωρίς βοήθεια σχεδιαστή διεπαφής. Αν έχετε σχεδιαστή, μπορείτε να αποχωρήσετε ελεύθερα  ̄ヘ ̄.

Ήθελα από καιρό να δημιουργήσω τη δική μου εφαρμογή. Ξεκίνησα σοβαρά μόλις πρόσφατα, αφού ξεκαθάρισα τι χρειαζόμουν. Το σημαντικότερο ήταν ότι είχα επιτέλους μια σαφή ανάγκη να καλύψω και έμαθα λίγη Swift στην πορεία.

Κατά την ανάπτυξη πέρασα ακόμη και μια εβδομάδα γράφοντας ελάχιστο κώδικα. Συνειδητοποίησα ότι σε μια ανεξάρτητη εφαρμογή η ανάγκη είναι αυτή που σας κρατά σε κίνηση. Το μέγεθός της δεν έχει σημασία· σημασία έχει να λυθεί ένα πρόβλημα.

Καθώς προχωρούσε η ανάπτυξη, αυξάνονταν οι απαιτήσεις: η κοινή χρήση AirDrop, η ενσωμάτωση iCloud και η ανάπτυξη ShareExtension παρέμεναν ημιτελείς. Συνεχίζουμε με μικρά βήματα και επαναλήψεις! ʘʚʘ (Δεν παραδέχομαι σε καμία περίπτωση ότι ο αρχικός λόγος για την εφαρμογή ήταν η κοινή χρήση της «συλλογής.avi» μου μεταξύ υπολογιστή, τηλεφώνου και iPad.)

Ακολουθεί ο σύνδεσμος της εφαρμογής μου: Ο πιο απλός τρόπος διαχείρισης αρχείων — Διαχειριστής αρχείων

Σημείωση, 2022-04-11: Η εφαρμογή δεν βρίσκεται πλέον στην αναζήτηση. Χωρίς έναν καλό τρόπο να αποφέρει έσοδα, την πούλησα σε μια εταιρεία εξωτερικής ανάθεσης. Η πώληση προκάλεσε πολλές σκέψεις· το επόμενο άρθρο τις αναλύει περισσότερο.

Το αρχικό άρθρο δημοσιεύτηκε στο Jianshu. Αργότερα παραβιάστηκε ο λογαριασμός μου εκεί και τα άλλα άρθρα μου μπλοκάρονταν συνεχώς. Τώρα μεταφέρω όλες τις αναρτήσεις μου στο github.io.