Dropbox mijenja kôd u višeplatformski pomoću C ++

Prije nekoliko dana, Programeri Dropboxa putem posta na službenom blogu aplikacije su otkrili rutu kojom namjeravaju ići u smislu mobilnog razvoja vaše višeplatformske aplikacije, gdje je tim odlučio stvoriti jedinstvenu bazu koda, za razne svrhe ili platforme.

Pristup može biti koristan za male timove s malo vještina, ali proizvodnja je potrebna što je brže moguće. Od 2013. tim Dropboxa oslanja se na ovu strategiju. DOsavjet za platforme Android i iOS putem jedinstvene baze koda ugrađene u C ++. Post objašnjava zašto tvrtka sada više voli nativni razvoj na Swiftu i Kotlinu.

„Sastavljajući svoju bazu koda na nestandardni način, naslijedili smo troškove o kojima se ne bismo morali brinuti da smo se uskladili sa zadanim oružjem koje treće strane široko koriste.“ Na kraju je bilo više skupo od pisanja koda. dva puta ", rekao je.

Naglo, Povratne informacije inženjera Dropbox-a pokazuju da se odabirom pristupa na više platformi uvodi dodatne razvojne troškove povezane s postavljanjem prilagođenih knjižnica i okvira.

Ne računajući one koji se odnose na implementaciju prilagođenih radnih alata ili potrebu za obukom ili zapošljavanjem trećih strana sposobnih za prilagodbu visoko prilagođenom softverskom paketu.

U stvari, naglašava da odabir C ++ za razvoj više platformi za Android i iOS može dovesti programere do poteškoća koju ne bi imali domaće.

Na primjer, kaže, uspostavljanje okvira za upravljanje zadacima koji se izvršavaju u pozadini može biti nužno u C ++ razvojnom cjevovodu za više platformi.

Nasuprot tome, Drugi inženjer objašnjava inženjera Dropbox-a, to nije problem u izvornom jeziku.

Čak tvrdi da je tim Dropboxa u tom procesu morao postaviti JSON knjižnicu za C ++ 11, kao i drugu za rukovanje NULL pokazivačima.

Inženjer tvrtke otišao je još dalje naglašavajući da se okreće teoriji mišljenja da se može izgraditi jedna baza koda za više platformi.

Zapravo, inzistira, specifičnosti svake platforme faktori su koji se ne mogu izbjeći.

"Način na koji aplikacija pokreće rad u pozadini specifičan je za platformu i na to morate gledati od početka", kaže.

Pored razmatranja koja utječu na kôd, postoje i ona koja se tiču ​​radnih alata. U tom smislu, inženjer tvrtke razvija se u dvije osi: otklanjanje pogrešaka i konfiguracija personaliziranih alata.

"Iskustvo izvornog otklanjanja pogrešaka općenito je superiornije od C ++-a kroz zadani IDE ciljane platforme", piše on, dodajući da "osim što smo se morali odmaknuti od dostupnih alata, morali smo mobilizirati razvojne napore za razvoj drugih sposoban podržati pristup na više platformi u C ++. «

Konačno, u pogledu aspekata obuke i zapošljavanja, Eyal Guthmann ukazuje da je avantura s više platformi izgrađena oko jezgre inženjera s solidnom pozadinom u C ++-u.

Odlaskom potonjih u druge timove ili tvrtke, tvrtka je sve teže ispunila tehničku prazninu u održavanju baze C ++ koda. Interno i eksterno, tvrtka je imala problema s obukom i zapošljavanjem na ovoj osi, jer se čini da je vrlo mali broj programera za mobilne uređaje zainteresiran za C ++.

Premještanje tima iz Dropboxa u izvorni preko Kotlina i Swifta za Android i iOS ima prednosti.

Zapravo, jezik C ++, zajedno sa C koji više ne navodite, služi kao zajednički nazivnik za upravljanje takvim problemima.

Nije teško zamisliti da ga je početna skupina inženjera integrirala za upravljanje određenim kritičnim aspektima pozadine. Samo se na stol mogu postaviti pitanja o kvaliteti sučelja C ++ s ciljnim platformama.

izvor: https://blogs.dropbox.com/


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.