发布一个库(包含源码),全部代码14492行

Eastunfail 2004-08-30 11:01:51
Leppy 介绍


1. 什么是Leppy。
Leppy是基于XML语言的,用来定义控件布局的标记性语言。与HTML非常类似,你可以使用Leppy定义应用程序的界面,甚至可以用Leppy来构造一些简单的程序逻辑,所以无须使用任何编程语言也可以利用Leppy来创建程序,但Leppy在程序逻辑方面只提供了简单的支持,所以如果试图全部使用 Leppy来构造程序,那样只能构造简单的程序。通常Leppy是和编程语言一起使用,强制实现代码分离,增强代码的可维护性。在处理Leppy脚本的时候,目前的版本的Leppy是半解释半编译型的。

2. 为什么叫Leppy
Leppy的设计初衷就是跨平台,与目标GUI框架无关的,所以在设计的时候考虑了一些通用的性质,这个也导致他默认的脚本语法比较繁琐、罗嗦。正因为他是目标GUI框架无关的,不像Xaml绑上Avalon、XRC绑上wx、XUL绑上Mozilla,他们都和框架天生一对的,而Leppy没有,像孤儿一样,所以叫Leppy。

3. Leppy支持哪些特性
Leppy内键支持表达式计算、XPath对自己查询、对象的嵌套属性访问、对象的嵌套方法调用、自动类型转换、强制类型转换、文档资源独立、基于 XPath的循环、条件判断、多种外部资源访问协议(assembly://、http://、file://、local://、self://也可以自己定义访问协议)、异常拦截、变量访问、复数支持、35个已定义好的物理常量、IO操作、大量数学函数(如sinh、mod,部分支持复数直接参与运算)、自定义函数、自定义指令、XML脚本节点回调、事件拦截等等。

4. Leppy的未来
由于Leppy的开放式架构,对于未来兼容Xaml、XRC、XUL等都不是难事(只需要写一个 Processor并绑定到IUIBuilder即可),目前由于个人原因(要开学了,家里停宽带,大一军训期间家里人不让我带电脑去学校,所以不得不将未完成的Leppy提前放出),暂时不能把XRC和对WinForm的直接支持做完,只有等到军训结束之后才能。

5. Leppy还没做完的地方
Leppy调试器、Leppy中隐式创建对象(例如某个Form中属性定义: Icon="Icon.ico" 将自动创建Icon对像并将“Icon.ico”作为第一个参数传入构造器,其实已经做完了,但没时间加进去),与API函数的回调(等军训完了,改改 Instruction/event.cs文件就可以实现),宏替换(也是做完了,没时间加进去)

6. Leppy现在的Bug
双曲函数计算复数好像有点问题,等开学了看高数中双曲函数的一些定义后在修改

7. Leppy还没做的地方
跨平台与目标框架无关的RAD设计器(这方面有经验)、与VS集成的RAD设计,XAML兼容支持,XRC兼容支持,WinForm的直接支持。直接从 XML源文件生成C#/VB.NET/Delphi源文件,或者直接生成EXE、DLL。一个好的Leppy脚本使用教程

8. Leppy目前的规模
只是Leppy库的规模,不包含Debugger和IDE生成的代码:161个类、委托、接口等定义,40个源文件,11818行代码,独立的注释行数目有4260行(某些注释和代码写在一行中的没有算进去),源代码(只算.CS文件)大小为351 KB 。

9. 如何联系作者
可以发电子邮件到 lexchou@gmail.com 。或者等开学后到华中科技大学武昌分校专科计算机与应用专业找周竞,由于是新生,第一个月可能在军训

备注:Leppy没有使用任何第三方控件或库,全部是自己写的。这个也是我从Delphi转入.net的第一个作品。估计等Leppy做完了,我也会. net了 :P 。Leppy公开代码是让初学者和我一起共同学习研究.net技术,遵循LGPL协议,整个库或者其中一个或部分文件、类、函数、接口、结构等请不要用于商业用途,如果有必要用于商业用途,请与我联系。

源代码在线浏览: http://www.yixel.com/leppy (代码浏览系统界面模仿SourceForge.net用的,不过实现代码是自己写的,需要这个源码的可以从我索取)
源码下载: http://www.yixel.com/leppy/leppy.rar


...全文
451 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eastunfail 2004-10-23
  • 打赏
  • 举报
回复
up
qingenerp 2004-08-31
  • 打赏
  • 举报
回复
peifu!
MyCrooner 2004-08-31
  • 打赏
  • 举报
回复
Jeff20040819 2004-08-31
  • 打赏
  • 举报
回复
up
karl 2004-08-30
  • 打赏
  • 举报
回复
关注~~~~~~~~~~
lxpbuaa 2004-08-30
  • 打赏
  • 举报
回复
不错,上学好啊,呵呵!

————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
WGYKING 2004-08-30
  • 打赏
  • 举报
回复
支持楼主
aiirii 2004-08-30
  • 打赏
  • 举报
回复
支持!期待 预览
hkbarton 2004-08-30
  • 打赏
  • 举报
回复
支持!呵呵,已经预览过了
whitetiger8 2004-08-30
  • 打赏
  • 举报
回复
顶一个,真不错哦。
Shiyl 2004-08-30
  • 打赏
  • 举报
回复
mark
猛禽 2004-08-30
  • 打赏
  • 举报
回复
先MARK一下
nyf1220 2004-08-30
  • 打赏
  • 举报
回复
小眼睛,不错,顶
Eastunfail 2004-08-30
  • 打赏
  • 举报
回复
有下载的啊,最下面就是下载地址。自己下啊
shitianj 2004-08-30
  • 打赏
  • 举报
回复
学习一下~!可不可以发我邮箱一个??我的地址:shtianj@163.com
顶~!
juliens 2004-08-30
  • 打赏
  • 举报
回复
强,楼主!
fim 2004-08-30
  • 打赏
  • 举报
回复
呵呵,支持楼主
Eastunfail 2004-08-30
  • 打赏
  • 举报
回复
再p.s.一下:这是我7月从Delphi转.net后做的第一个东西,刚开始的时候也许好多地方代码写的很弱智,但随着后来的不断编写,个人感觉自己的代码质量不断提高。如果大家看到很弱智的代码,不要鄙视我。高考结束后买了新电脑,高中三年没有玩游戏,为了补偿,放假期间打穿了快20个游戏,看完了100多部电视剧和大概40多部电影,所以也极大的影响了Leppy的开发,本来现在都可以全部做完的。无奈现在因为下午就要去停宽带,提前放出未做完的版本,连单元测试都没来得及搞。
yinzhiw 2004-08-30
  • 打赏
  • 举报
回复
看看
hkbarton 2004-08-30
  • 打赏
  • 举报
回复
突然发现delphi版改版了啊
加载更多回复(18)

828

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧