自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (6)
  • 收藏
  • 关注

原创 JRuby Sandbox加快启动速度

一直很羡慕有些公司的研发流程自动化管理,可以极大的节省时间,而我们公司很多操作要手动去做,为此,我使用Ruby语言写了不少脚本半自动化这些操作。 原来我一直使用JRuby来运行脚本,一直受困于它缓慢的启动速度。于是我在前些时候利用MRI中Win32::Clipboard替换了Swing中剪切板操作,从而将大部分脚本移植到了MRI 1.9下,来解决了启动速度的问题。 ...

2012-12-18 17:50:46 269

原创 UglifyJS压缩的一个奇怪的bug及解决办法

今天遇到一个很奇怪的问题,在开发测试没有问题的JS代码,放到服务器上chrome就报错,错误为‘[color=red]ReferenceError: b is not defined[/color]’,初步断定是UglifyJS压缩有问题,我们将未压缩的代码放到服务器上,发现问题消失。 接着就要查找原因了,将压缩的代码用netbeans打开,使用ALT+SHIFT+F格式化,找到了错...

2012-11-13 10:42:04 3169

原创 别捧着金碗要饭,读《其实Editplus可以这样用!!》有感

最近,读了一篇《[url=http://www.cnblogs.com/see7di/archive/2012/10/11/2719260.html]其实Editplus可以这样用!![/url]》,促使了我思考,作者通过了一个生动的gif动画展示了Editplus的提高开发效率的能力,主要向我们展示了代码模板的强大定制性。 我本人不使用Editplus的,因为他是共享软件,...

2012-10-30 10:58:28 208

原创 放弃繁琐的配置!直接使用UglifyJS批量压缩目录下所有JS文件

JS代码压缩是一种十分常见的前端优化的手段,对于大量使用JS的Web应用,代码压缩可以是极大的减少代码的大小,加快传输效率,提高浏览的体验。 而在所有的JS压缩工具中,UglifyJS在不改变JS语义前提下可以提供最好的压缩率,其优异的性能而广为称颂,而与它性能相对应的是复杂的运行环境,你需要安装nodejs、然后使用npm安装UglifyJS类库,最后还要编写js...My...

2012-10-18 08:47:50 3191

原创 给自己的Web站点嵌入一个免费的图片编辑器

随着open api运动的流行和深入,很多原本需要自己开发的功能都可以通过调用他人的接口来实现,比如:通过google、baidu实现站内搜索,使用bshare加入SNS功能等等。现在就连Web图片编辑器也可以通过调用他人的接口来实现了。 Aviary发布可嵌入式HTML5图片编辑器,名为“羽毛(Feather)”,这个图片编辑器和美图秀秀等最大的不同在于它不是一个独...

2012-10-15 10:20:49 1272

原创 PHP实现IP黑白名单过滤

需求来自一个运维的同事,对一个php文件执行进行IP过滤,不方便直接配置服务器,于是需要直接在php文件开头进行IP的过滤。 IP过滤规则,可以有如下形式: 1.完整的IP地址 如:192.168.0.1 2.某一段IP 如:192.168.0.* 。 运维可以自定义IP黑白名单,由多个IP过滤规则组成,保存在数组中。通过编写代码,实现IP黑白名...

2012-09-13 10:17:54 796

原创 通过$.Deferred 实现判断N个图片加载完毕逻辑

最近,图片分享的兴起,关于图片的JS效果也多了起来,比如自动缩放、自动排版等,对于这一类效果很多都依赖于图片的完全加载后才能执行,所以,这是就需要通过js判断N个图片是否加载完毕了。 最简单的判断逻辑是使用window.onload事件,和jquery等库提供的domready事件不同,这个事件保证了所有网页内容都加载完后才触发,包括图片,而domready事件不能保证图片已...

2012-09-05 10:37:31 131

原创 jquery中钩子函数总结——jquery的另类扩展

前段时间在网站看到一篇jquery的文章:[url=http://sd.csdn.net/a/20120329/313673.html]12款强大的jQuery选择器[/url],顿时被jquery的强大的扩展吸引,而jquery也同时支持css、val等操作的扩展,虽然网上介绍jquery插件开发的文章多如牛毛,但是完整介绍jquery中这部分扩展实现的却不多,于是想整理这一块的内容,今天...

2012-08-08 16:45:04 921

原创 下决心把Ruby环境升级到1.9,问题和解决方法

        Ruby并不是我的工作语言,但是在我的工作中起了很大的作用,我陆陆续续的使用它写了很多脚本帮我节省了很多时间,以前我一直使用JRuby作为我执行环境,使用的是其默认的1.8版本的代码,1.9版本的Ruby已经出来很久了,反响也不错,但我一直没有下决心更换,不过最近我下决心准备更换到1.9版本。       首先是我难以忍受JRuby的启动速度,虽然我根据网上的方法试了很多,比如...

2012-06-21 14:24:32 138

原创 客户端JavaScript实战撤销恢复功能总结

      撤销和恢复功能,英文为:Undo和Redo,快捷键分别为Ctrl+Z和Ctrl+Y。它们是一组很常见的功能,在很多系统和软件中都有这两个功能。随着浏览器的功能越来越强,Web App将越来越占据重要位置,基于客户端JavaScript实现的撤销和恢复功能将越来越多,最近在工作中,完成了一个web系统的撤销和恢复功能,特写下一些心得以供分享。      首先介绍一下我们系统基本内容:...

2012-03-19 17:02:23 1661

原创 如何脱离Rails单独使用activesupport

      我一直有使用Ruby写一些脚本的习惯,activesupport作为Rails的一部分,为Ruby提供了很多方便的函数,大大简化了我开发。最近我闲来无事,升级了我的activesupport。结果,代码出错了。      我研究了一下报错,是因为函数不存在,难道是activesupport没有加载。google被墙了,baidu搜索一番,一点结果都没有,强烈鄙视之,总算google...

2012-03-13 13:17:39 130

原创 在netbeans替换中使用正则表达式

  最近在netbeans的替换功能中使用正则表达式中的反向引用,总是不成功,网上找资料也不容易,找了很久,终于在oracle的blog找到了答案。  原来netbeans的替换支持反向引用,只是他是使用$0、$1进行反向引用的,如果习惯了使用\1、\2的,要改改了。    原文如下:Regexp Search in NetBeansWe've recently add...

2012-02-23 12:28:01 165

神奇的Apache Rewrite,程序员使用Rewrite的一些体会

最近在公司开发工作中,一些功能使用了Apache Rewrite技术,我对这方面是一个菜鸟,在实践中边学边做,得到了一些经验和网上资料,来分享一下。 Apache是十分流行的开源软件,Apache Rewrite技术官方有着很详细的文档,关于Apache Rewrite技术是什么、如何使用等有着很详细的描述,下面有文档的中文版本: [url=http://lamp.linux...

2012-02-15 11:42:39 143

PHP高效获取树结构信息

在开发中,经常有一些简单的树形结构的存储,比如产品的多级分类,多级导航栏菜单等,这些物体有一个特性,就是通常会获取整棵树结构。在数据库里保存树结构的方法主要有三种,最简单的一就是通过一个father_id指向当前结构的父节点。对于这样的小结构,一般我们使用最简单的方式存储。 当要获取整棵树结构,网上一般用递归法,这种方式代码简单易懂,但是缺点是需要执行多次数据库查询,而且后面几次获取的元...

2011-12-30 11:26:09 445

PHP简单的伪静态URL机制实现

曾几何时,我们公司准备开发一套新的建站系统,决定将以前的框架给KO掉,重新开发一套新的框架来适应新的系统功能。领导们不希望使用外面已有的框架,号称要开发有自己特色的框架(不懂开发的领导害死人)。于是我们又投入到了新的开发当中。 由于我们的系统支持伪静态,以前的系统是直接使用服务器apache或IIS自带的rewrite文件定义规则,而框架中没有任何路由机制,于是这次框架准备使用新的策...

2011-12-29 17:19:36 624

Watij,配合JRuby 截取网易公开课下载列表

     网易公开课例有许多翻译的公开课内容,可是我家里使用有线通,看在线总是卡卡的,于是就想着将公开课下载到本地。网易提供了下载,不过一个课程20多集课,一个一个手动,太麻烦,就想使用jruby是不是可以将某节课批量将下载地址截取下面。     原本以为使用open_uri加上hpricot解析html就可以批量获取url,不过一分析下载页面,发现html的下载地址是通过js动态写入的,无法...

2011-11-04 11:42:58 125

Chrome插件之使用美图秀秀编辑图片

   这几天在网络上使用了几款在线的图片编辑器,其中美图秀秀网页版我非常喜欢,我们单位也有一个嵌入在我们建站系统的图片编辑器,使用Javascript开发的,效果很差。美图秀秀网页版使用简单,非常适合我这样的图片菜鸟,不过网上好的图片编辑器都是Flash做的,在这个领域短期内估计不会被HTML 5取代。   闲话不多说,我喜欢网上看到一些好的图片,下载编辑或者发送到微博或QQ空间上,都免不了下...

2011-09-26 12:59:56 436

原创 Android Notification 传递参数[转]

 请大家先看这个说明:相信大家在使用课本或者其他资料时候常常看到类似下面的代码。而且试了,挺好,下拉,点击,然后就有跳转。但是点击后提示栏中原有图标不消失,而更深入一点发现如果要传递参数,但是传递的参数都一样,要么都是最新的,要么都是最旧的,这跟参数有关系。好了,废话不多说,几个注意点我在下面的代码中圈出来:  //声明通知(消息)管理器     NotificationM...

2011-09-21 09:07:40 727

Android 选择联系人+返回对应手机号码

在我开发的每日短信程序中,有一个这样的功能,就是点击‘选择联系人’按钮,会出现联系人选择界面,点击选择联系人后,会将这个联系人的手机号码加入一个文本框中。关于这个程序介绍和界面可以参看:[url=http://renzhen.iteye.com/blog/1173238]我的第一个Android程序 [/url] 关于选择联系人,可以直接使用Android的内置联系人实现,网上也有些...

2011-09-19 13:02:52 593

我的第一个Android程序

想要学习Android开发,买了一本书,看了没两页,就扔一旁,再翻出来,已经半个月过去了。这时候,正是我一台乐phone手机掉了,为了防止掉了手机损失惨重,我买了一台便宜的Moto XT316手机。谁知这手机这么差,玩不了游戏,看视频也不行,我也不听音乐,平时电话短信不多。这个手机变成了废机。秉着充分利用手机的剩余价值,决定学Android开发,一方面复习Java语言,都快忘了。 看了书...

2011-09-17 11:11:12 68

Android初学心得和一些资料下载

最近android开发很火,我也忍不住兴趣来自学一下android的开发,android开发的要求很低,普通PC机+我的moto低端的android手机,齐了。 学习android开发之前,Java语言的学习了解是必要的,由于我以前学过,这步骤就略过。 为了“逼迫”自己学习,我买了一本android初学者的书《Android应用开发揭秘》,找找感觉。首先看看目录,了解一下an...

2011-09-13 11:30:31 68

Make code sweet.PHP特殊用法的一些总结(2)--PHP中的‘callback’回调

本章总结一下PHP中‘callback’的一些实用用法。1. 什么是callback? 首先简单的介绍一下‘callback’,俗称‘回调’,是一种将一段可执行代码作为参数传递以供另一个函数调用的行为,回调在不同语言有不同的实现方式,几乎现在所有的主流语言都支持这个特性,我总结实现callback的主要方式有两种:1.以C++、C#等静态语言为主的通过函数指针方式实现回调...

2011-07-11 17:26:34 109

Make code sweet.PHP特殊用法的一些总结(1)

最近一个项目接近尾声了,工作慢慢轻松了下来,闲暇时就看看一些PHP的框架和一些优秀的开源软件中的代码,一来可以借鉴一下其中的常用代码和函数,二来通过阅读别人的代码了解一些平时不太常见的函数以及特殊用法。这些代码都是针对PHP 5编码的,这样才能充分学习最新的特性。下面是我这段时间阅读代码的特殊用法的一些总结。 首先我们来说说PHP中的语法糖,在复杂的PHP应用中,一般都趋向于使用M...

2011-07-07 10:46:35 226

原创 【下载】css、php、jquery的cheat sheet

以下内容是我在找资料是在一个国外的空间里找到的,感觉不错,顺便下载收藏。css_cheat_sheet.png                                   http://u.115.com/file/bhbmxp12#css_cheat_sheet.pngphp_cheat_sheet.png                                http:...

2011-06-24 14:08:10 126

PHP应用客户端传复杂参数,JSON vs jQuery.param

       最近,我们的网站系统出现了问题,一个保存布局的功能时不时的失效,严重影响了项目的进度,于是我接下了这个问题,查看问题的所在。      于是我开始研究这段代码,服务器端和客户端,服务器端很简单,就是获取data参数,用json反序列化成一个数据结构然后处理,相反客户端js的代码写的很长,也比较乱。其实客户端的代码就是一个构造json字符串的过程,可能是出于效率的原因,原来的实...

2011-06-17 11:26:55 101

原创 【观点】如何判断开发语言的复杂度?

 一门语言的复杂程度,是由什么来决定的呢?外网Whiley发表了一篇博文《Language Complexity?》,文中指出,语言形式上的复杂和语言的复杂程度是两回事,手工输入代码量的减少,并不意味着语言的复杂度就会降低。CSDN对此文进行了编译,全文如下:有些开发语言很复杂,有些则比较简单……对吗?C++与其他任何语言相比就是一个很好的例子。但是,是什么决定了语言的复杂度呢?...

2011-06-15 10:33:24 95

原创 PHP框架,伤不起啊,伤不起

自从Rails刮起了一阵框架风,其它语言群起响应,Java,Python,Scala,PHP,无论静态动态语言都出现了模仿Rails模式的框架出现,其中,PHP语言的框架生产力更是一流,主流的PHP框架就有超过5种,加上不出名的框架的话,我估计起码有20多种框架,可怕的数量!!PHP框架之路一直充满着争议,从PHP要不要用框架,到应不应该模仿Rails,却抵不上PHP框架的井喷式的增长,各类框...

2011-06-07 00:05:35 184

原创 PHP的惰性加载和Iterator的使用

最近换了工作,改做建站软件了,我们公司建站软件的模板系统出了问题,提示内存超出最大值。内存的问题最简单的方法是修改php.ini提高memory_limit,但是随着模板数的不断增加,需要的内存又超出了上限,于是老大把这个问题让我看看,看我有什么好办法。我拿到这个问题,首先是看懂原有的代码思路,分析问题产生的主要原因,出问题的页面很简单,就是一个模板显示页面,每页显示16个模板,做分页处理,而...

2011-05-23 11:21:16 190

原创 随手记录身边的技术问题

ITEYE没有随手笔记的功能,只能开个blog,日后就在这里随手记录一下我遇到的问题和一些感想。1.HTML中form下有一个name=reset的控件(inut、select等),会导致form.reset()失效,如果哪一天你调用form.reset()出错了,别忘了查查form下是否有一个name=reset的控件。2.获得 offsetParent 在各个浏览器中,各个浏览器的各个...

2011-04-15 17:03:36 103

原创 《神雕瞎驴》,金庸看后哭了

一、身世    大家好,我叫杨过,原名杨经过。  因为妈生我的时候刚好有一只羊经过。  开始大家都叫我阿经。  成名后我开始浪迹江湖,由于我是广东人,大家也就都很亲切地叫我:粤经。  我老听得别扭的,后来乾脆就改名为杨过  我一出世,就没见过父母的面。  八岁那一年,一个叫『神雕大瞎』的收留了我。  他就是郭靖。  郭靖是个瞎子,而且瞎得很厉害,根本看不到东西,所以邻居们都叫他:大瞎。  大瞎有一...

2011-04-15 11:49:29 108

PHP输出非HTML格式文件总结

   在PHP系统开发中,除了显示HTML外,偶尔也会遇到输出文件的问题,关于输出文件,主要是三类,1. 输出磁盘中已有文件 2. 输出生成的文件(如:csv pdf等) 3. 获取生成文件内容,做处理后输出,现在我一一对三类输出做一下总结。   1. 输出磁盘中已有文件   这个功能十分常用,一般系统都支持下载上传的文件,这个功能的实现十分简单,可以使用readfile函数轻易完成。...

2011-04-14 16:37:22 183

原创 PHP中使用static变量做缓存(小技巧)

   我最近为客户做一个导入功能,功能中有一个需求,客户中有一个媒体字段,导入后要根据导入客户的媒体,查出媒体的一些数据更新到这个客户的字段中。   当我做完后,测试导入功能没有问题,便交付了,过不多久,客户反映速度有点慢,在查原因,发现和查出媒体的一些数据有关,虽然sql语句执行时间很短,但是由于导入数据量很大,每一次都要执行,导致了时间延长了。   分析了原因后,我们想解决方案了,这个...

2011-03-10 13:16:02 570

原创 Prototype 函数Position.clone在IE下失效

  在我们的系统中,经常会用到点击一个按钮,于是在这个按钮的周围弹出一个div层,而Prototype中的函数Position.clone就是就能够很容易实现对div层的位置的移动,而我在IE下发现了一个很诡异的问题,就是第一次点击按钮,div层并不会移动,第二次点击后才移动。  关于这个bug,我花时间在网上搜索,终于在一片英文blog中找到了解决方法,其实解决的方法也很简单,看一下下面的代...

2011-03-04 14:01:11 83

原创 PHP根据年份和周数获取日期

   这个是我总结PHP时间操作的第二篇文章,在开发周报,会用到一个函数,就是根据指定年份和周数,获取这一周的周一(开始日期)和周日(结束日期),我将这个函数封装后,贴在我的博客中,以供有需要的人参考。   废话不多说,直接贴代码:   function getWeekDate($year,$weeknum){ $firstdayofyear=mktime(0,0,0,1,1...

2011-03-03 17:24:14 574

原创 使用Javascript计算当前日期的周数(2)

     最近我在CRM中做了一个日报,周报和月报的功能,于是对PHP时间的处理总结了一些门道,以后一一道来,今天先写一篇关于,记得以前写过一篇关于使用Javascript计算当前日期的周数的文章,里面写过一个方法用于计算和PHP中date('W')等同的周数,如今看来是不对的,如何不对,那就要讲到周数的计算方式了。      周数的计算一般分为两种:一种是简单直观的定义,就是以当年的1月1日...

2011-03-02 11:20:35 189

原创 软件开发企业自杀行为:重写程序(转)

敏捷开发和最小化功能组合的好处是能持续得到客户反馈,快速迭代,防止无用程序的产生。但是随着时间的推移,如果开发人员不注意,那些为早期客户编 写的程序会变得笨拙不堪,难以维护,无法扩展。你最终会讽刺的得到和敏捷方法完全相反的结果。而且问题的严重程度会随着公司的壮大呈指数级增长。合理的解决方案是什么?把产品“重构重写”。对于处于快速变换的市场中的一个公司,这通常是走向灭亡的开始。看似很合理...

2011-02-19 13:25:48 200

原创 HTTP 状态码总结

最近看一些公司的面试题,看见他们对HTTP 状态码这个问题都情有独钟,我细细一琢磨,猛然问我这么个问题,我也回答不出几个,于是也忍不住搜索一番,这才发现,原来这HTTP状态码也内有乾坤,数量很多,要我死记硬背,一来让你故意忘记,二来也没什么大用,于是我决定在对HTTP 状态码进行一番整理,从而可以便于查找和复习,而且,写一遍后,记得更加牢固了。 首先,HTTP 状态码是用以表示网页服务器HT...

2011-02-08 17:18:57 104

原创 10位顶级PHP大师的开发原则(转)

在Web开发世界里,PHP是最流行的语言之一,从PHP里,你能够很容易的找到你所需的脚本,遗憾的是,很少人会去用“最佳做法”去写一个PHP程序。这里,我们向大家介绍PHP的10种最佳实践,当然,每一种都是经过大师们证明而得出的。1. 在合适的时候使用PHP – Rasmus Lerdorf没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于19...

2011-02-04 19:31:25 93

原创 《问佛》------------一篇精辟人生哲理短文(转)

住进布达拉宫,我是雪域最大的王。流浪在拉萨街头,我是世间最美的情郎。 我问佛∶为何不给所有女子羞花闭月容颜?佛曰∶那只是昙花一现,用来蒙蔽世俗的眼,没有什麽美可以抵过一颗纯净仁爱的心,我把它赐给每一个女子,可有人让她蒙上了灰。我问佛∶世间为何有那麽多遗憾?佛曰∶这是一个婆娑世界,婆娑既遗憾,没有遗憾,给你再多幸福也不会体会快乐。我问佛∶如何让人们的心不...

2011-02-04 16:52:16 160

原创 解决JRuby下Net::FTP传输文件慢的问题

我曾经写过一个Ruby脚本,用于实时检测php代码是否修改,如果修改则马上通过FTP上传到服务器上,服务器在内网上,平时使用FileZilla上传和下载文件都很快,可是这个脚本上传一个2k的文件却要2s的时间,当时我没在意,因为比起手工上传,这个延时不算什么。 最近我将JRuby升级到了1.5.5版本,升级过程很顺利,以前写的脚本都能正常运行,只是FTP上传文件的时间延持的更加厉害,...

2010-12-01 09:32:24 135

jquery.uploadify 2.1.4文件及源代码

基于jquery的上传插件Uploadify无论在功能、外观、可用性和扩展性上都有不错表现。 Uploadify简单说来,是基于Jquery的一款文件上传插件。它的功能特色总结如下:   支持单文件或多文件上传,可控制并发上传的文件数   在服务器端支持各种语言与之配合使用,诸如PHP,.NET,Java……   通过参数可配置上传文件类型及大小限制   通过参数可配置是否选择文件后自动上传   易于扩展,可控制每一步骤的回调函数(onSelect, onCancel……)   通过接口参数和CSS控制外观 上传的版本为2.1.4,包含所有的源代码,包括flash的,我也找了好久,现在分享出来。

2012-10-18

KnowYourEngines PPT

Javascript编译器技术介绍以及如何编写更佳符合编译器优化的代码。PPT讲的很全面。

2011-10-21

Getting Real

想构建一个成功的Web应用么? 那么正是时候Getting Real. Getting Real 是一种更小规模,更快速,更高质量的软件构建方法。

2011-10-21

Android API

Google Android 开发API文档

2011-09-23

Vim用户手册中文版72.pdf

vim用户手册,循序渐进,学习vim很好的入门教材,非常不错。

2011-06-14

javascript王者归来

在人类漫漫的历史长河里,很难找到第二个由简单逻辑和抽象符号组合而成的,具有如此宏大信息量 和丰富多彩内涵的领域。从某种意义上说,当你翻开这本书的时候,你已经踏入了一个任由你制定规则的 未知世界。尽管你面对的仅仅是程序设计领域的冰山一角,但你将透过它,去领悟“道”的奥秘。在接下 来的一段时间内,你会同我一起,掌握一种简单而优雅的神秘语言,学会如何将你的意志作用于它。这种 语言中所蕴涵着的亘古之力,将为你开启通往神秘世界的大门……

2010-09-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除