{"id":338678,"date":"2017-04-19T03:45:01","date_gmt":"2017-04-18T19:45:01","guid":{"rendered":"http:\/\/techcrunch.com\/?p=1477329"},"modified":"2017-04-19T03:45:01","modified_gmt":"2017-04-18T19:45:01","slug":"facebook-expands-its-open-source-portfolio-with-new-ui-framework-for-android","status":"publish","type":"post","link":"https:\/\/people.utm.my\/asmawisham\/facebook-expands-its-open-source-portfolio-with-new-ui-framework-for-android\/","title":{"rendered":"Facebook expands its open-source portfolio with new UI framework for Android"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=738\" class=\"\"\/><\/p>\n<p>At its <a target=\"_blank\" href=\"https:\/\/techcrunch.com\/tag\/f82017\/\">F8<\/a> developer conference, Facebook today <a target=\"_blank\" href=\"https:\/\/code.facebook.com\/posts\/1187475984695956\">announced<\/a> that it is <a target=\"_blank\" href=\"https:\/\/github.com\/facebook\/litho\">open-sourcing<\/a> <a target=\"_blank\" href=\"http:\/\/fblitho.com\/\">Litho<\/a>, a declarative framework for building efficient user interfaces on Android. Litho is the same framework Facebook uses internally to build its own Android app, which is currently being used by more than a billion people every month.<\/p>\n<p>The company first talked about this new framework last October. At the time, the company noted that the issue it was trying to solve was mostly about building a more performant framework for displaying the Facebook News Feed, which tends to be more complex than the scrollable lists for which the standard Android tools are optimized. Those lists tend to use Android\u2019s <a target=\"_blank\" href=\"https:\/\/developer.android.com\/guide\/topics\/ui\/layout\/recyclerview.html\">RecyclerView<\/a>, but in order to get to the 60 frames per second that modern device screens now typically support (and which users expect), the RecyclerView simply isn\u2019t fast enough for more complex applications.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1478318\" src=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=1024&#038;h=572\" alt=\"\" width=\"1024\" height=\"572\" srcset=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=1024&#038;h=572 1024w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=2048&#038;h=1144 2048w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=150&#038;h=84 150w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=300&#038;h=168 300w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=768&#038;h=429 768w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_124552.jpg?w=680&#038;h=380 680w\" sizes=\"(max-width: 1024px) 100vw, 1024px\"\/><\/a><\/p>\n<p>\u201cAs UIs become increasingly sophisticated, it gets harder to complete all the rendering work that needs to get done in this time frame,\u201d Facebook\u2019s Pasquale Anatriello and Marco Cova write in today\u2019s announcement. \u201cThis proves to be especially challenging with dynamic scrolling surfaces, as new pieces of UI are constantly being introduced on screen.\u201d<\/p>\n<p>Litho\u2019s programmers used some of what Facebook learned from React and built a new system that improves scroll performance up to 35 percent. It does that, in part, by breaking down complex views like the News Feed into smaller components (think text, images and videos) that can then be rendered incrementally. It also can take some of those smaller pieces and recycle them without having to keep multiple copies in memory.<\/p>\n<p><a target=\"_blank\" href=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1478339\" src=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=1024&#038;h=603\" alt=\"\" width=\"1024\" height=\"603\" srcset=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=1024&#038;h=603 1024w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=2048&#038;h=1206 2048w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=150&#038;h=88 150w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=300&#038;h=177 300w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=768&#038;h=452 768w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_130745.jpg?w=680&#038;h=401 680w\" sizes=\"(max-width: 1024px) 100vw, 1024px\"\/><\/a><\/p>\n<p>As Facebook engineering manager Lucas Rocha and Facebook engineer Emil Sjolander told me earlier this week, it\u2019s worth noting that while this focus on feeds may solve Facebook\u2019s problems (but isn\u2019t really applicable to other apps), many of the most popular apps today are indeed built around the idea of a feed. Now that it\u2019s open source, other developers outside of Facebook may also be able to implement some of the idea here for other problems, but the team itself is mostly focused on optimizing the product for the use cases Facebook itself sees.<\/p>\n<p>Litho is now available on <a target=\"_blank\" href=\"https:\/\/github.com\/facebook\/litho\">GitHub<\/a>. Facebook is also making a number of tutorials and technical deep dives available on <a target=\"_blank\" href=\"http:\/\/fblitho.com\/\">the project\u2019s homepage<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"512\" src=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=680\" class=\"attachment-large size-large wp-post-image\" alt=\"\" srcset=\"https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=680 680w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=1360 1360w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=150 150w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=300 300w, https:\/\/tctechcrunch2011.files.wordpress.com\/2017\/04\/img_20170418_112626.jpg?w=768 768w\" sizes=\"(max-width: 680px) 100vw, 680px\" \/>&nbsp;At its F8 developer conference, Facebook today announced that it is open-sourcing Litho, a declarative framework for building efficient user interfaces on Android. Litho is the same framework Facebook uses internally to build its own Android app, which is currently being used by more than a billion people every month. <a href=\"https:\/\/techcrunch.com\/2017\/04\/18\/facebook-expands-its-open-source-portfolio-with-new-ui-framework-for-android\/?ncid=rss\">Read More<\/a><\/p>\n<div class=\"feedflare\">\n<a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:2mJPEYqXBVI\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?d=2mJPEYqXBVI\" border=\"0\"><\/img><\/a> <a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:7Q72WNTAKBA\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?d=7Q72WNTAKBA\" border=\"0\"><\/img><\/a> <a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:yIl2AUoC8zA\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?d=yIl2AUoC8zA\" border=\"0\"><\/img><\/a> <a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:-BTjWOF_DHI\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?i=bZgu7P43oRI:Bgpgweb6KBM:-BTjWOF_DHI\" border=\"0\"><\/img><\/a> <a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:D7DqB2pKExk\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?i=bZgu7P43oRI:Bgpgweb6KBM:D7DqB2pKExk\" border=\"0\"><\/img><\/a> <a href=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?a=bZgu7P43oRI:Bgpgweb6KBM:qj6IDK7rITs\"><img decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~ff\/Techcrunch?d=qj6IDK7rITs\" border=\"0\"><\/img><\/a>\n<\/div>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/feeds.feedburner.com\/~r\/Techcrunch\/~4\/bZgu7P43oRI\" height=\"1\" width=\"1\" alt=\"\"\/> <\/p>\n","protected":false},"author":5817,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[25],"tags":[59,66,26],"class_list":["post-338678","post","type-post","status-publish","format-standard","hentry","category-technology","tag-media","tag-techcrunch","tag-technology"],"_links":{"self":[{"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/posts\/338678","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/users\/5817"}],"replies":[{"embeddable":true,"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/comments?post=338678"}],"version-history":[{"count":0,"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/posts\/338678\/revisions"}],"wp:attachment":[{"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/media?parent=338678"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/categories?post=338678"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/people.utm.my\/asmawisham\/wp-json\/wp\/v2\/tags?post=338678"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}