Facebook speeds iPhone app dev wih React Native

26.03.2015
For Web developers, making the jump to building full-fledged smartphone apps can be daunting. Facebook could ease the transition with a newly open-sourced framework its engineers developed to build apps for Apple devices.

The React Native framework provides a way to build app user interfaces for Apple iOS devices using JavaScript, a programming language well-known to many Web developers.

"What we've found is that when we build with React, our code is a lot more predictable. This predictability makes it so we can iterate more quickly with confidence, and our applications are a lot more reliable as a result," wrote Tom Occhino, Facebook software engineer in a post announcing the release during the company's F8 conference, ending Thursday.

React Native is an offshoot of React, a Facebook-built JavaScript framework released two years ago for building mobile app user interfaces with HTML5 and other Web standards.

React Native takes advantage of the native programming hooks offered by Apple devices and the iOS operating system. Using native hooks from the device's operating system can speed performance. It also opens up use of capabilities offered by the device itself or the OS, such as date pickers and mapping capabilities.

Building interfaces for native applications can be more difficult than building Web interfaces, Occhino explained. A program under development needs to be compiled each time it has to be tested, which slows the development process. The work is more labor-intensive. In some cases, sizes and positions of elements must be calculated by hand.

React Native tackles both of these issues. It uses tools developed for React that automatically calculate the sizes and positions of elements. Because React Native uses JavaScript, developers can see their changes as soon as they are applied. By forcing the programmer to break an application into discrete components, the React programming model can be more intuitive, compared to JavaScript itself, according to Facebook.

Facebook plans to release a version of React Native for building Android apps in the near future.

React Native is the latest in a series of programming tools Facebook has released as open source, in hopes other parties would reuse the software and submit improvements. React Native joins the HipHop Virtual Machine (HHVM), which compiles PHP code to run more quickly, and Flow, a JavaScript error checker.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Joab Jackson