做事情嘛总要有个目标;事情嘛,总要寻求效力,范例,重用,可保护,毕竟谁不想事情上少花些时刻,装逼(大雾)上多花些时刻呢。空话不多说,下面最先装逼,装的不好请不要贱笑。
1,项目最先
比方新建一个项目:project,下面该做什么呢?平常来说就是搭建脚手架了,平常的做法呢:
A计划:
本身先把环境设置好,一个文件夹一个文件夹的建,一个设置文件一个设置文件的写,然后再把须要的js库啊什么的一个个的搞过来,别的的有须要的话可以跟着项目标举行而增加
B计划:
运用本身曾的脚手架或许他人的,固然,可以还须要修修正改
C计划:
如果只须要一个设置文件,本身只须要把内里本身须要的东西写上去,一条敕令下来,该建的文件夹建好了,须要的js库下载好了,未来再须要别的文件的时刻只须要加上去,然后再实行一遍敕令就可以,岂不美哉。
别的计划:
抱歉别的计划这个逼我临时还装不下去,这里就留给其他人吧
那末我们就这个【C计划】举行一下思索,这里我挑选了js文件作为设置文件,为何呢?由于他人都挑选的js文件,而且,js文件可以读写别的文件啊
如果我们新建一个autoformat.js,这个文件应当写些什么呢?
这里就应当回归我们的需求:
1,可以建立我们须要建立的文件夹
2,可以自动下载我们须要下载的js库
3,自动装置须要的环境依靠
4,如果未来这个文件有更新,可以再次实行敕令,不会争执
OK,需求明白了,那末,我们怎样才实行这些敕令呢,经由过程什么体式格局来实行呢?
目标很明白,就是实行设置文件autoformat.js,怎样实行呢?额,由于他人平常都素经由过程敕令实行的,所以我们这里也经由过程敕令实行。
如果我们搞一个最简朴的:
node autoformat.js
如许就实行了,
或许逼格高一点,实行:autoformat [taskname]
实行敕令的体式格局也许一定了,那末来看一下需求怎样完成:
1,可以建立我们须要建立的文件夹
直接经由过程js在pc上建立文件夹不太实际,我们貌似也只能经由过程敕令行来建立,
经由过程js来挪用敕令行,照样可以完成的。
这方面有现成的轮子,我们就不要本身造了。只是须要装置一下依靠。
2,可以自动下载我们须要下载的js库
同上,借助他人造好的轮子,下载个文件什么的照样不成问题的
3,自动装置须要的环境依靠
话说我们日常平凡装置依靠不就是:
npm install
然后我们的设置文件,package.json内里的依靠项就会自动装置了,
所以我们只需实行这个敕令就好了,
至于依靠项,不就是我们前面挑选的他人的轮子嘛
4,如果未来这个文件有更新,可以再次实行敕令,不会争执
这个嘛,不就是一个推断,以至你可以直接掩盖之前的依靠项,
不过考虑到偶然刻本身会去修正js库,或许偶然刻误删除依靠,
这里可以设置为一个‘是不是’掩盖装置的选项
到了这里,我们发明这些需求都是可以完成的,那末下面就须要举行手艺选型了
考虑到当前体系是windows(mac买不起,linux这个逼格太高),
那末就要挑选能实行dos敕令的插件了,
都说windows下这个坑太多,然则咱也只能义无返顾的往内里跳了
OK,假定第一步已完成了,好吧,实在是这里写太多了,
这才第一步自动构建天生项目,所以临时放过,转头补充。
2,项目举行
项目举行的时刻注重代码的 模块分别 和 预编译言语 以及 UI框架 的运用,
比方less(css),coffeescript(js),HTML模板言语等
项目举行的时刻平常有什么需求:
1,代码的版本掌握这个一定是须要的,默许是git,(svn照样算了吧)
2,代码的紧缩兼并这个也是必需的(这个也可以宣布时做,但不免偶然用到)
3,代码的测试和数据调试也免不了
4,增加新的插件或东西库
5,以上都是必需的,这些东西如果都经由过程敕令行实行,那就算是比较工程化了吧
实在这一步已有许多东西做过了,可以只做了一部分比方grunt,gulp等,express,fis3等,所以略过不提。
3,项目宣布
项目要宣布了,有什么需求:
1,宣布的时刻能不能一键宣布呢,测试环境和正式环境同时更新
2,考虑到缓存,所以文件的后缀名用上hash值会不会更好
3,宣布的时刻最好宣布出来一个新的文件,而不是在源码上修修正改
4,图片须要hash值和兼并吗?
这一步实在也有人做了,比方fis3,webpack等,所以也简朴略过。
末了
写到末了发明彷佛还没有什么东西可以 ‘一条龙服务究竟’,做第一步的东西彷佛没什么太有名望的。
固然,我管中窥豹,一定只能看到一小片,这里只是一些思索总结,也是个人努力的方向,愿望有一天我这一小片天空也能被洒下一片清冷。