我一直在考虑这个系列的第一个教程该从什么框架开始写起。
是我自己入门时候学习的angularjs,还是大部分web前端入门的jquery?
看过我的教程的朋友应该对我的学习方式有一点点的了解。
我一直觉得学习前端没有那么多东西需要理解的,只要先记住用法,用的多了,慢慢的就能理解了。
我不敢说自己的学习方式是最好的,但是如果此时你刚好没有更好的选择,不妨考虑一下我的方式。
对于自学,我还是有点资格发言的。从毕设到毕业了出来工作,我就一直在自学的道路上摸爬滚打。
我的思路就是具体问题具体分析,不要想着先把理论都学习了。
而是应该先付诸行动,先实现,再修改,再重复,最后理解和掌握。
或许从小学到中学甚至大学,我们总在强调一个事情-基础。
我不是想否认基础,而是想着换一种方式解读。
基础是很重要,可是当你没有基础的时候,强调他的重要性又有什么意义呢?
程序毕竟不像数学和物理这样的学科,我们不需要先掌握了牢靠的理论知识再付诸行动。
web 前端是一个比较全面却庞大的知识体系,新技术也层出不穷。
要想先把东西学完再付诸行动,可能成本还是比较昂贵的。
所以我觉得先解决问题,再慢慢地完善自己的知识体系是一种比较合理的自学方式。
我个人觉得小程序是目前所有比较流行的移动开发技术中最简单。
所以对于零基础入门的开发者或者其他端程序员转web前端的可以优先选择学习小程序。
因为他和现在的主流MVVM框架很类似,学习曲线又相对平滑,可以作为其他更复杂的,功能更强大的框架,如angularjs、vue等的前置技能。
为什么说小程序比较简单?
一、小程序里没有html,它的样式结构是一些封装的组件,所以只要掌握简单的javascript和css知识就能着手开发。
二、小程序的推出本来就有一点弱化开发人员的重要性的作用,可能这么描述不是很正确,但是其实我觉得只要一点点配置文件就能开发小程序,估计也是小程序发展的一个方向。它本身就是做为一个轻量级应用而推出的平台。无论是开发工具,开发环境,设计规范,接口文档的设计,无一不是根据简单化的标准的。随便拿两个项目源码比较,就能发现,小程序有着更加简单的开发环境,只要安装了微信开发者工具,不需要再安装其他的任何环境。也没有其他web技术复杂的打包和发布流程。再者他对设计规范做了比较严格的要求,无形中也减轻了很多前段的工作量。
我相信不少刚接触前端的朋友可能分不清,小程序和h5应用有什么差别,有什么不同,这里我对这几个概念做一个简要的说明。
1、Web App
在小程序出来之前,我们在微信上通过链接打开的应用就是web app,其实他还是一个网页,只是通过响应式设计(这里的响应式设计和响应式开发有明显的概念上的区别哦)使的pc上的页面适合在移动端设备上显示和运行而已。这里的移动端设备不仅仅指手机和pad等设备,同时包括路边的广告牌和电视等设备。
2、native app
又叫做原生app,也就是我们常说的ios和安卓的应用。这个比较好理解,比较明显的好处就是性能好,可以调用大量的底层接口,比如webapp就无法使用照相机。(我们做的选择图片上传,并不能算是使用照相机。只能算是一种投机取巧的解决需求而已。)
3、hybrid app
是一种原生开发结合web app而产生的混合式app,看起来是一个原生app,他也需要安装到你的手机上,但其实这里的原生技术其实只是提供了一个容器,webview,将webapp包装起来,在容器里运行的实际上还是一个webapp,但是可以通过web与原生交互的方式,实现调用底层接口的目的,实现一些webapp无法实现或者较难实现的功能。这里需要明确的一点是并不是混合了webapp就一定称之为hybridapp,因为现在市面上基本上没有纯原生的app,多少都是有一点点结合web技术的,这样有一点小改动,用户不需要更新或者重装app。这个定义其实可以按时原生技术和web技术的比重来区分会比较好一点。
4、小程序
其实小程序也是web技术中的一种应用,但是严格来说,它又不是一个webapp,它没有html,实际上小程序可以理解为根据不同的平台,将分装好的组件编译成对应平台的相应可以运行的组件。这么说起来,小程序应该是属于hybridapp。但是我觉得小程序的意义不在意它使用的是什么技术,它并不仅仅是一个技术或者前端框架,它更可以说成是个一种生态,就像ios生态一样。还是引用官方的一段话来说明小程序吧。小程序是一种不需要下载安装即可使用的应用,他实现了应用’触手可及‘的梦想,用户扫一扫或者搜一下即可打开应用,也体现了’用完即走‘的理念,用户不用关心是否安装太多应用的问题,应用将无处不在随时可用,但又无需安装卸载。
本次的课程结束之后我们的目的是掌握小程序的开发,完成类似--豆瓣评分--这样的小程序。只要大家跟着教程一起动手,相信一定会有所收获的。
大家可以搜索一下豆瓣评分,看一下这个小程序。
感谢您的阅读。
有什么问题可直接联系我本人微信 yu_xiaohu
我是小虎,希望你开心。
希望大家关注我的个人公众号,有什么更新会在上面同步推送。