Limodou个人资料 2012-4-19
-- limodou [2004-08-15 05:43:05]
Contents
Limodou个人资料库
主要记录我的研究兴趣和我的研究成果
个人经历
在学校时学过汇编、C、Pascal、VB、VC、Foxpro(这个东西虽然很烂,但那时用的人很多)。上学时C++还是学得不错,学习了一些面向对象及Windows的事件编程的思想。仿照Turbo Vision做了一个DOS界面库,功能虽然不强,但还可以用。现在已经找不着了。曾经给一个老师学过一个暑假的工作,不过没干什么正事,但了解了模板化的思想。就是把可以做的东西做成模板,不确定的东西做成变量进行控制。毕设是同几个人给老师做了一个考试系统,主要用Foxpro,再加上远程拨号,主要工作是堆代码。
工作后主要使用C进行数据库的开发。学习了Unix,Shell。学会了如何使用C进行嵌入式数据库开发。做过字符界面的菜单生成器,可以保存为配置文件,并生成相应的源程序,采用Unix的cursor库。利用别人的库函数做过AS400文件与Unix的编码转换,完全是通过配置文件实现的,也是自动生成程序。利用Shell做过报表打印程序,及相关的简单应用开发(现在忘了不少了)。学过一点AS400的皮毛,做过一个系统运行的监控程序。后来,在项目开发中使用cursor库最终做成了一个功能比较全的公共函数库,包括菜单、报表和凭证打印、输入界面、全屏编辑器、数据库查询等界面库函数,利用了事件、模板、XML的一些思想。学习过Delphi,做过一个记录本Pad程序,支持文本及列表两种数据表示方法(现在已经找不找了);wallman墙纸切换程序,那时还是运行在98下的,自动换墙纸;最得意的可能是uploader了,一个ftp主页上传软件,以树形结构显示本地与服务器文件的异同,并可以上传比较不同的文件。这些软件已经不再做了,因为对Delphi已经不感兴趣了。做主页的时候用得是PHP,那时翻译过许多的文章,结果有一次,从国外发来一封信说我的翻译有版权问题,因此我生气地回了一封信,从此只翻译没有版权的文章,到最后几乎都是自已来写了。那时对翻译比较感兴趣,就把从计算机世界上的每期的英文时文翻译弄下来,放到我的主页里去,还做了一个单词查询。不过那时用得是51.net,后来因为付费的问题就不做了。翻译过最长的要算是学了Python之后,《Dive Into Python》,不过这项工作我也暂时没有继续下去了,翻译是件很累的工作。学Python很偶然,但一学就没放下过,也编过不少小程序,直到最近才直正做了一个比较大的项目 -- NewEdit。刚开始是参与了drPython的开发,但随着开发的深入感到扩展的方式不够灵知,因此还是独立创建了这个项目,主要采用的技术是Mixin和Plugin。同时还学习了Zope,在国外申请了一个免费的站点,做了我的Zope的主页,完成了一些主页维护的一些开发。并且使用Zope做了一个协作性翻译平台,但没有人用,一直就在那里放着。也学过Java但一直没做过什么东西,所以过一阵子就忘了。如果时间多了,会研究一下.Net,书已经买了,还没看完(时间不够用)。
我比较感兴趣的就是工具性软件,因此对这方面的开发很感兴趣。NewEdit算是一个尝试。以前做的公共函数也都是出于想提高工作效率的目的。在开发过程中对文档也很感兴趣,虽然本人不是特别喜欢写文档。因此学习过Latex,并写过一个在Windows如何使用Latex处理中文的教程。学习过DocBook,并写了一个如何使用DocBook的教程。用过doxygen生成文档,但工作好累,只做了一部分。现在的社会是图形界面为主了,我以前开发的字符界面的东西可能已经没有多少用了,因此也懒得去整理了。为了生成好看的DocBook,不得不研究了xslt和Java的一些工具。国外这些东西每次一学都是一串,学起来好累。
现在我的主要精力是做 NewEdit及其相关的项目,如维护Meteor、EasyGuider等。主要的社会性工作就是做好中国Linux论坛的版主工作,并在成立CPUG之后从事 Python 的推广和教学工作。
研究成果
DocBook
写了一个DocBook的教程,阅读可以访问: DocBook学习 打包下载
Mixin
这里有我以前写的关于Mixin的文章:
现在 NewEdit 中大量地使用了Mixin,具体的处理已经有很大的不一样了,有时间会撰文写出来。
NewEdit项目
大量地使用了Mixin技术。查看NewEdit
Meteor项目
这是由Otter模板系统引发的一个小项目。是我设计的Python模板项目。查看Meteor
EasyGuider项目
方便生成Wizard和Dialog的项目,可以与Meteor相配合成为一个模板替换或代码框架生成工具。查看 EasyGuider
ConfBot项目
看到一个有趣的 confbot 项目,然后先是汉化,接着就是一系列的改造,版本从1.2一直升级到1.9.1(目前)。欢迎访问 self:GoogleTalkBot
Latex使用
写过一篇如何使用Latex的中文教程。阅读:LATEX中文环境使用(Windows)简介
XML
写过如何使用MiniDom来处理XML,阅读:MiniDOM处理XML文件
编写扩展Python库
国际化和Unicode处理
Python模块使用
pySqlite
roundup
我使用roundup的经历 roundup的安装
加上中文的译文 中文化的过程
setuptools
SetupTools 是一个新出的打包、安装工具,使用起来很方便。DjanGo 就是用它。访问它的主页
我学习setup.py的一些心得:
SQLAlchemy
一个象SQLObject的ORM数据库模块,非常强大好用,强烈推荐
pyblosxom系统测试及改造
Blog系统的安装、测试、及改造。PyBlosxom-li
文本转换->HTML
这里讨论的文本转换都是指文本片段的转换,不是完整文档的转换。如果要实现也不是困难的。而且这些功能在NewEdit已经实现了。可以通过菜单就将选定的文本转成HTML了。
Web Framework 研究
Zope
- 个人早期网站
"翻译与评论网" 下载: CCTranslation_ed2.zexp
KarriGell
找个目录存放你的东西 如何设置起如目录及5种页面写法介绍
k_config.py取得配置文件的信息 分析k_config.py的处理过程
Portal Demo中用户管理的学习 了解KarriGell中dbstorage层的使用
DjanGo
以下为0.91版本
- (六)一个wiki的例子,篇幅有些长,因此分为三部分
- (七)一个通讯录的例子
以下为0.92+版本(当前DjanGo的最新版本为0.95)
多线程研究
Casing模块
文学编程
以reStructuredText为基础开发了一个小工具,它可以将自定义的code指示的内容保存为程序。
小程序
Crawl
抓网页工具 最新版本为2.1.1 下载
obj2ini
将对象以ini形式进行序列化,目前此功能已经合并在 EasyGui 项目中。除了支持对象的处理外,还可以处理一般的变量。
ZFile
Zip文件压缩解压处理模块。同时提供命令行方式调用。可以压缩给定的文件和目录(包括子目录),同时生成一个压缩文件列表。以后可以使用它来重新生成压缩包。这样可以方便从许多文件和目录中,通过文件列表,只选择想要的文件将其压缩。主要是可以方便 NewEdit 中包的生成。 下载
资料上传
在线阅读[wiki:localshare/classes/0904-tutpy/tutpython001/ tutpython001] (1)