零基础能不能学习HTML?这个粤嵌科技的小编就想和大家说,首先要明确自己是想要通过自学呢?还是想要参加HTML培训机构了。如果说你是想要自学习的话那么你要知道你自己的自学能力行不行的,如果说你是零基础的话,那么你就可以把学习HTML比喻成你零基础学习一门新语言吧。但是这个HTML除要学会它的理论之外你还要掌握好它的实操才可以的,因为在HTML工作中实操是非常的重要的,你去面试的时候如果说你的实操部分不强的话那么你是很难面试的上工作的,所以说如果你是零基础想要自学习HTML的话那么你要能保证你自己的理论实操的部分都要掌握的好才可以。
如果说你是零基础想要学习HTML技术的话,那么粤嵌科技欢迎大家来我们公司进行实地考察
http://www.gec-edu.org/
几篇文章已经基本上把Web App和Native App的优劣讲清楚了。
不过还是想提醒大家注意,Web App,现在有时候也称为轻应用,不仅是通过浏览器就能打开的应用。现在随着HTML 5在手机端的优越性,已经慢慢称为了Web App的主流。Web App除了出现在PC的浏览器中,还大量出现在手机浏览器中或一些平台级应用中,例如微信中大量的交互内容,都属于Web App的范畴。
HTML 5取代的只是之前的HTML和Flash
HTML5是一种彻彻底底的Web技术,包括最新的网页端的脚本语言HTML5语言、Javascript 2.0和CSS 3.0这三部分。HTML5的主要目标是取代原有的脚本语言HTML,提供更好的交互效果和更丰富的API,以及更高的运行效率。
HTML5取代的是很多很多年前产生的HTML版本。熟悉互联网的人肯定清楚,互联网可谓日新月异,但是支撑整个互联网的语言HTML,在HTML5以前却变化不大,这个严重阻碍了互联网本身的发展,这才是产生HTML5的一个根本原因。还有以前也常见Flash的应用场景,会被HTML5取代。
现在对HTML5的指责,主要是针对HTML5的性能,也就是常说的“用户体验”这一方面,由于HTML5是脚本语言,再加上Javascript 2.0实际上还是单线程运行的,运行的效率上客观地讲,确实比不上Native App。但是,如果用HTML5做前端的轻应用,哪怕是在手机上实现,性能已经足够了,这也是为什么越来越多基于HTML5的轻应用出现的手机端的原因。另外,随着浏览器对HTML5的支持越来越好,手机CPU速度越来越快,以及各种引擎对HTML5的优化,用户体验会越来越好。
因此,很多人主观的把整个Native App行业和HTML5对立起来,这本身就是有问题的。 另外,反观Native App,开放应用数量庞大,小团队众多(赚钱的很少),同质化严重,模仿门槛低,刷榜问题严重,都困扰了Native App的发展。
HTML5的新一轮高速增长:微信
下图是今年下半年的HTML5搜索指数,有一个明显的提升。除了基于HTML 5开发的Web本身,随着微信的发展,大量的基于HTML5的内容找到了出口,内容数量疯狂增长中!而现在对HTML5的需求还远远没有得到释放,相信很快很多其它的平台也会支持HTML5的内容,让我们拭目以待!
在社会化媒体和自媒体的大环境下,客户把更大精力放在实用的微信轻应用上,而越来越少直接花钱购买Native App,道理很简单,如果采用Native App的方式,我要传播到1000人,并让他们下载安装是个非常难的事儿,但是如果做成轻应用往朋友圈里一传,可能1万人都很轻易达到。
HTML5慢慢演变为一个刚性需求,在需求旺盛的带动下,前端程序员/HTML5工程师的工资水平原来越高,而且好的还非常难求。另一方面,Android和iOS开发工程师,市场需求已经明显放缓。
更有大量的HTML5的公司顺势而生,做大量的Web App应用。产生HTML5内容的成本也越来越低,伴随这技术的发展,包括国内外都有大量的可视化工具可以快速生成基于HTML5的Web App应用。
对于HTML5被Facebook弃用这件事,除了记住扎克伯格的懊悔之外,我们不能忽略的是还有一篇报道,如下图所示。
这篇报道说明了什么?并不是Facebook本身不用HTML5了,而是Facebook这个Native App不直接采用HTML5的方式开发。这两者的区别可就太大了,这也引出我的下一个问题。
HTML 5适合小公司,适合做内容
我是HTML5的坚定支持者,但是我至少现在还不认为HTML5可以做所有东西,至少一些太过复杂的重度游戏、一些大型的门户(包括上面说的Facebook)、一些涉及高运算或复杂算法的应用,我个人认为至少现阶段还不适应用HTML5去开发。
所以...HTML5和Native App会走向融合 !
HTML5 Web App和Native App各有优势,互为补充,能不能不把技术直接对立起来,而是用技术的进步来解决技术还存在的问题,使二者从对立走向融合。而且我个人觉得结合的场景最好在大型的Native App平台,并且这些平台是可以UGC或PGC产生内容的。
我们以微信为例,微信这个应用本身就是一个Native App,但是在这个巨大的平台里面,又可以容纳海量的HTML5 Web App,这样的轻应用,充分发挥Native App的运行效率,同时又以海量的Web App来扩充其内容,给用户带来更丰富的体验和更优质的交互内容,这样不是很好吗?
现在来看一下如果基于HTML5的Web App和Native App融合,形成一种Hybrid App,会给我们带来什么好处吧:
同时还解决了,海量的Native App利用效率不高的问题,通过Hybrid App内部的Web App来动态提供交互内容,而不是安装按量的Native App应用。
另外,由于服务的统一性,降低了需要学习每个Native App的用户时间成本。
Hybrid App的优势显而易见,成本低、跨平台、不用下载-安装-更新、动态数据、维护容易,而且有现成的内容出口。而且我们这里的Hybrid App主要是指在大型平台化应用(Native Platform App)结构之下的Hybrid App,可以理解为1个Native App对应N个Web App的结构,或是一个母Native App和N个子Web App的结构,而不是简单的把Web开发和Native App开发做一个结合。
在技术上,Hybrid App的架构好处也显而易见,例如,HTML5不能自动播放语音或视频,但是微信可以。同时,微信也开放各种接口给内部的Web App调用,这样就扩展了原生的HTML5 Web App的功能,且更好的提供服务,开发上也非常简单。
本文作者是孟智平,VXPLO 互动大师 CEO,邮箱:troy@vxplo.com
致歉:36氪上周发表的一篇讨论HTML5未来的文章《Web与App的未来不是生死之争,而是融合,腾讯就在这么干》是根据笔名为Hans的作者(移动互联网从业者,微信号1396255225)之前的投稿修改,调整了文章结构、更换了标题,导致部分观点的表述和原文有所出入。在等待Hans邮件审核的时候编辑误触发表,虽然责任编辑一经发现后马上撤下,但是还是给Hans本人带来困扰。对本文对Hans可能造成一切损失表示歉意,同时责任编辑会承担相应处罚,未来我们也会加强和投稿者的沟通,优化流程,保证此类事件不再发生。再次同时向36氪的读者和Hans致歉。
果你之前没有看过我的《前端工程师如何月薪过4万》这里建议大家仔细读读一下,因为里面有整个前端工程师成长的技术路线图和我的故事。同时很多小伙伴问我的学历后来没再考考么,我是考了成考的北京航空航天大学,也马上快毕业了。不过我觉得这件事不足为提,因为国内的高等教育你们懂的。这里我们开始从0来讨论一下初期从事前端用jQuery多是不是真的很low。
前端的学习路线比较陡,一般入门很好入门几天就可以搞出来一个百度首页,然后学学基础的JavaScript知识再配上jQuery基本可以应对一般企业的要求。在这个行业里很多人直接认为jQuery就是JavaScript,同时新框架新思想层出不穷。所以一些逼格高点的开发人员总会拿jQuery当成一个标准来衡量一个前端开发人员在什么阶段。甚至拿jQuery当成一个梗来相互间调侃。大家可能会说那意思就是只会jQuery就是low喽?非也。
现代化的前端让这个时代都发生了变化,你会到处听见VirtualDOM、Web Components、MVVM等等,如果你入行不久听着头都大了,我们先姑且不管这些,回到最初前端的本质是什么呢?能写出符合W3C标准的代码能够实现业务逻辑。然而HTML5+CSS3其实已经是一块很大的学科,之前有人问我过说C语言和CSS哪个难,我告诉他CSS难,为什么呢?因为他从不按套路出牌,而是由无数技巧组成。同时CSS3的出现会让我们去探索到浏览器的渲染原理比如3D触发的硬件加速,那么什么条件会触发硬件加速呢?Compositor、GraphicsLayer、RenderLayer、RenderObject是什么关系?HTML的语义化到底有什么用?先别忙着鄙视别人,我觉得至少这些答案在你头脑应该很清楚。业内很多大牛只懂HTML5+CSS3并且用的炉火纯青的人大有人在,腾讯这样的大公司也有网页重构部专门招HTML5+CSS3的童鞋。
那我们再回到jQuery,它确实一颗前端的常青树。经过了这么多年,依旧挺拔在前端的圈内。为什么呢?因为传统的前端绑定事件发送请求以及他周边的插件系统太完善了。但是一些新框架新思想确实让编码和性能有了更大的提高,比如MVC的库、模块化的库等等,不过这些库就真的需要么?非也。还是要看企业内部实际的需求,用对应的库解决对应的问题这才是正解。
所以你只会jQuery并不low,人就是如此,哪怕有些人某一方面牛上天了又如何?他还不是有不懂的地方。比尔•盖茨不会拍戏,张艺谋不会唱歌,周杰伦不会写程序。主要是要在自己现在的领域不断成长才是正解,但是如下2点你一定要注意。如果你不听我的话或者坚持不做到,那你确实low
1.开拓眼界思路,能够知道当下发展的趋势和哪些库出现的原因做做小Demo去听一些技术大会看看人家用这些新的库做了什么。
2.千万不要以为jQuery就是JavaScript,这样你基本就有点过分了。那说到这里,希望在刚入行的同学们一定要好好学习JS这门语言,这是一个十天创造出来的语言,它里面有非常多的坑。比如下面这种面试题。
Object.prototype.name=1;
//console.log(1.name);
console.log(1.0.name);
console.log(Function.name);
这个题出的要点过,但是很多面试官很愿意去问面试者看你对于JavaScript能掌握到一个什么地步。但是JavaScript几个核心的知识点,你一定要Get到。比如闭包、作用域、Prototype、按值传递和按址传递、OO、This这些要是没掌握好一般公司估计你是过不去这个关卡的,因为这些要是掌握不好很容易在平时的开发阶段出现一些问题。再有就是要多用jQuery周边的库和尽可能的使用它的API比如委托,尽量去读读这些库的源代码比如Validate它的代码并不复杂,然后接下来就是自己尝试自己写一些组件库并给别人用,在给人家写组件的时候很多概念你会慢慢熟悉比如命名空间、比如闭包的关键作用。同时jQuery的经典套路你也要自己搞清楚,比如链式调用、Ready实现和Onload区别、Ajax跨浏览器的封装、绑定事件的封装、Live的实现。最后就需要好好读读人家的源代码了,他的源代码博大精深。如下是它的初始化代码。
你可以通过网络上的视频或者书籍,这里推荐一本《jQuery技术内幕:深入解析jQuery架构设计与实现原理》。一本好书,就像高级武功秘籍一样,哪怕只从里面领悟个一招半式,功力提升起来都是惊人的,眉超风学的那半生不熟的九阴真经就是证明。所以练武功和写程序一样,不在乎你修炼了几十年还是几百年,也不在乎你少林武当娥眉拜了多少门派,关键是你有没有把一门武艺炼到出神入化的境界。学武艺,最忌讳总想着去追求大而全,你要明白,其实只需要“打狗棍法”这么一招,就足够你掌舵丐帮,受用终生。你真的把jQuery大彻大悟那么别人都会敬你几分。
最后附上《大唐玄奘》的一句话,一个人影子无法铺满大地,但有些声音可以传得很远。我希望通过我的文章就是一种技术的声音,能够给你们一点点启示足矣。
京程一灯,梦起的地方,我们始终相信通过努力,可以改变自己的命运。
我们始终相信,通过坚持不懈,可以为大家解决更多的前端技术问题。
我们始终相信,时间可以证明,我们可以为广大IT从业者解决前端学习路线。
HTML5,CSS3,Web前端,jquery,javascript,前端学习路线,各类问题,我们都可以为你解决。
更多技术好文,前端问题,面试技巧,请关注京程一灯(原一灯学堂)
本文为头条号作者原创。未经授权,不得转载用于商业用途。
*请认真填写需求信息,我们会在24小时内与您取得联系。