做一件事情之前,先弄清楚3件事
what:这是啥,react-native是Facebook开源的一个跨平台的js框架,Learn one,write Everywhere
why:市场需要,大家都在聊,公司要求会提。加上Android原生的瓶颈
how:这个估计是最麻烦,也是最需要花时间和精力去琢磨的,2年前就说要好好研究,结果三天打鱼两天晒网,不了了之了。学习这东西还是要沉下心,参考做Android的经验,我打算分下面几步来开展:
1、基于window系统搭好开发环境,实现helloworld,找一款js编辑器,可以调试,最好还能预览,了解js部分的文件结构,比如主要包含哪几个文件,都是干嘛用。
2、了解js的功能如何对应上Android原生功能
2.1、基本控件使用,无非就是text,image(本地图片、asset 目录、资源目录、网络图片),list,scrollview如何使用,先弄懂这几个,其他的可以参考文档
2.2、js里面如果创建多个页面,并实现页面之间的跳转,并且把数据带过去(最好能把消息回传),如何把代码放在不同的文件或者包里面(总不能把所有的代码都卸载app.js中吧)
2.3、js的基本网络请求处理,常用的get、post(json/表单的方式),json数据解析(xml不做硬性要求)
2.4、js如何实现同步、异步操作
2.5、js与Android直接的交互(数据传递)
3、深入理解js的特性,尽可能多的实现Android原生功能
3.1、本地数据存储,file存储,preference、sqlite
3.2、后台服务的使用,server
3.3、进程间的数据共享,contentprovide、aidl
3.4、监听系统广播,创建自定义的广播,broadcast
4、周边的特性实现,比如动画,jni的调用,如何把设计模式融入到js代码中
另一方面,对js的基本语法也需要同步学习,积少成多,带着问题去学习,带着目的去研究
用一个APP来贯穿整个项目,就用网易云音乐好了