摘要:
正在看林锐博士的《软件工程思想》,看到需求分析,很是感慨。需求分析要问的三个问题:做得了吗?做得好吗?做得快吗?这3个问题,最终关系到一个核心的问题,软件能不能换成钱!这让我想起来,我刚工作时,老板找谈话,我稀里哗啦地说了一堆,比如系统架构太差,代码质量太低,应该立即、马上换个架构,云云。老板完全没有动容,我一度觉得自己很正确,不理解老板是怎么想的。现在想想,我真是很幼稚,我真的能做,能做好吗,答案当然是不能,我至少得研究公司的现有代码很长时间,还得查文献,除了战斗力,我当时什么都没有,啥时候才能做完啊。没有确定的经济效益,老板当然不会做。StackOverflow 创始人 Joel 说程序员 阅读全文
摘要:
虽然总是想学下算法方面的知识,但又总是纠结在各种协议、各种放言、各种处理器架构上面,不能专心学下去。最近又受刺激啦,读以太网校验和算法时,发现着实不能明白,想实现个内存分配算法,不太会,束缚啊!怎么办呢,学点啥呢,算法导论?离散数学?操作系统? 阅读全文
摘要:
Keil MDK 4.23 支持Eclipse啦!早就应该这样了,Keil的编辑功能实在是太差了,而且和各版本控制器集成也不好。Eclipse很好很强大!配置方法参见:http://www.ourdev.cn/bbs/bbs_content_all.jsp?bbs_sn=5297682安装的注意事项是采用 file:/// 协议而不要直接用文件夹路径即可! 阅读全文
摘要:
上一篇说了luacom不支持gbk,不过可以用iconv来解决,但是我还发现了一个问题,貌似 enumerator 不太好使require "luacom"
require "luaiconv" function createIconv(to, from) local cd = iconv.new(to, from) return function(txt) return cd:iconv(txt) end
end L = createIconv("utf-8", "gbk")
Z = createIconv(&q 阅读全文
摘要:
背景 luacom是一个非常强大的模块,它使我们可以应用各种com组件,比如Word,但是,有一个问题,中文文件名它不识别。为什么呢?因为com内部是unicode的,于是luacom要求所有输入都是utf-8的,而且luacom的输出也是utf-8的。这可肿么办啊?iconv GNU有个libiconv库,要是有这个我们就不怕了! luaforge上搜索下,果然有lua-iconv,安装! luarocks install lua-iconv 不好意思,出错啦!出错的原因有两个:我们没有安装libiconv库lua-iconv没有提供用cl编译的方法自己编译lua-iconv下载编译好的Wi 阅读全文
摘要:
背景学了一段时间lua,由于luacom不支持gbk,所以想做一个gbk转换成utf-8的模块。但是不会写模块怎么办?学!目标创建一个calc模块,输出两个函数 sum和average,最后在lua程序想这样用:require "calc"
a = 5
b = 10
print(calc.sum(a,b))
print(calc.average(a,b))学习过程简述读Programming in Lua有关C API一节读Lua Reference Manual -> The Application Program Interface 一节下载lua5.1.4源代码 阅读全文
摘要:
C语言没有像Java那样的try catch处理异常错误的能力,不过可以用setjmp和longjmp两个函数实现错误处理的基本逻辑。setjmp(BUFFER)会将程序当前的寄存器状态保存到BUFFER数组里,这个数组用jmp_buf定义:#include <setjmp.h>
jmp_buf BUFFER;longjmp(BUFFER, n)将程序流跳到setjmp的位置,同时恢复BUFFER中保存的状态。第二个参数n为一个整数,当通过longjmp(BUFFER, n)跳转到setjmp位置时,setjmp函数的返回值为n;否则,如果是直接执行setjmp,则返回为零。根据这 阅读全文
摘要:
luasql模块支持sqlite3,可以完成最基本的数据库功能,不过官方文档上写得不是很详细。扫了下源代码,外加实验了下,得出了点经验。环境Windows XP,LuaForWindows代码require"luasql.sqlite3" function enumSimpleTable(t) print"-------------------" fork,v in pairs(t) do print(k, " = ", v) end print"-------------... 阅读全文
摘要:
1SSH服务器1.1安装open-ssh软件包在Ubuntu上建立SSH服务器是非常简单的,但是XP上就要费点劲了。首先,安装Cygwin。好在网易提供了Cygwin的镜像,所以这一步现在变得异常地简单。1.从Cygwin的官方网站http://Cygwin.com上下载setup.exe2.安装时选择http://mirrors.163.com,下载速度特别地快3.选择软件包OpenSSH,安装直到完毕1.2安装sshd服务1.安装完毕后,将Cygwin安装文件夹里的bin文件夹“C:\Cygwin\bin”放Path环境变量中2.双击桌面上的Cygwin图标打开控制台,输入 “ssh-ho 阅读全文
摘要:
背景最近想在公司整一个git服务器,需要做一些配置,看着.git/hooks/文件夹中的*.sample文件夹,很是不解,把".sample"去掉就可以运行?事实证明,真的可以,将下面的代码放到pre-commit文件中,就可以在commit时,输出"Hello Git!"消息#!/bin/shecho "Hello Git!"Lua虽然我会一点点bash的脚本,但其实跟不会没多大区别~~鉴于Lua的简单易用性,及在Windows平台采用wxLua做界面是如此地优雅,已经准备在以后的日常工作中广泛采用Lua进行一些简单地自动化操作。所 阅读全文