您的位置:首页 > Web前端

想成为前端初学者,我们需要些什么或者需要具备些什么?

2016-08-06 20:30 513 查看
虽然我不是资深的开发者(十年、二十年,能理解到语言设计思想的精妙,能透过语言设计思想的取舍与平衡洞穿语言的发展潜力和应用方向),也不是资深的前端工程师(能深刻理解到html标准的精妙之处,能深度参与到html标准的讨论、制定、发展之中,能详细描述css各个版本标准的差异,以及了解这些新特性会给生产实践带来些什么)。但是我也在做前端啊(管理系统为主的交互型、功能型前端),也在生产实践里加过班,抠过框架潜力,考虑和平衡过整体性能、开发效率、新开发者带入项目难度、持续维护可行性等,也带着框架走入新需求新场景。也可以出来讲讲自己的想法的嘛。

其实我觉得前端、开发者、软件开发者等等相互之间并没有那么大的界限或者差别。因为只要你愿意,你也可以学习一门新语言、一项新技能。比如我自己的职位title大多数时候都是“前端工程师”甚至是“前端web开发工程师”,但是这并没有影响到我基本掌握Python的使用以及积极的去学习Rust(一门新的编程语言)。虽然理解一门真正的编程语言确实需要花费很多的精力。只不过面试找工作的时候还是需要一门主打技能作为求职敲门砖,至少要想办法让面试官知道你能胜任他们的职位需求嘛。

既然是在讨论想成为前端开发者需要什么,当要来讲讲现在前端大概都需要什么。

我觉得前端开发者们做的事情大概可以分为这么三个方向:

信息展示类的方向。例如公司官网、各种blog等等,要求高端大气上档次、各种美观各种漂亮、各种1px也是逼格。

强功能强交互类的方向。比如说各种基于Web的管理系统,一次需求就有上百个的功能页面,每个页面都有很多交互效果;或者类似于web地图那样的,你能通过鼠标与页面内容有各种交互,缩放、旋转、查找POI点、录入自己想要录入的信息、删除一些什么等等等等。

移动端的方向。移动端由于计算性能和网络计费方式等原因,应该把每个页面或者功能消耗的网络流量尽可能的缩减,浏览每个页面或者功能尽可能的省电,还要尽可能的在移动的制造出各种炫酷的效果,还要考虑大多数移动终端其实只是个手机而不是Ipad,屏幕尺寸有限而且有比电脑屏幕多得多的屏幕尺寸规格,有可能还要考虑你的页面只是在一个webview里运行。

然后一定是这样来区分各大方向吗?当然不是,只是感觉这样区分比较符合现在的大部分需求。当然很多地方很多时候都(bi)想(xu)要你能做这样、也能做这样、还能做这样。

所谓的前端嘛,就是需要做一些能给大家看,能给大家点的网页嘛。很多时候我懒得解释自己工作是做什么的时候,就直接说我是做网页的。

做网页嘛,首先得学会怎么使用html标签嘛。据说html标签的一个发展方向就是语义化。好像就是你看完这一段html代码就知道这个代表什么,那个代表什么,然后大家都好理解。html一直在发展,所以有html2.0、html3.2、html4.0、html4.01、html5......然后还有什么xhtml、还有什么各种文档类型,除了W3C之外,还有各种标准组织存在。。。

但是html只能算做标记语言,不能算作编程语言。估计是很多程序员觉得写前端low的地方,只要写个标签在那里,既不要写逻辑又没有牛逼的算法可以搞搞,就写个标签就能讨饭吃了。

写了html,为了能看见的东西漂亮美观上档次,我们当然要写一些style美化页面咯。但是在html里直接写style的确太不美观了,而且很难管理。很早之前就有人搞css了,想要做表现与内容分离。CSS的发展也经历了一个版本一个版本的故事。

会用了html和css之后,就可以做出非常漂亮的页面了,有多漂亮呢?设计师画多漂亮就能做多漂亮,只要自己有能把设计稿还原到1像素的精度的能力。不够漂亮就可以把锅丢给设计师去了。

学会了html和css之后做出来的网页能,其实和打印在纸上的宣传单一样,是个死的内容。只是把内容展示出来了,可交互性还是很低端很没意思的。(这时候的网页和看科学论文有区别吗?)

JavaScript可以在网页上帮助实现各种效果,比如鼠标移动到某个元素上去这个元素变成一只小狗、比如点击某个特定的区域这个区域会给你一个彩蛋....这个时候网页就变成一个小游戏了。

然后前端三大宝就这样完美的在一起了。

但是为什么现在的招聘广告上要求会php、会python、会java、会bootstrap、会jquery、会backbone、会angular.js、会react、会vue.js、懂mvc思想、懂mvvc思想、会nodejs、会nginx、会......(我也不知道还要会些啥)呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  要学些什么