Pereiti prie turinio
Mobile appsFlutter · 4 min. skaitymo

Kiek iš tikrųjų kainuoja mobiliosios programėlės kūrimas

Mobiliosios programėlės kainos internete skiriasi dešimt kartų neatsitiktinai. Kas iš tikrųjų keičia skaičių, ir kas lieka tas pats bet kuriuo atveju.

BILPP

Ieškant “mobiliosios programėlės kūrimo kaina” randami skaičiai, kurie skiriasi visa dydžio eile, dažnai tame pačiame straipsnyje. Toks skirtumas nėra nesąžiningumas — tai natūralus rezultatas, kai po viena etikete “mobilioji programėlė” suvidurkinamas savaitgalio prototipas ir banko programėlė. Jie dalijasi tik karkasu ir nieko daugiau.

Kuriame su Flutter, nes vienas kodo pagrindas iOS ir Android yra reali nauda, o ne rinkodaros frazė — bet karkasas niekada nebuvo brangiausia mobiliosios programėlės dalis. Štai kas iš tikrųjų ja yra.

Funkcijų sąrašas yra sąmatos pagrindas

Flutter programėlė, kuri rodo meniu ir priima užsakymą, kainos požiūriu turi labai mažai bendro su Flutter programėle, kuri tvarko sinchronizaciją be interneto, stumiamus pranešimus, pirkimus programėlėje ir vietos sekimą fone. Abi kompiliuojamos iš to paties įrankių rinkinio. Vienai iš jų reikia tik dalies inžinerijos, kurios reikia kitai.

Štai kodėl bet koks skaičius, matomas prie “Flutter programėlė” be funkcijų sąrašo, yra tik vietos rezervavimo ženklas. Sąžiningas pradinis taškas yra tas pats, kurį naudojame programinei įrangai pagal poreikį: užrašyti ekranus, duomenis, kurių programėlei reikia be interneto, kas nutinka be signalo, ir kas ją naudos — tuomet sąmata turi prie ko prisikabinti.

Kas iš tikrųjų prideda inžinerijos laiko

Veikimas be interneto ryšio. Programėlė, kuri veikia tik su gyvu ryšiu, kurti paprasčiau nei ta, kuri turi sklandžiai suderinti vietinę ir serverio būseną. Jei jūsų vartotojai kada nors būna vietoje be signalo — sandėlyje, kelte, tolimoje klinikoje — veikimas be interneto nėra papildomas patobulinimas, tai pagrindinė apimtis.

Parduotuvių mechanika. Įrašai parduotuvėse, ekrano nuotraukos ir peržiūros procesas nėra antraeiliai dalykai; Apple ir Google atmeta programėles dėl priežasčių, neturinčių nieko bendra su jūsų kodu. Numatyti laiką atmetimo ir pakartotinio pateikimo ciklui yra realistiška, ne pesimistiška.

Mokėjimai. Pirkimai programėlėje ir prenumeratos mūsų projektuose eina per RevenueCat, kuris tvarko kvitų patvirtinimą ir teisių logiką — tai, ką platformų API be reikalo apsunkina kurti nuo nulio. Tai sutaupo inžinerijos laiko, palyginti su rankomis sukurtu sprendimu — bet nepanaikina poreikio suprojektuoti patį pirkimo srautą.

Esamos programėlės perėmimas. Kito žmogaus Flutter kodo bazės auditas ir tęsimas gali eiti bet kuria kaina kryptimi: švari kodo bazė su testais plečiama greičiau nei kuriant iš naujo; nedokumentuota, be būsenos valdymo modelio, gali kainuoti daugiau nei perrašymas, nes mokate už jos supratimą prieš mokėdami už jos keitimą.

Kur iš tikrųjų slypi sąnaudos

VeiksnysŽema sudėtingumasAukšta sudėtingumas
RyšysVisada interneteBe interneto su sinchronizacija
EkranaiMažiau nei 1020+, su įdėtąja navigacija
Platformos integracijosNieko, be stumiamų pranešimųKamera, Bluetooth, vietos sekimas fone
MokėjimaiNėra arba vienkartiniaiPrenumeratos su lygiais ir bandymais
Serverio dalisEsamas APINaujas API, kuriamas kartu su programėle

Programėlė gali atsidurti bet kurioje šios lentelės vietoje, ir jos padėtis — o ne žodis “Flutter” — yra tai, ką atspindi reali sąmata.

Ką Flutter pakeičia, o ko ne

Vienas kodo pagrindas abiem platformoms iš tikrųjų sumažina inžinerijos sąnaudas, siekiant funkcijų lygiavertiškumo tarp iOS ir Android — nekuriate ir nepalaikote dviejų atskirų tos pačios logikos įgyvendinimų. Tai reali santaupa, ir ji kaupiasi visą programėlės gyvavimo laikotarpį: kiekviena būsima funkcija kuriama vieną kartą, ne du.

Kas nepasikeičia, tai parduotuvės pusė. Apple peržiūros procesas, Google Play taisyklės, ekrano nuotraukų reikalavimai ir peržiūros bei pakartotinio pateikimo ciklas yra vienodi nepriklausomai nuo to, kokiu karkasu sukurtas failas. Bet kas, siūlantis “Flutter programėlės” kainą be eilutės parduotuvės pateikimui ir peržiūros ciklams, siūlo nepilną projektą.

Tai taip pat nepanaikina serverio darbo. Flutter programėlei, kuriai reikia vartotojų paskyrų, duomenų sinchronizavimo ar serverio logikos, reikia serverio dalies — tai programinės įrangos pagal poreikį projektas, vykstantis lygiagrečiai su programėle, ne jos viduje, ir turintis savo sąnaudų veiksnius.

Kada verta rimtai svarstyti natūralų kūrimą

Flutter nėra teisingas pasirinkimas kiekvienam projektui. Programėlė, kuri intensyviai naudoja naujausias platformos funkcijas — naujus jutiklius, eksperimentinius API, gilią integraciją su operacine sistema, dar nepasiekusią tarpplatforminių įrankių — kartais geriau veiks kuriama natūraliai tai vienai platformai. Tai reta situacija, ne taisyklė, bet sąžiningas sąmatos pokalbis apima ir šį klausimą, prieš pasirenkant karkasą.

Kaip mes iš tikrųjų tai vertiname

Mobiliąsias programėles traktuojame taip pat, kaip bet kurį programinės įrangos pagal poreikį projektą: rašytinė specifikacija prieš skaičių, iteratyvus pristatymas, kad kas dvi savaites testuotumėte realius versijas realiuose įrenginiuose, o ne peržiūrėtumėte maketus, ir aiški riba, kam priklauso kodas ir parduotuvių įrašai, kai programėlė paleidžiama. Programėlė, kurios App Store Connect ir Google Play paskyrų nevaldote, yra programėlė, kurios negalite atnaujinti negrįžę pas tą, kuris jas sukūrė — verta patikrinti prieš ką nors pasirašant, nesvarbu, kas ją kuria.

Jei svarstote, ar kurti natūraliai, tarpplatformiškai, ar perimti kažką, kas jau egzistuoja, tai klausimas, į kurį trumpas pokalbis atsako greičiau nei dar vienas palyginimo straipsnis. Savo produktus, įskaitant eSIM programėlę Simtegre, kuriame taip pat, kaip kurtume jūsiškę.

Karkasas nusprendžia, kiek kartų kuriate funkciją. Visa kita sąraše nusprendžia, kiek laiko užtrunka sukurti ją vieną kartą.

Jei jau turite funkcijų sąrašą, kontaktų forma suteiks realią sąmatą greičiau nei paieška internete.

Skaitykite toliau

Visi įrašai
Kitas žingsnis

Papasakokite, ką kuriate.

Užtenka trijų sakinių. Atsakome per vieną darbo dieną — jūsų kalba.