一种新的编程思路(下):GBDP,"面向需求"的编程方法
难得糊涂编程法 GBDP (适用jsp、asp等编程)
在"上"和"中"里面,我已经发布了源代码,现在已经推出了最新的
GBDP2002版本,如果谁有兴趣可以向我索取完整的2002打包,
一个运用GBDP2002实现BBS的范例
包括我jsp、数据库编程的一些经验积累
newtower@163.net qq_30234923
用GBDP实现BBS的范例说明:
平台使用了MSSQL SERVER, Resin
在WEB-INF目录下需要添加web.xml 用来显示在线人数
数据库表将在你运行页面的时候自动建立,不用费心,
你只需要定义好连接参数就可以了
所需要的文件都在压缩包里,自己找吧
我发展GBDP技术的原因是想创建一种新的编程体系结构,用“面向需求”
的方法取代现在的“面向对象”。GBDP简单灵活强大,但不好理解,因为
它太灵活了。我的软件开发同事承认我运用GBDP的实现代码非常短,而且
几乎没有详细系统设计的过程,不用关心数据库的设计等很多优点;
但怀疑它是否能实现复杂的功能,还有运行速度。我用事实证明了功能
的强大和不低的统计查询速度(百万记录级测试),但他们还是不愿意采用,
因为需要时间去理解,并且要把“面向对象”的旧思维转换到“面向需求”
并不容易。老板就更不会采用我的GBDP了,因为采用新方法的风险很高,
况且又不用他自己维护程序(相信每个维护过别人程序的人都有到健身室
打沙包的强烈欲望)
我把软件开发划分为3个时代:
--面向过程(过去)、
--面向对象(现在)、
--面向需求(未来)
过去的东西就不浪费时间了,面向对象的方法是我们现在编程的主要
方法。一般的实际工作流程是:确定需求、系统设计、编码、测试、维护。
其中确定需求和系统设计最具重要性,你可以从开发人员和维护人员的
抱怨、骂街中了解和体会。需求确定后,核心就是在系统设计阶段构造模拟
现实的对象模型,并根据这个模型设计数据库等等。
这种方法,有点美国的M16步枪的风格,在风和日丽的环境中,
射击精度高,如果地球像个温室的话。
但有一个致命伤,就是当需求变动的时候,恶心、偏头痛、神经
衰弱就成了程序员的常见病,尤其是中国的客户经常喜欢节外生枝的告诉你
新的想法和规划,没有人负责,没有人知道全局应该是怎样,反正告诉你了
就得做,这就是国情。我希望自己的作品能够让更多的人可以偷懒的完成工作
任务,就像我国的5.8毫米枪族,风霜雨雪春夏秋冬照样吐火舌.
当然理解我的方法需要一些时间,但你会发现这些时间是值得的,我
没有时间给你写太多的使用说明,希望你多看看我的代码,从项目中学习;
这也是本土风格,尽管不好。等你弄通了GBDP的精髓,你会发现jsp,asp
编程竟隐藏有如此诱人的魅力。
我用C++BUILDER开发过财务软件,用EJB+ORACLE做过分销系统, 给美国
Brio公司解决过他们自己的工程师解决不了的软件BUG;但jsp,用它开发项目
最随心所欲,可以发挥你的灵感和创造,虽然它的功能速度不如C++,但方便
快捷实用通用。
在目前我所遇见的项目中,还没有发现用GBDP技术实现不了的,因为世界的
80%都是简单,只有20%才是复杂。为了验证它的性能,我打算有空了用GBDP技术
开发一个"靓女资源计划"BRP, 相信难度不亚于"企业资源计划"ERP :)
---------------------------------------------------------
GBDP技术实现设想:(General Blackbox Dynamic Programming)
开发速度快、代码量少、通用,数据库表自动生成,记录自动增加,
修改,删除,系统设计工作量少,可以在需求不明确的情况下开工,
渐进式开发,拥有需求频繁更改、代码基本不动的自适应能力。特
别适合国内软件乱序开发的国情
主要解决问题:
系统设计工作量大,需求更改影响大,项目交接困难,编程风格各
异,数据库备份困难的问题
已经实现功能:
数据表自动生成,记录自动增加,修改,删除,自动文件上传
注:发表后代码//都变成了file:// , 请改正