那么什么是聪明者,就是打架不出拳,直接用刀砍,或者更牛逼的就开枪!

那么如何做一个聪明的前端开发者?

很显然,就是用工具代替手工,用自动代替手动!

那到底是用什么工具呢,如下:

前端开发工具

工具有点多,但是都非常简单,或许你已经安装并使用过一些了。

  1. git,版本控制系统
  2. node,JS运行平台
  3. npm,node的包管理
  4. yo,脚手架
  5. grunt,项目构建工具
  6. bower,项目依赖包管理

git,http://git-scm.com/

据说是一款很厉害的版本控制系统,类似SVN,不过本人还没有所领悟,继续SVN中,只是下面的工具要到用git所以简单说一下。
下载安装即可,安装完成后顺便试一下cmdgit命令是否可以识别。

node,http://nodejs.org/

这是个好东西,降低了应该程序开发的门槛,JS不只在浏览器上运行了,还可以开发本地应用程序,就靠它来运行,有点类似于JVM,牛逼的工具一时间如雨后春笋般冒了出来!
下面说到的的工具都是用node开发的本地应用程序
安装就非常简单了,下载后添加bin目录到系统Path路径即可。

npm,https://www.npmjs.org/

说到这个的时候我有点激动,也不知道从什么时候开始,在我们项目中用到的第三方依赖不用自己苦逼的在网络上到处找了。只要指定版本号和依赖名字它就可以帮你下载。
这个就更厉害在了,它不仅可以帮你安装依赖包,还可以安装基于node开发的软件,真的是泪流满面呀!
安装同样简单,下载后添加bin目录到系统Path路径即可,下载地址:http://nodejs.org/dist/npm/
常用功能就是安装(npm install -g 名字)和更新(npm update -g 名字)了,-g表示可以全局运行,其实就是帮你把安装路径添加到系统的Path路径中。其它用法的看官网吧。

yo,http://yeoman.io/

什么是脚手架,百度百科是这样解释的,指施工现场为工人操作并解决垂直和水平运输而搭设的各种支架,看到这里你应该大概明白了,
yo在这里充当的角色就是帮你直接生成项目的部分内容,免去你的重复无聊的工作,比如创建目录构建、新建各种配置文件。
安装npm install -g yo

grunt,http://gruntjs.com/

构建工具,一句话解释,把你指定的内容转换成你想的目标内容,这就是构建。比如把less转换成css,压缩js或css等。
安装npm install -g grunt-cli

bower,http://bower.io/

这个就更强了,类似java界的maven包管理功能,简单的说就是帮你下载项目依赖的内容,
比如你用到的jquery,可以指定名字和版本让它来帮你下载,它依赖gitgithub下载,至于它从哪里怎么下载你就不用关心了。
安装npm install -g bower

工具介绍完了,下面说说如何让这些东西帮你拉磨

创建示例项目

工具安装了一大堆,那如何帮我们效力呢,也很简单的。

从yo开始,前面说过了,它可以帮你创建项目的基础架构,比如创建一个基于jquery的前端项目:
打开cmd,执行以下代码:

mkdir yotest
npm install -g generator-jquery
yo jquery

按照提示输入你的项目名称,版本(4位,如1.0.0),作者等信息,然后就等着收货吧。

对上面的命令解释一下,generator-jquery这个东西是yo提供的一种预先建立好的项目原型,
通过命令npm install -g generator-jquery把它安装你到本地仓库,最后通过yo jquery来随时创建新的基于jquery的项目,与maven十分相似。

项目原型存放于官方仓库,可以通过http://yeoman.io/generators/official.html这个去检索,还有一个是社区仓库http://yeoman.io/generators/community.html。

当然你可自己创建项目原型,请参考http://yeoman.io/authoring/,或许我下一篇会说到吧。

主要会帮你创建一个合理的项目目录结构,并生成主要的几个配置文件包括package.json(npm依赖包配置)Gruntfile.js(grunt配置)bower.json(bower依赖包配置)等。

如果你修改了package.json中的devDependencies结点,通过npm install重新下载依赖,这部分依赖主要给grunt使用,

修改了bower.jsondevDependencies结点通过bower install重新下载依赖,

直接运行grunt命令执行所有grunt任务。

本文重在抛砖引玉,更多的用法大家去挖掘,或自行参考各自的官方文档。

转载于:https://www.cnblogs.com/xguo/p/3831326.html

做一个聪明的前端开发者相关推荐

  1. 做一个聪明的项目参与者--制订WBS清单

    前段时间,团队开始实施一个新项目.这个项目有着中国IT行业的三个共同特点:需求繁.工期紧.资源缺. 虽然从目前情况来看,它还有希望不会沦为"死亡项目",但如果实施过程中不小心翼翼. ...

  2. 做一个合格的前端,gulp资源大集合

    承接前一篇<做一个合格的前端,gulp自动化构建工具入门教程>故而整理了如下gulp插件资源大全. **[我的新作观点网:http://www.guandn.com (观点网是一个猎获新奇 ...

  3. 转载:如何做一个聪明的程序员

    关于程序猿的传说很多,有人说程序猿是最聪明的人,他们在数学才能.文字功底.口才能力.预知能力.学历与学力.职业道德等方面都具有 优势:有人说,程序猿很邋遢,不洗澡不洗头,整天背着双肩包:有人说,程序猿 ...

  4. 做一个纯前端小程序,只需要简单几步

    前段时间某神秘企业员工被禁止拥有自媒体,所以如果大家在盗版网站或者某条看到这篇文章,而且昵称还叫什么泽哥**钊,不用慌,就是我!!! 我这技术这么烂,也要被限制,辛苦某某部门了.也不知道啥时候禁止我发 ...

  5. 零基础的同学看过来,如何系统学习前端,只要你掌握了,学习web前端的思路就打开了,为以后成为高级前端工程师做一个铺垫

    软件开发工程师在行业外大众的眼里, 或许是一个出众的职业,收入不低, 技术含量还挺高,就连我自己刚入行时也是这么认为的,但事实上并不确切.任何行业中,只要是在金字塔顶端的那部分,都是令人羡慕的,然而, ...

  6. 随记--做一个“懒惰”的程序员

    貌似是近两年,在猿界,经常被提起的一句话,做一个懒惰的程序,其实是做一个聪明的程序员的意思. 最近在看<鸟哥的Linux私房菜>,基础学习篇,第三版:虽然Linux也接触很久了,掌握的一点 ...

  7. 前端应届生如何做一个职业规划

    前端的兴起 前端真正兴起和开始频繁出现在大家的视线里,大概是在十年前.彼时的 Web 开发基本是由后端主导,前端能做的只是校验一下数据.操作一下 DOM.(其中数据检验是 JS 产生的根本原因:当时网 ...

  8. 想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ #精选JAVASCRIPT前端开发...

    想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ 作为一个软(ku)件(bi)工(de)程(ma)师(nong),你有没有觉得做什么事都没时间?没时间学习新东西,没时间去回顾.整理原来写的烂代 ...

  9. 一个好的web前端开发者,是怎么学习的?

    T 行业的变化快是众人皆知的,需要持续去学习新的知识内容.但是,往往我们工作之后,经常发现学习的东西很少了,学习效率非常低,感觉自己到了一个瓶颈期,久而久之,就演变成『一年工作经验,重复去用十年』的怪 ...

最新文章

  1. 学会python能找工作吗-Python学到什么程度才可以去找工作?掌握这4点足够了!...
  2. Centos下MongoDB的安装与配置
  3. 下列不是c语言浮点常量的是,C语言二级题库.doc
  4. s3c44b0x开发板之BOOT ROM配置
  5. 台式电脑主板测试/升级BIOS
  6. Java中保留n位小数的四种方法
  7. 用JAVA制作小游戏——飞机大战(三)
  8. 开源协议的几种类型认识
  9. Newtonsoft.Json报错:未能加载文件或程序集...或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配...
  10. 盘点各种程序员常用的框架,看看你是否落伍了?
  11. 洛谷 1192:台阶问题(递推,DP)
  12. MyBatis下载与简介
  13. 软考高项(信息系统项目管理师)论文范文分享
  14. springboot+微信小程序基于微信小程序的高校学生疫情在校封闭管理系统毕业设计源码240904
  15. 计算机技术与软件专业技术资格(水平)考试
  16. Astronauts UVALive - 3713(2-SAT)
  17. python桌面快捷方式不见了怎么办_桌面快捷方式不见了怎么办?桌面快捷方式不见了解决方法...
  18. 8583 mac 字符选择 java 实现_转 8583包 mac算法
  19. 百度云下载神器再升级!
  20. python ‘//’ 取整,‘%’ 取余

热门文章

  1. 计算文件的hash值方法 | 使用powershell 以及 使用python
  2. 虚拟机NAT模式下 Host ‘192.168.x.1‘ is not allowed to connect to this MySQL server 问题解决!
  3. 30岁的你收入是多少?用数据可视化,看看大家的30岁工资真相
  4. 在一个html中使用另一个html数据,如何为某些HTML标签存储任意数据
  5. 2020运动相机推荐_2020年优秀户外运动相机推荐
  6. java进入dos_java启动dos命令收集笔记一
  7. js 数组 实现 完全树_Flink实例(六十八):布隆过滤器(Bloom Filter)的原理和实现 - 秋华...
  8. matlab怎么复制相同的列,怎样将数组中某一列数据相同的行提取出来?
  9. 调用指定目录下的批处理bat_批处理(.bat)的奇技淫巧
  10. 2018年第九届蓝桥杯【C++省赛B组】【第六题:递增三元组】——二分解法