co bad idea kama unataka kutengeneza app zinazo run fast na znazotumia cpu resource kidogo.. Facebook wangetumia qt kutengeneza app yao, app icnge2mia cpu na battery power sana.
Si kweli, nimeanza kudoubt kama unatengeneza android apps au labda you are just a beginner.
Facebook app inatumia cpu na battery kwa sababu ya services nyingi zinazorun kwenye background, wana services zaidi ya 20, badala ya kutumia GCM wameamua kwenda na custom pushing service ambayo inatumia MQTT protocol, mqtt doesnt matter unatumia language gani it will still use the same battery n cpu na its even more efficient kuliko Google's own implementation, wanafanya na long polling sometimes kwenye feed yao kupokea new feeds, na yenyewe inatumia battery pia doesnt matter unatumia language gani.
Na the first time you open the app wanafanya caching ya kama posts 100 kwenye memory na hata kwenye sd. Ni vitu wanafanya kuhakikisha their app inarun vizuri. Huwezi tegemea mobilr app ya 50MB iwe inafetch tu data from server na kudisplay kwenye bila functions nyingine, kagua app yao vizuri utaona ina vitu vingi mno.
Usikae na myth kua C++ is better than everything out there, ndio its fast lakini usikae ukafikiri kua it performs better in every case, zipo apps made in Java lakini ziko faster kuliko C++. Use C++ only when its compulsory lakini sio kwenye situation kama hii. Its a stupid idea kuacha flexibility ya java na kutumia c++, strings tu ni moja ya good reasons kuachana na c++ na app kama ya fb wana string operations nyingi mno, kwenye c++ its a huge pain hata kwa experts.
Na unajua qt is not free, ni closed source, bado ukiitumia kwa anything commercial you have to keep paying them monthly, na bado haina official support kutoka google, kila feature mpya google wanayoongeza hawatoi support yake in c++, hata authentication, asking for users permissions kwenye android >5.0 yote hayo ukiwa unatumia c++ utalia kuyafanya. Stick with your c++ ila jifunze kuchagua the right tool for the job. Soma Java hata mwezi jaribu na android development in java alafu utakuja kufuta kauli zaKo hapo juu.