前端大牛们都学过哪些货色
前端大牛们都学过哪些东西?
最近在看bootstrap,发现除了大一的时候看过的html+css,和一些js,JQuery之外,几乎没学什么关于前端的东西。偶尔了解过一些html5。想知道如果作为一个团队的前端负责人还需要学习哪些东西?发现bootstrap与.less有关,除了这个还有哪些是需要学习的?希望得到各方大神的回答。
--------------------------------------------------------------------------------------------------------------------------------------------
最近在看bootstrap,发现除了大一的时候看过的html+css,和一些js,JQuery之外,几乎没学什么关于前端的东西。偶尔了解过一些html5。想知道如果作为一个团队的前端负责人还需要学习哪些东西?发现bootstrap与.less有关,除了这个还有哪些是需要学习的?希望得到各方大神的回答。
--------------------------------------------------------------------------------------------------------------------------------------------
补充一下,一些基本的计算机方面的东西还是学习过的。就是说除了最基本的像楼下马前辈说的这些之外,还需要哪些?
--------------------------------------------------------------------------------------------------------------------------------------------
一步一步来。
CSS不能编程?用Less、Sass、Stylus、甚至直接用 Absurd,框架除了Bootstrap还有很多。JS写多了很麻烦?jQuery。移动开发?Zepto.js。结构不好?找框架,Backbone.js是MVC,AngularJS和Ember.js是MVVM,Twitter还弄了个事件驱动框架Flight。库多了要优化加载?RequireJS。
代码质量成问题?Jasmine、QUnit、Mocha做单元测试。各种浏览器都要测?用Karma。测试通过了部署还有问题?持续集成,用Travis CI。用户行为也要测?用Selenium 。样式测试还有 Viff 。觉得JS都够麻烦的?用CoffeeScript。
想做动画?Canvas或SVG还有CSS3帮忙,干掉Flash。SVG太难画?用Snap.svg。想开发游戏?用Canvas。自己写FPS太低?用框架,CreateJS.。2D太幼稚?three.js帮你用WebGL开发3D,还不够给力?asm.js让你在浏览器中拥有虚幻3引擎。
这一堆东西都要配置部署,麻烦,用Grunt,库太多?用Bower管理,项目开始要创建各种文件文件夹?用Yeoman。开源项目太多了,GitHub.上找,不会?学Git。顺便用Jekyll托管博客,不是吧还有Ruby这玩意...SASS也是Ruby写的,等等Sublime Text是Python写的,要写插件?也学一下。调试太难?用Chrome开发者工具,一堆API和功能。
光在电脑浏览器上跑不给力?移动开发HTML5,离开网络就渣了?HTML5离线应用。不如原生应用?用PhoneGap。想调用原生API?开发Firefox OS应用吧。浏览器应用也得会吧,Chrome Firefox都有自己的文档。接着是不是把后端甩了,自己来,装Node.js,所以还得学点服务器知识,想用npm管理node包?linux技巧shell神马的也得学。想前后端通吃?再看看http协议。Web精通了?node-webkit 让你可以写桌面程序了,继续学吧。
想学模块化开发?看看CommonJS和AMD规范。理解JS有偏差?看看ECMA-262,等等不知道什么时候第6版就要出了。浏览器各不相同,弄不清该怎么兼容?看看W3C标准,HTML写出来人看的懂,机器读不懂?要SEO,要支持残障人士?看HTML语义化,全会了但IE就是不支持?叫不出名字的浏览器尼玛连JS都不知道是啥?渐进增强。想一次把各种设备全搞定?响应式设计。
然后上面这些不过是一些讨巧的小技术。公司做什么业务的?了解一下行业信息。面向大众的产品?交互设计。美工不给力?UI设计。外包和咨询?设计模式、重构方法、算法、数据结构。知道软件工程吗?了解一下敏捷开发,或许还可以试试TDD、ATDD、BDD。
看了这么多东西,第一反应是不是求中文文档?学英语去吧。
这些也不过是我目前所能看到的一小部分,而且每段基本都是到了一个边界,并不是没得学了,而是继续学又是另一片天地。真心希望有人能帮我填补知识盲区。另外,我仅把一些知识点串起来,不全或不对的地方请见谅。
吐槽:知乎的链接功能至少浪费我15分钟时间。
CSS不能编程?用Less、Sass、Stylus、甚至直接用 Absurd,框架除了Bootstrap还有很多。JS写多了很麻烦?jQuery。移动开发?Zepto.js。结构不好?找框架,Backbone.js是MVC,AngularJS和Ember.js是MVVM,Twitter还弄了个事件驱动框架Flight。库多了要优化加载?RequireJS。
代码质量成问题?Jasmine、QUnit、Mocha做单元测试。各种浏览器都要测?用Karma。测试通过了部署还有问题?持续集成,用Travis CI。用户行为也要测?用Selenium 。样式测试还有 Viff 。觉得JS都够麻烦的?用CoffeeScript。
想做动画?Canvas或SVG还有CSS3帮忙,干掉Flash。SVG太难画?用Snap.svg。想开发游戏?用Canvas。自己写FPS太低?用框架,CreateJS.。2D太幼稚?three.js帮你用WebGL开发3D,还不够给力?asm.js让你在浏览器中拥有虚幻3引擎。
这一堆东西都要配置部署,麻烦,用Grunt,库太多?用Bower管理,项目开始要创建各种文件文件夹?用Yeoman。开源项目太多了,GitHub.上找,不会?学Git。顺便用Jekyll托管博客,不是吧还有Ruby这玩意...SASS也是Ruby写的,等等Sublime Text是Python写的,要写插件?也学一下。调试太难?用Chrome开发者工具,一堆API和功能。
光在电脑浏览器上跑不给力?移动开发HTML5,离开网络就渣了?HTML5离线应用。不如原生应用?用PhoneGap。想调用原生API?开发Firefox OS应用吧。浏览器应用也得会吧,Chrome Firefox都有自己的文档。接着是不是把后端甩了,自己来,装Node.js,所以还得学点服务器知识,想用npm管理node包?linux技巧shell神马的也得学。想前后端通吃?再看看http协议。Web精通了?node-webkit 让你可以写桌面程序了,继续学吧。
想学模块化开发?看看CommonJS和AMD规范。理解JS有偏差?看看ECMA-262,等等不知道什么时候第6版就要出了。浏览器各不相同,弄不清该怎么兼容?看看W3C标准,HTML写出来人看的懂,机器读不懂?要SEO,要支持残障人士?看HTML语义化,全会了但IE就是不支持?叫不出名字的浏览器尼玛连JS都不知道是啥?渐进增强。想一次把各种设备全搞定?响应式设计。
然后上面这些不过是一些讨巧的小技术。公司做什么业务的?了解一下行业信息。面向大众的产品?交互设计。美工不给力?UI设计。外包和咨询?设计模式、重构方法、算法、数据结构。知道软件工程吗?了解一下敏捷开发,或许还可以试试TDD、ATDD、BDD。
看了这么多东西,第一反应是不是求中文文档?学英语去吧。
这些也不过是我目前所能看到的一小部分,而且每段基本都是到了一个边界,并不是没得学了,而是继续学又是另一片天地。真心希望有人能帮我填补知识盲区。另外,我仅把一些知识点串起来,不全或不对的地方请见谅。
吐槽:知乎的链接功能至少浪费我15分钟时间。
邓江华、张jack、Tony
An 等人赞同
免责申明,偶不是大牛,连小牛都不是 :)
纯抛砖引玉,前端,我的理解是主要是HTML, CSS, JavaScript
学过哪些东西,我觉得取决于方向,因为JavaScript似乎什么都可以做,一些个人认为的方向,抛砖引玉:
但无论如何基础都要打扎实了,我觉得
纯抛砖引玉,前端,我的理解是主要是HTML, CSS, JavaScript
学过哪些东西,我觉得取决于方向,因为JavaScript似乎什么都可以做,一些个人认为的方向,抛砖引玉:
- - 桌面Web前端,也就是通常的前端,jQuery, YUI, MooTools, Dojo, Closure等
- - 移动Web开发 (Mobile Web),jQuery Mobile, Sencha touch (没做过移动开发以前,我错误的认为这个桌面前端差不多,现在觉得差别还是比较大的)
- - Web后端,NodeJS
- - 前后通吃,MeteorJS
- - 单页面Hybrid应用,BackboneJS,AngularJS,EmberJS, KnockoutJS等
- - 移动App开发,PhoneGap, Firefox OS, Titanium
- - 桌面应用,如Window8,再如 rogerwang/node-webkit 路 GitHub
- - 用JavaScript玩转物联网:Technical Machine获100万美元融资,打造Tessel微处理器
但无论如何基础都要打扎实了,我觉得
leilei o、Winner
Little、张树 等人赞同
首先我不是大牛
/* update */
刚几个朋友问我为什么要选mac环境:
- 前端规范,无规不成方圆,养成良好的代码习惯是学习前端开发的基石;
- html+css(html语意化,css要有个人见解,不停留在会写);
- js(研究类库,学习他们的思想,试着编写js库);
- nodeJS,angularJS,“新”是前端的灵魂,要跟着时代走,新技术一定要去了解;
- php+java+Linux+http+db+oc,后端要去了解,说好的全栈工程师呢?
- 可以的话能在mac环境下开发
/* update */
刚几个朋友问我为什么要选mac环境:
1、Mac OS X 是基于 Unix 的。这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 windows 开发人员,我想你会在 windows 上装一套cygwin 环境吧?你不用 flex/yacc,grep,screen,ssh,make?好多 open source 的项目只提供cygwin/gcc/make 的编译环境。Mac 就是基于 BSD Unix 的,所有这些都是 built in 的。
2、开发环境。c/c++/java/perl/python/php/ruby/lisp,各种 shell,应有尽有,直接支持,非常方便。你要在 windows 上开发 C++,要装个 Visual Studio 编译器吧?或者其他的 C++ 编译器;你要开发 Java,你要下载 Java SDK 吧,说不定还要一个 Elipse 或者 Netbean;你要用 Perl,要安装一个 Perl 解释器吧,Active Perl?你要 python/php/ruby,你要安装……?开发程序需要库,图像处理,视频处理,人工智能之类大部分库都是只支持 Unix/Linux 的。Mac 基于 Unix,所以这些通通都和 Mac 能很好和睦相处。
3、编辑器 Vi/Emac。作为 程序员/IT 人员一个好用的编辑器太重要了,因为写程序/改系统配置都需要编辑器。我在Mac上差不多1/2的时间是 browser/email,另外1/2时间差不多就是 Vi 了。
4、没有病毒/木马。用了5年多的 Mac 就没看到病毒长成什么样,我还看不到 Mac 上装杀毒软件的需要。
5、不需要维护。Mac 买来就直接用,磁盘碎片整理?不需要。装驱动?Mac 装好了,驱动就好了。重装系统?我5年没有重装过一次(期间换了几次不同的 Mac)。
6、简洁。Mac 上所有的操作都简洁到了极致,尽量避免干扰用户,增加了程序员的生产力。比如切换无线网功能,在 Mac 上切换只需要1次鼠标点击就可以完成,在 windows 上需要点击多次鼠标(包括一些很愚蠢的确认对话框);再比如卸载 USB 盘,Mac 只需要1次鼠标点击,windows 至少需要点击右下角图标、停止设备、确认对话框等多次点击。
7、多窗口切换。这个很方便管理打开的程序/文档。我经常要在多个虚拟窗口切换,比如看浏览网页/邮件一个窗口,写程序/文档一个窗口。
8、程序员文化。国外程序员是以 Unix 为主流成长起来的。这一点和国内不同,中国程序员/开发人员大都是从90年代的 DOS 开始的,随着 Windows 的壮大,成长了一批使用 Microsoft 工具的程序员。这也解释了为什么自从 Mac 切换到 Unix 阵营后,Mac 会发展这么快。基于 Unix 的 Mac 一经推出后,迅速赢得了一大批老 Unix hacker 和新 Web 2.0/Linux hacker 的关注,正是因为这些忠实的 fans 影响了他们的人际网络,圈子,博客,从而影响了整个程序员文化。有点像 Ruby on Rails,开始是一小部分人(精英人士)试用,这些人感觉不错就在博客,研讨会等各种场合鼓吹,从而在 Web 开发领域刮起一阵 Ruby 风。
9、苹果很酷。每台电脑,每个系列都设计完美,从包装盒,宣传册,广告,电源线,电脑内部,电脑外观,电脑软件都精心设计,风格统一。甚至微小到螺丝,看过苹果机箱上的螺丝,机箱里面的数据线吗?那个也是设计。每个 Mac 上都标记着:Designed by Apple in California,而不是 Desgined in USA,苹果就是这么酷,“我们是一家加州公司”。苹果的保密措施可以说做到了极致,产品官方不发售就在市场上看不到踪影。
10、企业家精神。苹果的传奇经历吸引了大批硅谷创业者,Apple/Google/Microsoft/Amazon/eBay/Yahoo 代表了创新,进取的企业家精神。这不是一个大原因,但可以看作是 Mac 在国外,尤其是在美国,尤其是在硅谷,尤其是在大学这么流行的一个小原因吧。据调查2007年美国大学 Mac 市场占有率第一,这些大学精英们毕业以后走上工作岗位,走上社会,再过几年其中一部分走入中层,走进高层,他们会如何影响 Mac 呢?
张文学、张三、Will 等人赞同
前端技能汇总 JacksonTian/fks · GitHub
王超、满兴旺、mistime 等人赞同
放个图补充@张铮铮的答案:)

如果说精通一个领域需要一万小时,HTML+CSS+JS,要三万小时啊
如果说精通一个领域需要一万小时,HTML+CSS+JS,要三万小时啊
张jack、你好呀 赞同
授之于鱼不如授之于渔
…………………
从上向下的学习法是先了解什么是GUI,然后了解前端解决的是什么问题,而这些问题对应的是什么技术,这些技术对应的知识点是什么。
从下向上的学习方法是先学习html,js,css的使用,然后学习规范,然后根据遇到的问题寻找解决办法,根据项目积累经验。
重点:我厂招前端,我厂有大牛!简历请发jia.kang@qunar.com
…………………
从上向下的学习法是先了解什么是GUI,然后了解前端解决的是什么问题,而这些问题对应的是什么技术,这些技术对应的知识点是什么。
从下向上的学习方法是先学习html,js,css的使用,然后学习规范,然后根据遇到的问题寻找解决办法,根据项目积累经验。
重点:我厂招前端,我厂有大牛!简历请发jia.kang@qunar.com
周挺、安An 赞同
前端好可怕,看完回答我都不想干了……居然要掌握这么多东西。0 0
陈智仁、liu
leven、张jack 等人赞同
HTML,CSS,JAVASCRIPT
web开发万变不离其宗。工具日新月异,但基本功还是这些。
不推介在有一定基础之前搞些乱七八糟的工具,什么自动化处理组件。其中的原理自己都没明白,只会是个人云亦云的应声虫。
学习前端,少想那些有的没的,少看那些人云亦云的东西。看看大牛的微博,博客。看看他们讨论什么,学习什么。
微博上有很多前端大牛。自己稍微看看,就知道了。参与一些开源的项目。
慢慢的去积累。想成为任何大牛。你可知道,大牛成长之前都是卑微的苦行者?
web开发万变不离其宗。工具日新月异,但基本功还是这些。
不推介在有一定基础之前搞些乱七八糟的工具,什么自动化处理组件。其中的原理自己都没明白,只会是个人云亦云的应声虫。
学习前端,少想那些有的没的,少看那些人云亦云的东西。看看大牛的微博,博客。看看他们讨论什么,学习什么。
微博上有很多前端大牛。自己稍微看看,就知道了。参与一些开源的项目。
慢慢的去积累。想成为任何大牛。你可知道,大牛成长之前都是卑微的苦行者?
我觉得前端用windows开发够了,unbantu,mac不过是进阶。学精js已经很难了,这么多知识不可能都会。我觉得评判前端的标准不是他做过什么什么东西,而是对一段代码或者一个api有自己的见解,这个地方可以用设计模式优化,那个地方逻辑复杂了需要改,这个api不够底层不够通用,这才是一个团队的灵魂。而不是上面让你做node你可以做出来,让你做canvas你可以画出来。
刚开始学的话,先打好基础吧,前端核心基础:javascript/css/html。基础相对于各种五花八门的框架来说学习起来虽然枯燥点,但对于以后的扩展学习来说会更容易一些,如果你愿意会更深入地学习的话。
前端,最好还要关注设计相关的问题
其实上面的大拿们说的感受还有一些先关的技术,对于入门级别的人来说是不大的,与其花时间在初期的学习,不如直接用现有的技术去实践,前端不同于其他,需要一种积累,一种对于改变的追求,js实现一件事情会有一万种方法,问题就在于选择那种为什么.当你review自己的代码发现需要改变的时候,你会发现需要到很多上面提到的技术.so.....慢慢来积累吧
西红柿炒鸡蛋
先做一段时间后端,再做前端会很得心应手~
个人经验
个人经验
A-Z:
Angular; Backbone; Console; Dir; Express; Fork; Grunt; Haslayout; Iconfont; Jsonp; Kissy; Localstorage; Media query; Npm; Opacity; Prototype; Querystring; Referer; Seajs; Trim; Underscore; Vim; Worker; Xss; Yslow; Zepto;
Angular; Backbone; Console; Dir; Express; Fork; Grunt; Haslayout; Iconfont; Jsonp; Kissy; Localstorage; Media query; Npm; Opacity; Prototype; Querystring; Referer; Seajs; Trim; Underscore; Vim; Worker; Xss; Yslow; Zepto;
很简单, 熟悉一下 <js高级程序设计>
umping j 赞同
怎么说呢。。。CSS和HTML其实都不是个事,学习难度很低。JS必须要学的,而且还要学jQuery,前端工程师没几个不会jQuery的。然后呢,选择性的学一两个框架(根据你程序的需要),这个能大大节约你的开发时间。最后的话。。。如果有必要我还是比较建议学CoffeeScript的,CS避免了很多JS的硬伤,而且代码更简洁,易维护
感觉用不到学那么多门门类类吧,虽然我只是一计算机普通大学生,js,php,css,html不止一个人跟我说过学好这几样就NB了
没仔细学过前端的人
我开发的网站 梦境盒子-记梦与分享梦境
前端加后端,总体来说前端的比较简单:JQUERY css这些,个人感觉也够用了
布局和用户体验这块其实不是那么容易学来的,这需要很多经验,也要花很多功夫多看看别人的创意。
我开发的网站 梦境盒子-记梦与分享梦境
前端加后端,总体来说前端的比较简单:JQUERY css这些,个人感觉也够用了
布局和用户体验这块其实不是那么容易学来的,这需要很多经验,也要花很多功夫多看看别人的创意。