Facebook отвори кода на React Native и за Android

Facebook създадe своята React JavaScript библиотека по такъв начин, че софтуерните им инженери да разполагат с възможност за изграждане на интерфейси за iOS, Android и уеб с един и същи код. Сега компанията предостави тази супер сила на всеки желаещ разработчик, като отвори кода на последната част от React трилогията – React Native for Android.

React с отворен код излезе още през 2013 г., а React Native – по-рано тази година на конференцията F8. Но версията за Android означава, че инженерите, обучени по React, ще са в състояние да разработват приложения за всяка основна платформа. Това би позволило както на стартъпите, така и на големите технологични компании да се справят с по-малък брой софтуерни специалисти, както и да не се притесняват при наемането на такива, които са специализирани конкретно за iOS или Android. По този начин екипите от програмисти ще могат да разработват нови характеристики много по-бързо и да избегнат забавянето при пренаписването им от iOS за Android.

Facebook съобщи новината за отворения код на React Native for Android миналата седмица, в GitHub на своята ежегодна @Scale конференция. 1 800 директори и инженери от Facebook, Twitter, Google, Box, Pinterest, Microsoft и други компании се събраха, за да си сътрудничат за подобряване на своите инфраструктури и ефективността на инженерната си дейност. Интересно е да се отбележи и, че общият брой на проектите с отворен код, за които са допринесли посетилите конференцията компании, надхвърля 4 500.

А защо отворен код?              

Вероятно мнозина недоумяват защо Facebook би подарила толкова мощна технология като React, когато може да я запази само за себе си и да разполага с огромно инженерно предимство пред конкурентните си социални мрежи. Том Очино, инженерен Facebook мениджър, дава три големи довода за това:

  • Сътрудничеща си общност. Том обяснява, че самите те са получавали наистина голямо сътрудничество от общността – от разработването на характеристики до справянето с бъгове.
  • Вербуване. „Хората са наистина заинтересовани да научат повече за технология, която задвижва нещо толкова голямо, колкото Facebook. И постепенно се въодушевяват да се присъединят към екипа, който я е създал”, казва Том Очино.
  • По-лесно приобщаване. „Това предоставя на всеки инженер, който се присъедини към Facebook, добър начален тласък, тъй като той вече ще разбира нашите рамки”, пояснява мениджърът.

В крайна сметка Facebook получава много повече от отварянето на кода си, отколкото дава в замяна. А също така ходът й е един прекрасен алтруистичен жест, който помага на компанията да се свърже със света. „Facebook не може да изгради целия софтуер”, споделя Очино. „Най-доброто, което можем да направим, е да дадем (на разработчиците) инструментите, така че да са в състояние те да продължат мисията”, смята той.

Научи веднъж, пиши навсякъде

От край време Светият Граал при разработването на различни платформи е „кодирай веднъж, стартирай навсякъде”, но разликите в основите на уеб, iOS и Android не позволяват това да се превърне в реалност. React създава едно абстрактно пространство между трите платформи, в което, ако веднъж сте научили React, ще сте свободни да пишете приложения навсякъде.

Ето и един прост пример. По-рано тази година Facebook създадe своето Ads Manager приложение за iOS и Android за половината от иначе необходимото време – естествено, с помощта на React. Вместо за 18 месеца общо от компанията написаха апликацията за iOS за 5 месеца, а след това я пригодиха за Android за едва 3.

Технологията също така дава възможност на Facebook да се завърне към своето Move Fast лидерство, което поддържаше, когато беше само уеб платформа, която постоянно транспортираше код и тестваше нови характеристики. Откакто социалната мрежа се адаптира към мобилната ера, компанията трябваше да разчупи инженерния си екип, за да включи в него отделни специалисти по уеб, iOS и Android разработване.

„Бих сравнил отворения код с продължителни процеси като еволюцията и ерозията”, споделя инженерният Facebook директор Адам Улф. По думите му, докато инвестициите в отворен код гарантират поддържането релевантността на софтуера, то вложеното няма да спира да се отплаща.

Задържането на даден софтуер единствено вътре в компанията би могло да доведе до опасен застой. „С течение на времето това би разрушило частния фирмен софтуер и би наранило компанията”, смята Улф.

Статията е подготвена със съдействието на Софтуерен университет – място, в което се обучават софтуерни инженери.

Кристина Кацарска

Кристина Кацарска

Коментар