“易写易库”(EXEK,E Xie E Ku)项目已经启动,用易语言开发易语言支持库。我(liigo)准备用一个月左右的业余时间,完成本项目的一期工程。
用易语言开发易语言支持库,已经不是一个梦想,早已成为现实。之前已经有不少重量级人物进行过开创性研究,如金眼睛、海洋、云外归鸟等。而我的工作,也正是这些研究成果之上的拓展。在巨人的肩膀上,我站的很高,看的很远。我觉得应该可以做的更好。
“易写易库”的目标是,使易语言开发易语言支持库:
1、更简单:必须比C++写支持库简单,争取比Delphi写支持库还简单。
2、更强大:C++、Delphi写支持库能实现的功能(比如窗口组件),易语言也要做到。
3、更实用:支持库源代码要有很好的可维护性,编译出的fne不依赖任何外部文件。
本项目作为易语言支持库的通用开发框架,将以易语言模块的形式发布。
这个项目的复杂度是非常高的,好在我已经轻车熟路(用C++开发过N个支持库,用Delphi开发过X个支持库),不存在太大问题。
说实话,我已经有“很久”——以“年”为单位——没有用易语言写过大一点的程序了,最近拾起来,一样顺手。易语言“易学易用实用”的称号还真不是“盖”的。
-----------------------------------------------------------------
下面回答几个问题:
一、为什么要用易语言开发支持库?
能够开发易语言支持库的编程语言应该越多越好,这样可以有更丰富的资源供易语言充分利用,因为每种编程语言都有各自独特的资源优势。易语言用户更习惯用易语言自身开发支持库给自己使用。易语言开发出的支持库比其它语言开发出来的支持库,在文件尺寸上要小很多。
二、之前就已经可以用易语言开发支持库了,为什么目前用易语言开发出来的支持库还非常少?
估计有几个原因(或其中之一二):易用性不够,复杂度太高,功能上不足,代码可维护性不好。这也正是“易写易库”项目需要解决的问题。
二、为什么要使用支持库而不是易模块?
在使用“易模块”还是“支持库”的问题上,易友们各有自己的选择。一般来说,支持库的优势是:
1、可以定义“通用型”参数和扩展参数(“输出调试文本”就用到这两项功能)
2、可以自定义窗口组件
3、可以使用C++、Delphi、汇编、易语言等多种语言开发,充分利用各种资源
4、支持库是动态链接库,不会增加可执行文件大小
支持库的劣势是:
1、用到支持库的可执行程序,发布时需额外携带支持库文件
2、即使只用到支持库中的一个命令,也需要携带整个支持库
易模块的优势恰恰弥补了支持库的劣势。易模块的优势是:编译时静态连接,且按需连接,编译后发布不需要携带易模块文件。同样,易模块的劣势恰恰也是支持库的优势,易模块不能定义“通用型”参数和扩展参数,不能自定义窗口组件,不能动态链接,不能使用其它编程语言开发。
综合来说,“易语言模块”和“易语言支持库”各有优势和劣势,且能互相弥补,两者都是易语言重要的功能扩展方式。在实践中应该理性选择,不应有所排斥。
分享到:
相关推荐
易写易库(EXEK)用户手册,版本0.2,2008.10.31,PDF格式。主要内容:介绍使用易语言模块“易写易库(EXEK)”开发易语言支持库。更多信息:http://blog.csdn.net/liigo/category/445859.aspx
主要介绍如何在易语言中使用“易写易库(EXEK)”模块开发易语言支持库。
教你傻瓜式编写易语言的支持库 小刀易写易库教程
易语言我吃了作品。 先看test.e里的 再看ctrlib.e里的 test.e 里增加了几个简单的命令,方便大家进一步了解如何获取传过来的参数 ctrlib.e 则写了几个控件来展示如何编写支持库控件,基本上演示了支持库控件的所有...
这是一个使用易语言模块“易写易库(EXEK)”开发的易语言支持库,可用于易语言3.x和4.x,作者liigo。 命令有图标支持库,顾名思义,其中有两个命令有图标(其中第一个命令有动态图标),第一个命令的两个参数也有...
易语言源码易写易库梦优勿扰版源码.rar 易语言源码易写易库梦优勿扰版源码.rar 易语言源码易写易库梦优勿扰版源码.rar 易语言源码易写易库梦优勿扰版源码.rar 易语言源码易写易库梦优勿扰版源码.rar 易语言源码...
最简单的开源易写易库,分分钟钟搞定支持库开发,使用易语言开发支持库,让开发支持库不在成为难题
使用“易写易库(EXEK)”开发,作者liigo。此支持库已经过“斩月”处理,可在易语言3.x和4.x版本中使用(实际测试过的版本有3.0, 3.8, 4.11)。易3.x下请使用全大写英文字母输入。只为博君一笑,请慎重使用,后果...
易语言易写易库梦优勿扰版源码,易写易库梦优勿扰版,Dll入口函数,GetNewInf,ExekLib_ProcessNotifyLib,全部改C调用方式,建立命令分类,建立命令信息,建立数据类型,建立窗口组件,建立常量信息,命令分类_添加,生成_命令...
易语言支持库开发官方手册: 00.易语言支持库开发包 01.支持库实际上是一个DLL动态连接库 02.支持库LIB_INFO数据结构 03.LIB_INFO成员详细说明 04.易语言的数据类型及数据存储方式 05.接收来自易语言的...
本源码中编写支持库思路经过了三次的研究最终使用了最简洁最方便最强大的方式(详细见源码),此方式已经简化到了开发支持库如同开发易模块一样简单,所有代码均为中文。 开发动态库 将编写好的动态库中的GetNewInf...
易写易库模块化封装,里面有模块源码和测试例程。这不是简单的封装,重点是实现了类模块跟易库的“类”、“组件”的对接。...源码改变自“易语言我吃了”的模板,通过本模块的封装,使易写易库更简单化。
易写易库模块封装版ekmk.zip
易库理解XML.zip易语言项目例子源码下载易库理解XML.zip易语言项目例子源码下载 1.合个人学习技术做项目参考 2.适合学生做毕业设计参考 3.适合小团队开发项目参考
易写易库梦优勿扰版源码.zip
发个学习编写支持库的半成品源码。 目前初步调试通过。需要进一步对命令进行调试及汉化 源码的采用梦优勿扰易写易库模块编写,源码完善及编译请参照梦优勿扰易写易库模块。 参数传递可参考云外归鸟的易写易库向导
易写易库模块化封装,里面有 模块源码 和测试例程。 这不是简单的封装,重点是实现了类模块跟易库的“类”、“组件”的对接。...源码改变自“易语言我吃了”的模板,通过本模块的封装,使易写易库更简单化。