Gruntjs提高生产力(三)】的更多相关文章

以下例子来自真实项目,有所删减 grunt-test project 目录结构如下 一我的目的: 1.在src-dev目录中开发最终产出于src目录 2.src-dev中的index目录相当于一个widget 二准备工作  完成这项工作我需要那些步骤才能做到呢. 1.需要先准备好合并压缩好的css(common/reset.css+index/c.css)合并压缩放置与一个零时文件夹中待用. 2.其次压缩index/j.js放置于零时文件夹中. 3.再者把css.js.tpl(index/t.h…
思考: 1.grunt以工程为单位安装插件? 如果有新工程就要重新安装插件或者把安装好的插件拷贝过去.这样很麻烦,解决方案是需要用grunt的项目统一放在grunt项目中. 2.每次需要针对项目编写gruntfile.js? a.我们可以把文件夹,路径用变量代替.传入xx.json或者用命令行传参的方式. 还记得initConfig中的grunt.file.readJSON('package.json')这个方法么?我们可以写一个config.json,用这个方法读入就可以获取变量. confi…
摆脱混乱的html文件中开发,拥有development与product模式是我们梦寐以求的. 我买的需求是: 1.产出一定格式的目录结构,以供日常开发使用,脚手架功能. 2.在开发模式环境中我们按照文件类型不同分开开发,甚至html也分成小的区块widget化利于协作开发和维护,产出时合并成一个html,外联资源inline化. 3.在编码过程中实时保存并自动刷新浏览器,可以查看结果. 4.编码过程中进行代码检查,单元测试. 5.产出环境我们把这些碎片文件按照逻辑顺序压缩合并打包到一起组合成h…
gruntjs是一个基于nodejs的自动化工具,只要熟悉nodejs或者又一定js经验就可以熟练应用. 1. 安装 a. 保证已安装了nodejs,并带有npm b.安装客户端命令行工具,grunt 主页都有详细步骤,注意的是安装命令行工具而不是服务器版本. npm install –g grunt-cli 安装完成后已经有了grunt,压缩css,js合并文件换需要grunt的插件,grunt只是一个平台,完成各种任务又对应的插件.Grunt的插件十分丰富目前又380个已帮助我们完成工作中的…
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + tx + html < 1.3M Jodd是一个普通开源Java包.你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能. Jodd 提供的功能有: 1.提供操作Java bean, 2.可以从各种数据源加载Bean, 3.简化JDBC的接连与代码, 4.剖…
Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架配置和库.新项目开发时,不用再重新搭建. 2.提供一些基础的工具类库,比如文件操作.邮件发送.数据库CRUD操作.JSON转换. 3.权限系统设计. 4.异常处理和系统日志. 5.前台界面展示. 特别说明:因本人能力和经验有限,不少东西还未能实现,只能说点思路和看法. 我是用Java来实现我构思的W…
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + tx + html < 1.3M Jodd是一个普通开源Java包.你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能. Jodd 提供的功能有: 1.提供操作Java bean, 2.可以从各种数据源加载Bean, 3.简化JDBC的接连与代码, 4.剖…
复制.移动.删除.比较.监控.文件读写 等文件和IO操作是编程中比较常用的功能.        幸运的是,Apache Commons IO等开源组件已经帮我们实现了.        我们可以不用重复造轮子了. 1.资料地址 1.1官方网站:http://commons.apache.org/proper/commons-io/ 1.2下载地址:http://commons.apache.org/proper/commons-io/download_io.cgi 2.简要介绍(官方英文的翻译版)…
在Web项目中,如果前端MVC框架使用的是SpringMVC,可以使用Map接收前端请求参数,比bean要方便很多. 尤其是SpringMVC和Mybatis一起用的时候,用Map大大减少了需要的bean/vo/po之类的东东. 用Map也会遇到一个问题,就是类型转换的代码特别的多. /** * 得到当前页面的页数 */ private int getCurrentPage(Map<String, Object> params){ return Integer.parseInt(params.…
统一验证标准,减少重复劳动,提高生产力. 当公司内部有多个Web项目的时候,统一验证标准就很有必要了.统一不同项目的验证规则,比如 同为用户名 使用同一套标准,甚至用户名和机构名等也使用同一套标准.(明确定义非法字符的集合,比如@~.^) 除非客户有强烈的明确的要求,否则就按照公司的统一标准来做. 标准验证 required:某个选项必填,不能为空 remote:AJAX异步验证某个值的合法性,比如用户名是否存在 minLength:最小长度,比如用户名至少含有6个字符 maxLength:最大…
Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架配置和库.新项目开发时,不用再重新搭建. 2.提供一些基础的工具类库,比如文件操作.邮件发送.数据库CRUD操作.JSON转换. 3.权限系统设计. 4.异常处理和系统日志. 5.前台界面展示. 特别说明:因本人能力和经验有限,不少东西还未能实现,只能说点思路和看法. 我是用Java来实现我构思的W…
上一篇:年轻人的第一个 Spring Boot 应用! 哈哈,标题我抄了雷总的,不重要哦,重要的是 Docker 真的很年轻,虽然现在才不到 8 岁,但却是个冉冉升起的巨星,火得一塌糊涂. 这几年 Docker 实在太火了,Docker 是干嘛的?做 Java 的怎么能不知道 Docker?所以,本篇栈长带大家来做第一个 Docker 应用,你就有个基本认识了. 可能有些人觉得 Docker 和自己没多大关系,自己写好代码就行了,Docker 那是运维用的东西,看完这篇,我想改变你的想法. 一.…
低代码平台的概念很火爆,产品也是鱼龙混杂. 对于开发人员来说,在使用绝大部分低代码平台的时候都会遇到一个致命的问题:我在上面做的项目无法得到源码,完全黑盒.一旦我的需求平台满足不了,那就是无解.   与其他平台的黑盒模式相比,WTMPlus上面创建的项目可以随时下载100%开源的高质量代码,他给开发人员提供了大幅提高生产力的工具,而不是逼迫开发人员去学一套新的开发体系,还不知道他背后给你生成的是啥. 以目前的技术水平,低代码平台必然无法解决用户所有的需求,一旦需求无法满足,又没有源码,开发人员往…
前面LZ已经充分介绍了有关于List接口的大部分知识,如ArrayList.LinkedList.Vector.Stack,通过这几个知识点可以对List接口有了比较深的了解了.只有通过归纳总结的知识才是你的知识.所以下面LZ就List接口做一个总结.推荐阅读: java提高篇(二一)-----ArrayList java提高篇(二二)-----LinkedList java提高篇(二九)-----Vector Java提高篇(三一)-----Stack 一.List接口概述 List接口,成为…
Java小事非小事!!!!!!!!!!!! 四舍五入是我们小学的数学问题,这个问题对于我们程序猿来说就类似于1到10的加减乘除那么简单了.在讲解之间我们先看如下一个经典的案例: public static void main(String[] args) { System.out.println("12.5的四舍五入值:" + Math.round(12.5)); System.out.println("-12.5的四舍五入值:" + Math.round(-12.…
目录: 创建新变量 变量重编码 日期值 数据排序 数据集合并 数据子集 随机取样 创建新变量 算术运算函数:x%%y [求余 x mod y,  5%%2的结果为1], x%/%y  [整数除法,5% / %2 结果为2], ^或 ** 求幂 如下示例数据,在对象中增加平均.合计变量(场景不大合适,主要为了说明问题) 有多种方式来实现新增变量的处理,推荐使用 transform 示例代码如下: > mydata <- transform(mydata,avg = (age + weight)/…
Teambition是一个跨平台的团队协作和项目管理工具,相当于国外的Trello.使用Teambition可以像使用白板与便签纸一样来管理项目进度,如下图所示. Teambition虽然便于管理项目,但是如果直接在Teambition上面创建一个项目对应的任务,却容易陷入面对茫茫白板,不知道如何拆分任务的尴尬境地.如下图所示. 面对这个空荡荡的窗口,应该添加哪些任务进去?直接用脑子现想,恐怕容易出现顾此失彼或者干脆漏掉了任务的情况. 当我要开始一个项目的时候,我一般不会直接打开Teambiti…
1.cookie是什么 Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持. 通常有三个步骤来识别回头客: 服务器脚本发送一系列cookie至浏览器.比如名字,年龄,ID号码等等. 浏览器在本地机中存储这些信息,以备不时之需. 当下一次浏览器发送任何请求至服务器时,它会同时将这些cookie信息发送给服务器,然后服务器使用这些信息来识别用户或者干些其它事情 2.使用JSP设置Cookie (1)创建一个Coo…
在Web开发中,发邮件是一种非常常见的功能或任务. 发送邮件的6种方式 一文提到了6种方法,文章发表后,有网友指出了还有另外一种方法,Ant中也可以发送邮件. 打开Foxmail之类的邮件客户端或者在网页中写邮件,用户写邮件的主要输入就是以下6个字段. 必选输入:收件人地址可选输入:抄送人地址,按送人地址,主题,正文,附件 API 如果,我们从现实世界这些功能来看,发邮件功能是可以提取为一个API的. /** * 发送邮件. * * @param toList * 收件人列表 * @param…
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>HTML5 Form Input Elements</title> <style> body { background-color:#fff; color:#000; font-family:"Lucida Sans Unicode", "Lucida G…
心路历程 预计得分:$30 + 0 + 0 = 30$ 实际得分:$0+0+0= 0$ T1算概率的时候没模爆long long了... A 我敢打赌这不是noip难度... 考虑算一个位置的概率,若想要$k$步把它干掉,那么与他距离为$1$到$k - 1$的点都必须阻塞 且距离为$k$的点至少有一个没被阻塞 概率的处理可以用前缀和优化. 这样看似是$O(n^3 logn)$,但是却不能通过,考虑在前缀和处理的时候有很多没用的状态(超出边界) 加一些剪枝即可 #include<cstdio>…
这篇帖子老少皆宜,不分男女,不分种族,不分职业.俗话说:“磨刀不误砍柴工”.掌握一些开发工具的使用,对自己帮助是很大的(无论是用于分析问题,还是提高生产力).本篇就讲述如何利用Chrome浏览器(这里讲述的版本是14.0.835.2)的开发工具(因为IE浏览器的开发工具实在不敢恭维,不过大部分功能还是健全的).之所以使用Chrome浏览器,是因为对它情有独钟吧.Chrome浏览器的开发工具是一个比较强大的工具,主要包括以下面板: 元素 (Elements) 面板 资源 (Resources) 面…
目录 redis入门(三) 目录 前言 事务 原理 Lua脚本 安装 脚本命令 集群搭建工具 redis-trib.rb redis官方集群搭建 集群横向扩展 故障转移 redis管理 参考文档 redis入门(三) 目录 redis入门(一) redis入门(二) redis入门(三) 前言 在前两章介绍了Redis的一些常用的API与功能,在本章会对一些其他功能包括事务.脚本.Redis集群搭建工具以及集群动态扩容与故障转移方式进行讲解. 事务 在关系型数据库,我们可以通过事务(transa…
(其实非常的文不对题,这篇文章和写作的并没有多大的关系,如果是想看关于写作的技巧,可以直接离开,节省您的时间) 这是原文 写作就是在把你自身的想法用正确,合适的方式表达出来,但是不正确的表达可能会导致一些误解,甚至会传达出相反的信号. 这篇文章总结了 Elon Mask 在写作的时候经常犯的三种类型的错误,但其实这三种错误并不仅仅是在说写作,更多的是在说管理团队常见的错误.本文就是对这三种类型做一个 翻译 总结 . 持续过度乐观的预测 经常过度乐观的定下目标并且将之公布于众可能会导致在未能完成目…
OO第三单元博客作业--JML与契约式编程 OO第三单元的三次作业都是在课程组的JML规格下完成.完成作业的过程是契约式编程的过程:设计者完成规格设计,实现者按照规格具体实现.作业正确性的检查同样围绕规格进行:主要验证作业是否严格按照规格实现. 课程组承诺如果作业严格实现规格,作业的正确性就没有问题.此即是契约式编程的意义之一:工程的每一个环节都有人负责,兼顾高效性和正确性. JML基础 JML(Java Model Language)是一种建模语言,用形式化的符号语言对Java的类和方法进行描…
一.代码规范 我认为我们编写的代码都需要进行规范的操作,因为如果为了图省事情或者为了减少时间去完成这个编程.在最后检验的时候就会出现一些警告,导致你这次编程的代码出现问题,当出现问题的时候你在回头去检查你的代码,是一件非常头痛的事情,这样会让你很难发现问题所在,导致需要用很长时间去调试这个代码,甚至会让你前功尽弃,需要从新对代码进行编程.换句话说,这就好像我们在生活中洗菜做饭一样,在你洗菜的时候如果不仔细一些把它洗干净,那么在你吃的时候就会生病,导致你花费更长的时间去为你当初的不仔细和省时间付出…
      可以证明,字符串操作是计算机程序设计中最常见的行为. 一.String 首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象.查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象. 字符串为对象,那么在初始化之前,它的值为null,到这里就有必要提下””.null.new String()三者的区别.null 表示string还没有n…
上次的博文项目进阶 之 集群环境搭建(二)MySQL集群中,我们搭建了一个基础的MySQL集群,这篇博客咱们继续讲解MySQL集群的相关内容,同时针对上一篇遗留的问题提出一个解决方案. 1.单管理节点MySQL集群和多管理节点MySQL集群 上一篇的博客中,我们搭建的MySQL集群架构中,只存在一个管理节点,这样搭建的集群可以用如下所示的结构表示. 仔细分析上图就会发现,上图所示的单管理节点MySQL集群存在当唯一的管理节点由于网络.断电.压力过大等各种原因宕机后,数据节点和SQL节点将会各自为…
      可以证明,字符串操作是计算机程序设计中最常见的行为. 一.String 首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象.查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象. 字符串为对象,那么在初始化之前,它的值为null,到这里就有必要提下"".null.new String()三者的区别.null 表示strin…
根据压测结果做出的修改历史: 第一步:只针对maxWorkerThreads.maxIoThreads和minWorkerThreads做了修改<processModel autoConfig="false" maxWorkerThreads="100" maxIoThreads="100" minWorkerThreads="50" />,发现并无明显性能提升. 第二步:针对第一步,提高了三个参数的值maxWor…