谈谈近期学习Nativejs和reactNative的一些感受
因为前段时间,对dcloud推出的Nativejs和facebook推出的reactNative都做了一点点浅薄的研究。因为研究的很浅薄,所以仅代表我个人观点,谈谈对运用这两个产品的些许感受。
说起dcloud的Nativejs,还是先从他的IDE编辑器开始说起。他们推出的Hbuilder,确实蛮好用,写起代码来确实很快。之前觉得sublime好用,但是当你用了Hbuilder之后,sublime顿时逊色不少。用了一段时间的Hbuilder,感觉其唯一的缺点就是用git库pull下来的文件,不会时时刷新。
说到用Hbuilder开发APP。我们可以下载其官方的案例,开发学习成本是很低的,入手极快,因为它就是运用html5及一些css做得一些开发。再看看他们用js封装的一些原生用法:
安卓:http://www.html5plus.org/doc/zh_cn/android.html#
ios:http://www.html5plus.org/doc/zh_cn/ios.html
囊括了大部分的APP开发接口。
Nativejs打开窗口,用的是openWindow的方式,类似创建一个新的Webview,关闭窗口,就是类似与关闭一个Webview。窗口之间的传值,可以用
extras:{.....//自定义扩展参数,可以用来处理页面间传值},
这种方式。也可以用触发自定义事件的方式。运用openWindow的这种方式,解决了h5中历史返回死循环的问题。
但是,我用下来有些问题,因为很多代码都是用html5写的,当有些功能用html5和它封装的js都能实现的时候,我们会不自觉地运用之前老的html5的方案解决一些问题,最终还是导致我们的APP效率变低。说白了,用Hbuilder开发的APP和我们之前用APPCan和phoneGap开发的移动应用没有什么区别,都是hybrid开发。
但是当facebook推出reactNative之后,迅速火了!我身边不少做安卓开发的同学,开始研究js了,他们开始研究reactNative了,因为reactNative可以跨平台做安卓和IOS开发,而且效率并不低!
为什么这么说呢!因为reactNative逻辑是用js写的,但是UI全部是原生的,他把js渲染成android和ios代码了。
但是呢,reactNative学习成本相对较高。可以看一下他的文档,我们搭建环境,要我们安装nodejs,java运行环境,win7电脑要安装android的SDK等等。它运用的是全新的语法jsx。在学习reactNative之前,最好要先学习一下reactjs,关于reactjs入门,我个人觉得阮一峰写的一篇博客还不错,推荐大家看一下:http://www.ruanyifeng.com/blog/2015/03/react.html
谈谈近期学习Nativejs和reactNative的一些感受的更多相关文章
- Android开发学习之路--React-Native之初体验
近段时间业余在学node.js,租了个阿里云准备搭建后端,想用node.js,偶尔得知react-native可以在不同平台跑,js在iOS和android上都可以运行ok,今天就简单学习下rea ...
- Proxy源代码分析——谈谈如何学习Linux网络编程
Linux是一个可靠性非常高的操作系统,但是所有用过Linux的朋友都会感觉到, Linux和Windows这样的"傻瓜"操作系统(这里丝毫没有贬低Windows的意思,相反这应该 ...
- Proxy源代码分析--谈谈如何学习Linux网络编程
http://blog.csdn.net/cloudtech/article/details/1823531 Linux是一个可靠性非常高的操作系统,但是所有用过Linux的朋友都会感觉到,Linux ...
- CSP2019-S2参赛总结 暨 近期学习反思
前言 岁月不居,时节如流.眨眼间,2019的联赛就已经落下帷幕了,回忆这一年的学习,有许许多多的事情想写下来.趁联赛结果还未出来,赶紧写下这篇文章,以记录我这段时间的学习和生活. "你怎么又 ...
- 献给初学者:谈谈如何学习Linux操作系统
本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式 ...
- hadoop data 相关开源项目(近期学习计划)
计划学习几个hadoop相关的开源项目: 1.spring hadoop 2.spring batch 3.spring redis 4.spring mongo 相关项目样例:https://git ...
- SHELL 近期学习
由于项目中很少使用到shell脚本所以.只是偶尔自学一点.慢慢积累.下面就把近段时间积累的发出来.学习. #sort sort 按首字母排序 sort -n 按数字大小 从小到大排序 sort -rn ...
- 谈谈如何学习Linux操作系统
献给初学者:为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式展现给大家. @hcy 更多资源:http://blog.sina.com.cn/iihcy 一. 选择适合自己的linux ...
- 近期学习python的小问题及解决方案
①定义空的二维列表来读取放置文件的内容: 在python中定义二维数组 - woshare - 博客园https://www.cnblogs.com/woshare/p/5823303.html ②调 ...
随机推荐
- Python常用模块sys,os,time,random功能与用法,新手备学。
这篇文章主要介绍了Python常用模块sys,os,time,random功能与用法,结合实例形式分析了Python模块sys,os,time,random功能.原理.相关模块函数.使用技巧与操作注意 ...
- [转]Android Adapter以及getView()方法的理解
Android Adapter基本理解: 我的理解是: 1.一个有许多getter的类(就是getView(),getCount()....这些方法) 2.有多少个get方法?都是什么? 这些gett ...
- 0.5 Linux的联通性命令汇总
linux下网络端口连通性测试命令汇总 一.telnet ip port 1.1 安装: 安装telnet服务 [centos.ubuntu]安装telnet命令的方法.] yum list teln ...
- 解决mysql导入导出错误问题
1.datetime类型: 当datetime的值为0000-00-00:00:00:00时,mysql是不接受此条数据的,当然可以 insert ignore into table--------- ...
- 一、threejs————灯光阴影
threejs设置阴影有三个注意点 1.只有支持阴影的灯光才可以 pointLight,spotlight,directionallight 2.添加摄像机辅助器 THREE.CameraHelper ...
- C# 截取屏幕
/// <summary> /// 截取屏幕 /// </summary> /// <param name="x">起点X坐标</para ...
- PPT、Word、Excel模板免费下载
本篇文章可能只有寥寥数字,但他的作用可能很大,可能帮助到很多朋友.本人喜欢搜集一些资源,也爱免费分享,因为好东西我藏不住,总感觉分享出来更快乐. 网址:https://www.bangongziyua ...
- 一个margin就可以让块状元素响应居中,很实用
之前总结过水平居中的很多方法,但今天在<css世界>这本书里看到margin的一个特性,一行代码就搞定很实用,分享一下 margin: auto能在块级元素设定宽高之后自动填充剩余宽高.m ...
- PHP MySQLi Prepared Statements Tutorial to Prevent SQL Injection
https://websitebeaver.com/prepared-statements-in-php-mysqli-to-prevent-sql-injection#introduction On ...
- JS实现登录页密码的显示和隐藏功能
在登录页经常会用到通过点击文本框的类似小眼睛图片来实现隐藏显示密码的功能,其实实现原理很简单,通过点击事件来改变input的type类型,具体过程看代码: 在没给大家分享实现代码之前,先给大家展示下效 ...