摘要:#!/bin/sh################################################ ## author:lishujun ## date:2013-4-17 ## use:$./testread.sh 20130425 ## ##########...
阅读全文
摘要:英文原文:What Makes Code Readable: Not What You Think 作为开发者,可能会经常听到“代码首先是写给人看的”、“写可读的代码相当重要”等等。 对于如何使代码的可读性更强,开发者往往都有自己的看法。那么你可曾仔细想过什么才能真正使代码可读性增强。 一些标准答案 无论你使用什么编程语言,你都可能会认同下面的建议可以增强代码的可读性:好的变量、方法、类名一个变量、类、方法只做一件事一致的缩进,一致的格式减少代码中的嵌套级别当然,还有很多其他标准答案,比如Clean Code(Robert Martin 著)和Code Complete(Steve...
阅读全文
摘要:http://www.csdn.net/article/2013-04-24/2815026-Netflix-House-of-Cards-Bigdata?reload=1发表于20小时前|1432次阅读| 来源CSDN|4条评论| 作者子曰Netflix大数据电视摘要:继美剧《新闻编辑室》(Newsroom)走红之后,又一部描述美国政坛宫斗的《纸牌屋》(House of Cards)再次火了一把。投资方Netflix甚至在 《纸牌屋》开播前就知道该剧一定会火,秘密就来自大数据分析。CSDN摘译(子曰/文)继美剧《新闻编辑室》(Newsroom)走红之后,又一部描述美国政坛宫斗的《纸牌屋》(H
阅读全文
摘要:P7把主要精力集中于构建活动,可以大大提高程序员的生产率。在最近的一个项目中,对于这一点,我是深有体会。我们花了很长的时间做设计,结果接下来的许多工作都在愉快的心情下完成。我觉得 P28 的那个食物链的例子更有说服力,健康的生态环境中,海鸥吃新鲜的鲑鱼,鲑鱼吃新鲜的青鱼,青鱼吃新鲜的水蝽。这是一条健康的食物链。如果环境被污染了,水蝽在污染的水域游泳,那么海鸥,食物链的最后一环吃下的不仅仅是是不健康的鲑鱼体内的垃圾,还有青鱼,水蝽体内的污染物。软件开发中,架构师吃掉需求,设计师吃掉架构,程序员,软件食物链的最后一环,消化掉设计。如果一开始就被污染了,我们就不要指望程序员快乐了。整个软件都会具有放
阅读全文
摘要:需求根据用户的贡献值计算pab(支付给用户的现金)用户信息包括userid,classid,bu3,bu5,bu7,newimei(bu3~bu7,newimei都是某种贡献值)最初的需求pab1 = newimei * 0.8 /1.3pab = min(pab1,bu7)第1次提出的需求变更当classid = 300时10天内pab1 =bu5pab = min(pab1,bu7)10天后pab1 = newimei * 0.8 /1.3pab = min(pab1,bu7)第2次提出的需求变更当用户userid=2000pab1 = newimei * 0.8 /1.5pab = mi
阅读全文
摘要:#!/bin/shawk 'function createArray(filename,arrayname){ while(getline<filename == 1)#等于1的判断是必须的,否则文件不存在会产生死循环 { arrayname[$1] = $2 print arrayname[$1] } print ""}END{ createArray("aaa.txt",a); createArray("bbb.txt",b); print "output content of aaa.txt"
阅读全文
摘要:http://www.oschina.net/translate/go-at-google-language-design-in-the-service-of-software-engineering
阅读全文
摘要:http://www.iteye.com/topic/118386
阅读全文
摘要:看了kent的实现模式,对代码抽象层次有了一点理解,kent首先问了一个问题,下面的代码有神马问题?void compute(){ int flag = input(); flag |= 1; output(flag);}粗看来没有,但其实不然,但其实,input和output已经是高层抽象了,例如你并不知道输入来自于何方,到底是键盘输入呢,还是文件输入,又或者是网络输入,同样output也是如此,但是中间设置flag的语句则是一个低层抽象,如果整个函数都是低层抽象,代码应该是这样:void compute(){ int flag = 0; scanf(...
阅读全文
摘要:#!/bin/sh################################################ ## author:lishujun ## date:2013-4-11 ## use:$orderdetail 2013-4-11 ## ##########...
阅读全文
摘要:因为英文太烂,写不了英文注释,说以在这补一下这个脚本的功能说明:这个脚本是统计书籍的订购量,订购用户数,浏览量等信息(以天为单位),这里的书籍,是按章销售的,所以记录的最小粒度是章节的订购量,订购用户,那么脚本就需要根据bookId为唯一标识,去累加各章(在某一天的)的数据,汇总到一本书下。基本流程是:清理上次计算产生的临时文件下载最新的数据到临时文件统计 并将结果生成SQL脚本执行SQL脚本入库其中统计又分为3.1从临时文件创建一个books数组(他是一个复合数据结构,每本书的属性都可以通过books[id,"属性"]索引)3.2遍历章节销售记录,根据记录里的bookId
阅读全文
摘要:1 #!/bin/sh 2 3 echo "$0 start at `date +"%F %k:%M:%S"`" 1>&2 4 5 cd /www/scripts/stat/ 6 . stat_date.sh 7 . dblist.sh 8 9 . public_func 10 11 stat_date=`riqi $1` 12 instime=`date -d"$stat_date" +'%F'` 13 last_date=`date -d"$stat_date 1 day ago"
阅读全文
摘要:http://blog.51yip.com/linux/676.htmlwindows是目前来说,用户都多的操作系统,基于windows开发也最多,虽然我很不喜欢windows。但是公司提供的电脑就是windows的,想装个双系统,又不能下载,杯具。费话不多说,windows下面我用过二个快速搭建web服务器的工具,一个wamp,一个xampp,下面列举几个,并作一下说明一,wamp工具wamp它是windows apache mysql php的缩写,表示的意思是说,我拥有这些东西。http://www.wampserver.com/en/download.php安装我就不说了,一直下一步就
阅读全文
摘要:http://blog.chinaunix.net/uid-78707-id-2603396.htmlLog4shell是开放源代码项目Apache Logging Service的子项目log4j在shell下的实现,用于为shell程序提供日志功能,以便开发者对目标程序进行调试和审计。虽然shell可以方便的操作文件,但通过成熟的日志框架更方便我们对日志的记录与处理。 要安装log4shell,必须先安装log4cxx,因为log4shell是基于log4cxx实现的,关于log4cxx的安装,参照我的另一篇文章:http://blog.chinaunix.net/space.php?ui
阅读全文
摘要:http://wmcxy.iteye.com/blog/1450209BitNami 提供redmine的一键安装程序,简单、易用、方便1、下载地址下载地址:http://bitnami.org/files/stacks/redmine/1.3.1-1/bitnami-redmine-1.3.1-1-windows-installer.exe也可以到此地址查看:http://bitnami.org/stack/redmine2、安装3、注意事项第五步,创建管理员账号的时候,需要将用户名称和密码记录下来,此用户即为redmine安装好后的管理员账号;4、安装成功的界面a、打开浏览器,直接输入ht
阅读全文
摘要:http://www.ibm.com/developerworks/cn/linux/l-cn-awkf/温 泉(saphires@sohu.com), 软件工程师, 捷思锐科技(北京)有限公司简介:本文从两个错误的例程开始,提出 Awk 中全局变量污染的现象,并分析其发生的原因。接下来,针对 Awk 变量作用域的特点,提出两种避免全局变量污染的常用方法,引出 Awk 中定义局部变量的方法,并提出修改过后的代码。然后,通过 Awk 的变量调试功能,提出修改过后代码存在的不足,并引出编写通用函数应注意的地方。最后,通过简单说明 Awk 中包含头文件的方法,倡导大家更科学,更有效的使用 Awk 这
阅读全文
摘要:看来的代码,测试通过#!/usr/bin/perlsub func1 { print "func1 is running\n";}sub func_test { my $func_ref = shift; # ref will return 'CODE' if it's function reference if ( ( ref($func_ref) eq "CODE" ) && defined( &{$func_ref} ) ) { &{$func_ref}; print $@ if $@; }
阅读全文
摘要:函数#! /usr/bin/perl#传参测试sub hello{ print $_[0];}&hello("hello,world\n");#返回值测试sub max{ if ($_[0] > $_[1]) { return $_[0]; } else { return $_[1]; }}$n = &max(10,23);prin}test(模拟函数指针#! /usr/bin/perlsub hello{ print $_[0];}&hello("hello,world\n");#模拟函数指针的测试@funcPoi...
阅读全文
摘要:#! /bin/sh#awk '{ print }' /etc/passwd#awk -F":" '{ print $1 }' /etc/passwdawk 'BEGIN{testArray["a"]="aaa";testArray["b"]="bbb"}function test(){ #print $1; print testArray["a"] print testArray["b"]}test();END{p
阅读全文
摘要:环境:ubuntu10.10 + bash函数定义以及传参#! /bin/shtest(){ echo $1 #打印第一个参数}a='hello,world'test $a #参数必须是定义好的变量传递两个参数#! /bin/shtest(){ echo $1 #打印第一个参数 echo $2 return 127 #只能返回整数}test 'hello,world!' 'lishujun' #传递两个参数echo $? #取得函数返回值,调用完毕立即取值取得返回值#! /bin/shtest(){ echo $1 #打印第一个参数 return
阅读全文