大公司或专业团队目前流行的前端工具有什么?

寸志,前端工程师

黄保长王楠Bear
Little
 等人赞同

下面这些东西在大公司可能不流行(你懂的,大公司喜欢自己造轮子),但绝对是专业前端需要了解的:

  • Node.js:现代工业化前端的基础;
  • RequireJS:AMD规范,即将过时的 JavaScript 模块化方案;
  • Bower:前端模块源;
  • npm;前端工具源,另一个潜在的前端模块源;
  • Browserify:即将过时的基于 CommonJS 的前端模块化方案;
  • Less:等 CSS 增强工具;
  • Gulp:前端构建工具,如果你在前端开发中不需要使用类似工具的话,我只能呵呵;

未来的 JavaScript:ES6、ES7,兼容未来 JavaScript 模块化方案类库、代码转化类库等等。

编辑于 昨天 19:58 15
条评论
 感谢 分享 收藏 ? 没有帮助 ?

举报

赞同10
反对,不会显示你的姓名

安而遇,喜欢js是因为它继成自lisp
的那一部分

Stark伟赵龙相守鼎 等人赞同

百度FIS

发布于 2015-03-12 添加评论

赞同3
反对,不会显示你的姓名

小爝http://www.tuer.me

张立鑫吴天宁饶培泽 赞同

工具框架都是为业务提供支持的,更好,更快,更舒服。

知道自己需要什么,再去看对应的工具,体会和理解会更好。

日常工作 我用的工具大部分都是自己写的。库,插件,用的多了,只是懒的自己写的时候会网上随便找找。

可能我很土,对其他楼主所说的新东西不甚了解。并不是因为不知道,而是知道后,觉得对自己目前工作没啥用。没去深入看完。

我反对什么都学,把精力留在深度上更好一点。而一些标准也都是人之所为。

需要就用,不足就改,没有就造。我对前端工具的看法。

工具只是手段啊,哪有什么流行不流行,更谈不上过时。

编辑于 昨天 07:57 2
条评论

赞同26
反对,不会显示你的姓名

安动生undoZen,安以动之徐生

陈博一一秦伟 等人赞同

简评一下业界常用的并且我了解的一些前端工具

编辑器:

首推:VIM、Brackets

可选:atom、sublime、emacs

webstorm 那叫 IDE,不(仅仅)是编辑器

css工具:

苦于合作的同事一直选的是 bootstrap,我没有认真比较过 sass 与 less 而直接一路用着 less,不过两者其实差不了多少。

现在貌似流行后处理器了(前面说的两个叫预处理器,我也不知道他们差别在哪),autoprefixer 等,推荐看 Pleeease 这是一个这类工具的集合

模块化工具:

首推:browserify 代码架构清晰,你可以自己拔插其中的某些部分,比如替换个 prelude(在浏览器里怎么加载模块的代码,默认是每个编译合并后的 js 都带一小段),或者用诸如 factor-bundle 这样的插件拎出共用组建来。因为架构清晰代码量小,你可以通读源码了解其原理。

其次:webpack,不得不说 webpack 很强大,如果要用 react 的话 react-hot-loader 这样的插件目前只此一家。对我来说它的问题在于太庞大了,我无法理清其全貌怕用在项目里踩坑自己无法解决。

不推荐:require.js sea.js,两个都是要过时的东西,在我还没成为 sea.js 黑前,就是坚定的 require.js 黑了。两者的共同问题是要为每个文件写首尾的 wrapper 在浏览器端去解决,而不是像前两者在开发部署阶段去处理,require.js 问题最大,好歹 sea.js 还和 node.js 有所兼容。

流程工具/部署前处理:

部署前处理主要包括用前面的模块化工具打包、生成版本号、压缩文件等。我主要用 gulp 来做这些事,从来都不会用也不喜欢 grunt,百度的 FIS 听说过但不了解,读过 @张云龙 的文章推测应该还不错。我的建议是@张云龙 的文章必读而
FIS 可参考,最后用 gulp 来组织自己的工作流。

如果你用熟了 gulp,你可能会厌倦开工一个项目就想切个页面也要摆好排场写个几十上百行的 gulpfile.js,这时你应该做减法,可以向 substack 学学用 npm run (package.json 里面的 scripts 属性)或者像 ./task.js 这样的几行代码即可。

包管理:

bower:用 github 来做源,国内使用很不堪,如 @yhben 的回复“100k的js,克隆了一个50M的项目”。它可能简化了一点点你去 github 上搜索代码下载保存的工作,但被要下载全库这个缺点抵消了,对于依赖管理,我觉得他真没做多少事。

npm:我是无论前端后端甚至 css 都用 npm 的,公司里也用 @苏千 和 @死马 的
cnpm.org 搭了一个私有库在用,个人觉得这个工具一定得掌握好,不然你就自绝于当今前端开发的主流了。

编辑于 昨天 10:23 27
条评论

赞同2
反对,不会显示你的姓名

苏洋,我有一只八岁的博客 http://www.soulteary.com

沈礼于江水 赞同

唉,看了一圈,没人回答持续集成和在线接口/在线工具相关的东西。

- Gitlab Ci

- 代理工具/在线代理工具/HOSTS管理工具/...

- Mock接口服务/本地Mock工具

- ICON FONT

- 图片上传和在线优化/图片优化工具

- 错误追踪

- DPL + JS TOOLKIT

- ...

发布于 昨天 17:07 添加评论

赞同3
反对,不会显示你的姓名

kerry,Listen
to Your Heart, Follow Your Dream.

堇年董航安动生undoZen 赞同

browserify+npm搭建模块化体系,并通过browserify的transform机制,做一切静态分析下你想到的能做的事情,AST修改给你足够的想像空间带你飞~

手机码字,改天补充…

发布于 昨天 01:23 添加评论

赞同3
反对,不会显示你的姓名

董航,我是一朵云,飘啊飘!

岑锦超陈其毅饶培泽 赞同

说说我们猎豹移动广研前端团队的一些实践方案:

工作流:

Grunt。如果你喜欢Gulp,也没问题。但是我更喜欢Grunt的写法。

模块化管理:

完全基于CMD规范,使用browserify组织代码。至于有人喜欢ES6模块或者AMD的方案,可以利用相应转换工具转换为CMD。我们的CSS代码、JS代码、HTML代码都是用require方式引入的(自己实现的插件)。异步加载代码,也有browserify插件实现,可以实现按需加载(自己实现的插件)。我们会对引入的任何代码进行cache bust(自己实现的插件)。以上3个browserify插件未来会进行开源。

样式:

因为产品需求差异比较大,样式都是自己写了。stylus + nib,用过的都说好!

前端框架:

分具体使用场景:

(1)内部管理系统extjs、Angular、React etc.我们鼓励在内部或者重要程度比较低的项目中,使用一些新的、热的或者前沿的技术;

(2)移动Web,基础库zepto。PC Web,基础库jQuery;

(3)小项目、活动页面,通常没有架构而言。大型项目,基本除了基础库,都会有个自己的业务框架;当然我们也有有些公用组件的沉淀;

(4)复杂的PC Web APP中,使用knockout做MVVM和knockout模块组织代码;knockout这东西好啊,大小合适,兼容性好,还支持组件化开发;

质量保障:

项目比较杂,暂时没有引入专业测试工具,主要是3点:

(1)自己编写的小的测试模块,做成工作流中的一部分,构建时就能发现一些低级错误(类似JSLINT);

(2)JS代码执行错误、AJAX质量、PVUV等的数据上报和统计;

(3)运维侧的各种监控工具;

前后端分离:

God Bless,我们大多数项目都是非展示型页面。对首页加载速度没有过多要求,所以我们通常都是前后端完全分离,即全部使用AJAX交换数据,即使是首屏。

编辑于 昨天 12:06 添加评论

赞同2
反对,不会显示你的姓名

偏右,资浅前端工程师

華仔邢毅勋 赞同

看看 http://npmjs.org/#explicit 首屏的推荐的这些工具,基本上都在这儿了。

编辑于 2015-03-12 1
条评论

赞同4
反对,不会显示你的姓名

eisneim,Web
Dev,Designer,Bodybuilder,创业中

李国栋陈琦七夜 等人赞同

我们是创业小团队,我们的前端是:老师客户管理端 angular 1.3 -> angular-marterial -> gulp +bower 学生使用产品web端(以手机端为主,自适应页面将会与手机app原生的混合) : React + Flux + react-router + browserify + gulp +bower ;后端nodejs为主,以后准备逐渐往golang转;

-----------------------------------

广招天下豪杰加入我们,目前就我一个前端(累趴。。。)拉勾链接:新瓶子招聘-英芝教育科技(上海)有限公司招聘

编辑于 2015-03-12 11
条评论

赞同8
反对,不会显示你的姓名

Johnny
Wu
,Fireball-x 主设计师

王楠wi
zong
张立鑫 等人赞同

我看到答案里多数是一些框架, 库和 CLI 工具, 比较针对编码, 但是前端还有一些偏设计的工作要做呀.

IDE, 可视化工具

  • WebStorm: 公司里其他人用, 我虽然是坚定的 exVim 使用者, 但是有些心动.
  • DevTools: 这个我想是个前端都要用吧, 但是 DevTools 里有很多细小的功能点, 建议通读文档使用.
  • Adobe Edge: Edge 可以帮你做一些小的动画预览, 有时缺灵感就用它预演一下, 比你写动画 key 方便很多
  • Macaw, Webflow: 这两个都是用于页面排版的, 主要也是为了让自己看一下效果, 特别是整体界面排版.
  • Sketch: 我用的少, 就不多评论了, 和上面两个的作用类似.
  • Unity3D: 有时要写点 shader, 调些动画什么的, 短时间内还是得靠他.

CLI 工具

  • Gulp: 现在大部分的工作流程都依赖他, 我们连代码更新都写成 `gulp update` 了....
  • Git: 就不用多说了.
  • Bower: 我个人用的蛮多的, 比较省心.
  • nodemon: 开小服务测试方便.

发布于 2015-03-12 添加评论

赞同1
反对,不会显示你的姓名

戴彬http://frankdai.com

栾天昊 赞同

学好Native Javascript 自己找个库 用自己的代码模拟实现一下 回头再看别的库 so easy

发布于 昨天 14:25 添加评论

赞同0
反对,不会显示你的姓名

布拿拿Lee,做一个低调的Lisp脑残粉

其实在公司的时候我一直在尝试前端模块化,因为一个人写前端写后台还是很累的,然后有时候又不想去麻烦大老板写,毕竟大老板很忙的,后台模块了,前台仔细一看惨不忍睹,好吧,大学生水平。大半年来做了的几个项目css框架用过一些,我承认手写代码比Dreamweaver好了很多,但是仔细一看,和业界标准还是差了很多的嘛。

———————————————————————————————————————————

Gulp

这个东西很好用。

我在里面

var gulp = require(‘gulp‘),
coffee = require(‘gulp-coffee‘),
gutil = require(‘gulp-util‘),
uglify = require(‘gulp-uglify‘),
imagemin = require(‘gulp-imagemin‘),
cache = require(‘gulp-cache‘),
sass = require(‘gulp-ruby-sass‘),
autoprefixer = require(‘gulp-autoprefixer‘),
minifycss = require(‘gulp-minify-css‘),
rename = require(‘gulp-rename‘);
var tinylr;
gulp.task(‘livereload‘, function() {
  console.log("hi tiny lr");
  tinylr = require(‘tiny-lr‘)();
  tinylr.listen(4002);
});

大概放了这些东西。

反正我最喜欢的时live reload了,你保存的时候就帮你编译,乱七八的做一些操作,然后帮您刷新浏览器,写起来还是很顺畅的。这个在express里面在监听一个端口就好了。

写Rails的时候我用的时guard 然后浏览器装一个插件做live reload的。

框架也接触过一些,boot,foundation,还有妹子。不过还是最喜欢pure。小而美。

bower到现在并没有用这个的习惯。主要是网速实在是。。。

包括不用Grunt,Yeoman也是这个原因。

当然不用Grunt,是我觉得Gulp会看起来简单点。

然后Emmet这个插件很好用的。

发布于 昨天 22:17 添加评论

赞同0
反对,不会显示你的姓名

李文富,js
css html

spm

发布于 昨天 21:14 添加评论

赞同5
反对,不会显示你的姓名

张立鑫,专注互联网

泊舟wi
zong
GUICHE 等人赞同

好吧,本来不想回答的,从知乎公测到现在都是潜水的,有些惭愧。

先说几点现实的问题:

  1. 如果你不是项目的leader你完全不必要关心这些,也左右不了。
  2. 如果你只是以学习为目的而不是为了找工作比较符合大公司的胃口,那么你应该将大家推荐的和提及的都去用一用,最少要看懂文档,知道他们是干什么的。在使用的的过程中你才能知道哪些更适合你,更适合团队。再深入一些,哪些虽然适合团队,但是却不利于优化。要清楚,前端对文件大小和连接数是很敏感的,比如browserify在组织代码、前后端公用/模糊前后端界限、学习成本(只要会nodejs)方面效果显著,但是由于需要mock nodejs环境,体积会比其他单纯的module
    loader大出许多,连接数也会高许多,所以在前端优化过程中优化程度有所下降。如果你没有深入的去学习实践,那么你可能就会对单纯的module loader有所误解,现在的module loader几乎都支持CJS(nodejs/CommonJS)的写法,打包时会自动转换成loader的API。
  3. 如果你想以找工作对公司胃口为目的,很不幸,大公司都喜欢自己造轮子,会有人告诉你怎么让这些轮子动起来。
  4. 现在大多数前端工具都是nodejs所写,所以学会nodejs很重要,其他基于nodejs的工具都很好懂
  5. 如果你想学习前端知识,那大公司使用什么工具跟你有啥关系?反正你都要学的!
  6. 工具提升效率也增加学习/培训成本。
  7. 不要过于相信、依赖我们所说的,大部分是我们自己的实践经验,这些经验可以分享出来,但不一定适合你,适合你的团队。

至于工具,大家也都说的差不多了,我也想说几点:

  1. 大家所说的,务必要亲自去弄清楚是干嘛的,有些只是片面经验,或许只用到了工具的一部分就认为是工具的全部。
  2. 大而全的工具在构建和组织代码上很好很强大,但在前端展示与优化上不一定好,甚至会拖累。
  3. 有些时候工具也会造成负担,当你真正需要他们的时候再去用。就像module loader的出现是因为项目js大而并不会一次性全部用到;项目太大打包发布麻烦,所以出现了grunt/Gulp。
  4. 在国内,你要知道如何使用梯子,比如google,github,npm,bower,没有梯子再多的工具你都会感觉很难受,真的。

这里我没有推荐任何工具,因为我觉得这个问题有些笼统(工具有很多领域负责不同需求),如果你真的需要的时候你就会去找某一方面的工具,而不是为了会用工具而去学习工具。

编辑于 昨天 13:30 1
条评论

赞同0
反对,不会显示你的姓名

戴嘉华,FML

先占个坑先

发布于 昨天 01:53 添加评论

赞同0
反对,不会显示你的姓名

Vins0n,SE/粤语/互联网

Twitter的bootstrap和国产的amaze ui?

发布于 昨天 10:47 添加评论

匿名用户

说说我们用的东西吧

前端:

require.js

grunt or glup

coffeescript jade sass less

css框架:

bootstrap senmantic

其他组:

angular React等

后端:

Python Go Ruby等

发布于 昨天 20:05 添加评论

赞同0
反对,不会显示你的姓名

Fula
Li

懂node后就能自己写很多小工具了,集成起来走个流程就算是自定义框架了,其实很多前端框架没ant好用,xml比json好写,就是维护配置比较麻烦。

时间: 2024-12-21 16:17:11

大公司或专业团队目前流行的前端工具有什么?的相关文章

去大公司发展专业技能好,还是自己创业闯荡好

如果你满足以下几个条件的话,可以选择创业,如果不全部满足,建议先去大公司发展发展…… 1- 自己有确定的详细的想法.且这个想法能得到2-3个业务人士的支持,觉得是创新的.有前途的.有钱途的.且有盈利模式的. 2- 有广泛的人脉可以为你指点江山.每个人一条意见,10个人就是10条了. 3- 懂技术.不一定全懂,但最好懂一些,或者有一个懂技术的搭档.合伙人中必须要有一个技术支持,特别是搞互联网开发的. 4- 懂点经济.前期创业不需要很懂. 5- 懂点法律.特别是创业初期的合同.股权等分配. 6- 懂

BAT大公司里怎样开发和部署web前端代码

这是一个非常有趣的 非主流前端领域,这个领域要探索的是如何用工程手段解决前端开发和部署优化的综合问题,入行到现在一直在学习和实践中. 在我的印象中,facebook是这个领域的鼻祖,有兴趣.有梯子的同学可以去看看facebook的页面源代码,体会一下什么叫工程化. 接下来,我想从原理展开讲述,多图,较长,希望能有耐心看完. 让我们返璞归真,从原始的前端开发讲起.上图是一个"可爱"的index.html页面和它的样式文件a.css,用文本编辑器写代码,无需编译,本地预览,确认OK,丢到服

  大公司中app研发的工作内容以及岗位对比和简单职业阶段分析--适合新人

移动互联网发展迅速,现在已经在改变部分传统行业的模式,未来几年仍将不断改变和颠覆世界.ios开发是在属于移动互联网中软件开发中的一个分支,另外还主要包括安卓开发和windows iPhone开发.下面从日常研发的工作内容,和团队不同岗位横向纵向对比以及职业发展阶段分析三个角度说明大公司app研发的工作. 1.日常研发工作内容 工作主要包括沟通.研发和修复bug三个内容. 先说研发方面.我在团队是一个典型的大公司移动app团队,约有40人,分为后台开发团队.安卓开发团队.ios开发团队.产品设计团

为什么说亚马逊将超过谷歌苹果微软成为第一大公司?

(上图为AWS CEO Andy Jassy) 截止到2016年底,全球市值最高的三大公司为苹果(5860.21亿美金).谷歌Alphabet(5268.95亿美金)和微软(4606.9亿美金).然而,在全球向数字化经济转型的大趋势中,这三大公司或多或少遭遇了瓶颈并显现了业务短板.而排在第6位的亚马逊(3517.85亿美金)却显示出了勃勃生机,这家公司不仅没有遇到转型挑战,反而在转型的过程中获得了巨大的发展. 2016年12月初在美国拉斯维加斯举办的AWS re:invent大会是一年一度亚马逊

从大公司到创业公司,技术人转型怎样转变思路与处事之道?

原文:http://www.sohu.com/a/145103225_114778 本文作者将从自己的工作经历出发,从工程师择业的角度,与观众产生共鸣,从大公司到创业公司,需要转变的思路与做事情的方法,有原则性的东西,也有真实案例与身边的故事,还会穿插一些工程师的软技能. 写在前面 不想当将军的士兵不是好士兵,不想做 CTO 的技术人不是好技术人 刚拿到这个话题的时候,提笔不知道要写什么.大约三个月之前,有记者对我做过一个专访,之后在官网首页发布了一篇文章<从知名外企到创业公司做 CTO,是种怎

大公司和小公司的web前端岗位,工作内容有哪些不同?

web前端岗位可以做哪些工作? 泛泛来说,会有这么些岗位: 网页制作.网页制作工程师.前端制作工程师.网站重构工程师.前端开发工程师.资深前端开发工程师.前端架构师. 当然,对于不同规模的公司,web前端岗位的设定也是有区别的,下面就来给大家介绍一下,企业是如何根据规模大小设定web前端的岗位的. ▼ 1. 企业规模:10人以下 我们先从几个人的小作坊说起,这种小作坊里面,基本上有一个人负责页面的设计,然后把页面"切"出来,然后有一个专门的人负责套程序.在这样的公司里面,Web前端其实

论大公司的通病

兴之所至的写了一下我对 BAT 三家公司的看法,有位大佬留言说,不如写一下大公司的通病.这倒是提醒了我,很好的话题,任何大公司都有各种各样的独特的问题,也有些问题有共性.我列几点跟大家探讨. 一. 过度管理 绝大多数大型公司的管理者的管理工作都是过度的,这话不算夸张,有些管理者甚至把管理本身当成唯一的工作任务,更有甚至,只盯着上一级主管的喜好做事,糟糕至极. 管理并非不重要,但如果管理者都在为管理投入太多精力,没人盯着产品的话,慢慢的大麻烦就出来了.腾讯的马化腾先生曾经在一次公开演讲中提到腾讯的

论大公司的通病和缺点

兴之所至的写了一下我对 BAT 三家公司的看法,有位大佬留言说,不如写一下大公司的通病.这倒是提醒了我,很好的话题,任何大公司都有各种各样的独特的问题,也有些问题有共性.我列几点跟大家探讨. 一. 过度管理 绝大多数大型公司的管理者的管理工作都是过度的,这话不算夸张,有些管理者甚至把管理本身当成唯一的工作任务,更有甚至,只盯着上一级主管的喜好做事,糟糕至极. 管理并非不重要,但如果管理者都在为管理投入太多精力,没人盯着产品的话,慢慢的大麻烦就出来了.腾讯的马化腾先生曾经在一次公开演讲中提到腾讯的

作为过来人的感悟:进了小公司的程序员如何翻身进入大公司

进了小公司的程序员如何翻身进入大公司--知乎上的一个问题.看来这是很多在小公司颠簸流离多年感到疲惫的开发者都会关注的问题. 问题描述如下: 都知道大家说毕业要去大公司,但总有不小心或实力不济,进了小公司的应届程序员.请问如何在加班疯狂.培训体系不完善的小公司里,提升自己的实力,凭借技术和工作能力跳槽到大公司?如果说为了进大公司,而选择考研重造,会是个好选择吗? ps:这里的小公司,是指待遇福利一般,随时可能倒闭.发不出工资,说出去都不知道是啥公司的那种.大公司指大家公认的好去处例如 BAT 等.