『壹』 什么是 Native、Web App、Hybrid
Native App
Native App是一种基于智能手机本地操作系统如iOS、Android、WP并使用原生程式编写运行的第三方应用程序,也叫本地app。通常使用的开发语言为java、C++、Objective-C。Native App的优点在于性能和用户体验最佳,但开发和发布成本较高。网易管家App是一个典型的例子,开发技术包括Swift,OC,Java等。
WebApp
WebApp与WAP不同,WAP更侧重于使用网页技术在移动端做展示,包括文字、媒体文件等。Web App更侧重“功能”,是使用网页技术实现的App。Web网站一般分为MPA(Multi-page Application)和SPA(Single-page Application)两种形式,WebApp通常泛指SPA形式开发出的网站,这更接近于App的形态。WebApp的优点在于开发和发布成本最低,但性能和用户体验可能不如Native App,且受到浏览器处理能力的限制。
Hybrid App
Hybrid App是一种混合模式的移动应用,介于Web App和Native App之间。这种模式通过Native提供统一的API,使用Html+Css实现界面,js来编写逻辑,调用API,最终的页面在Webview中显示。Hybrid App的优点在于开发和发布都比较方便,且跨平台效果明显,但学习范围较广,需要原生配合。举个例子,如FanReact,我爱我家App,东方航空App,富国基金-富国钱包App等。
React Native App
Facebook发现Hybrid App存在缺陷,于是发起了一套新的App开发方案,称为React Native (RN)。使用JSX语言编写原生界面,js通过JSBridge调用原生API渲染UI交互通信。React Native App的优点在于效率体验接近Native App,发布和开发成本低于Native App,但学习有一定成本且文档较少。
Weex App
阿里巴巴开发团队基于RN的成功案例,设计出了一套新的开发模式Weex。Weex强调单页开发模式效率极高,热更新发包体积小,并且跨平台性更强。然而,Weex App刚刚起步,文档欠缺,社区没有RN活跃,功能尚不健全,暂时不适用于完全使用Weex开发App。
『贰』 h5全栈方向是做什么的啊
Node.js流行起来,从而使JavaScript成为一个全栈语言。之前单纯的前端语言可以在后端进行链接使用,用Javascript写后端变得更为普遍,前端程序员开始转向后端或全栈。
JavaScript语言ES6的更新,为JavaScript注入现代语言的特性,有很多新功能模仿高级语言,使JavaScript成为一个可以挑大梁的全方位程序语言。
前端MVC框架百花齐放,前端Web形式的开发慢慢转向APP开发。前端不再只是单纯写html,更像是写程序。
2016年大型公司开始全面介入全栈架构战争中。科技的发展迫使产品能够快速迭代,大公司开始采用垂直扁平化架构,从而产生了对全栈工程师的迫切需求,尤其是在当前全栈开发与机器学习和VR结合的热潮中,更多的就业机会已经转向大公司。
全栈工程师,也叫全端工程师,英文Full Stack developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。那么要成为全栈工程师你需要掌握哪些技能呢?
1.产品设计
ai(作为一款非常好的图片处理工具)
coredraw(平面设计软件)
2.界面设计
ui
ps
3.前端开发移动优先
ios app(oc/c++)
Android app (java/c++)
hybrid app(混合式移动应用)
移动web(html5/js)
4.wdb前端语言
js
html5
css3
前端框架
5.web服务器(如果ahache并发量为几千,nginx并发量可以达10万)
nginx(c写的)
apache
6.缓存服务器
memcached
redis
7.后台业务服务器
pathon 脚本语言 (边解释,边运行)
c/c++
java
php 脚本语言
node.js 脚本语言
erlang 脚本语言(一般由于游戏开发)
8.数据库(互联网公司)
mysql (各有各的优势)
mongo db
9.文件系统(用户量很大的时候,上百/千万,存储图片等)
fastdfs(淘宝)
gfs(google file system)
hdfs