论工业化方向上的编程发展思路 修订

我先说一个例子:
       在一个理想化的蚂蚁狩猎场上,如下:
   ************
   |                    |
   |     &  #      |
                    |
   |                    |
   -----------------

蚂蚁由底线出发,将食物推向终线.&一个蚂蚁可以推动,
#要三个.请给蚂蚁智慧吧!
我会说:"1)向前走.2)遇食物推,超过5秒不动相左走,遇食者遇壁停.
3)不遇食者,碰壁向左.推食终不渝.
4)在时间T后返回初始化.
这是自组织.因为简单所以生存!
当然出于竞争策略两族蚂蚁会有不同的T.(对于不同的食物周期会有不同的胜利者.)
这是一个小小的鲜活实例。

你可看到这是一个思路,即指明了工业化的软件路是可行的。工程的构思和组织是可以在智力密集的软件制作中走出一条路的,但具体方法不是自组织,尽管在形而上上似乎相同。现在除了直观上的感官,我们还需要更深层次上分析,庖丁解牛贵在娴熟!所以下面给出了一些思路与鲜活的资料。

一种新的编程语言
1):推翻面向对象编程,应该面向“概念”编程,每个“概念”的转变作为模块的划分边界,转变操作由“消息”完成。
2):将重型循环和GO...TO利用“消息”完成其实现。轻型循环仍然归入基本代码块。
3):将变量的类型转变,和同类型之间的内部影响,以及模块属性值转变,作为“消息”实现。
4):操作也由“消息”实现。
技术路线是:
以Windows或Linux下的多应用程序和交换文件作为手段实现多线程,将面向“对象”转为面向“概念”编程;
以保留词全局变量的设置实现消息,相应补充关键词处理函数。
1):的实现如下:
        列出涉及自动化及人工操作的重要概念,一个概念的操作在一个模块实现。消息用来实现概念的转变(TurnNews)与相互作用(EffictNews)及同类型之间的内部影响(FriendEffictNews),还有模块属性值转变(AttributeNews)。

2):的实现如下:
       重型循环是指涵盖了不同“概念模块”的自动化操作,使用If for&nextEndFlag=True Then End =True; 处理函数和循环消息实现。
       Go...To同理。

3):的实现如下:
         编写消息表,利用标出消息的索引发出消息。Simaple:    101;    /*The Function for news Will be send a news for 101 news.*/
编译为Tc2.0  *.c 时在源文件中加入关键词处理函数,处理消息并且也发出消息来实现消息处理。
4:)的实现如下:
       在模块中发出消息实现概念的转变及影响完成程序功能。
重点:
       a):程序功能由概念的转变及影响实现。消息作为封装和孤立的手段被广泛应用。
                b):Vc++和其他重量型语言太复杂所以不可控。使用TC2.0轻量型语言结合“概念模块”和“概念要转换”条件来分隔模块边界。
       c):只要编写时使用文件来获取和显示数据,就可与Linux下的C兼容。使用文件来互传数据与消息,可并行运算。


建模实例:
    先用面向对象方法
    咖啡机由以下部件构成,有PIA(可编程接口适配器),还有CoffeeMaker(咖啡壶),和Simulation(驱动器)构成。加上GUI。

    再用面向概念方法
         PIA有开关A,B,C“概念”,CoffeeMaker有咖啡豆,动力,水“概念”
    ,Simulation有电能,开关E,F,G“概念”
    具体实现代码时,咖啡壶的循环水将由合适的“水循环”巨型循环消息实现。跳转为保温可由“GOTO”消息实现。
    PIA开关A,B,C“概念”的“按下”将会产生重要的PressTrue消息,从而改变了概念“Simulation开关E,F,G概念”的Press属性转为True。
    主函数只要处理消息便足矣。可谓“好处多多!”

跳转新解:copy跳转处直至区域结束,在同区域用:
If 0==0 Then
"copy"
Else if

据此提出猜想:所有goto前跳都可改写为后跳。

庖丁的牛也该鲜活地呈现在脑海中了吧。接着分析:

工业化之路,微软的确做到了,如果你在任何一个程序中在保存文件时想要删除上一次保存的鸡肋,可以毫不犹豫的在保存对话框中按shift+del,这是大厂的技术,起于精心的设计,产生无穷的简约。(更可能是比尔的狗屎运。)但是在达成大厂之前,死去了无穷的小厂,不管他是否纪律严明。但是在正态分布的成功者中,这是一种必然的现象。

我的拙见,C++的类思想只不过是一种对逻辑的封装,以获的工业化生产上的逻辑直接。
  所以下一代的“类”应是一类适用于工业的逻辑封装以获得自由,形式上的以及分工及时间序列上的工业化!

中国人的软件,应是符合工业化大生产的产品,而不是工艺品,否则其发展只会是如同中国的丝织品与西方的机织品。时代就在眼前,失去只会徒生遗憾!
起来吧!
     起来吧!
         起来吧!
作者:盛波   单位:哈尔滨理工大学 控制科学98


相关文章
对该文的评论
flyfash ( 2002-06-26)
关于“类”,我想可以在一个良序的结构里快乐的使用!
Good LUCK!
flyfash ( 2002-06-26)
“将变量的类型转变,和同类型之间的内部影响,以及模块属性值转变,作为“消息”实现。”
中“   和同类型之间的内部影响,以及模块属性值转变,  ”据我的估计是形成消息链条的辅助消息种类,
本想只要“    将变量的类型转变,      ”这种消息,将是多么的简捷。但是不能形成结构框架,只好狗尾续狐了。
flyfash ( 2002-06-26)
“每个“概念”的转变作为模块的划分边界”
有了这一条,就会消息变成长链流到主函数处理,不会形成各个模块之间的短链,缺乏统一的调度。
有了统一的调度,就会是良序的结构。
flyfash ( 2002-06-26)
“将变量的类型转变,和同类型之间的内部影响,以及模块属性值转变,作为“消息”实现。”
按下电钮,热水器流出热水。是我们梦想要得到的“直接”。我的建模方法是先取两头--“冷水”、“热水”。
再加电钮,有了电钮拖出了电流,有了电流关系了某某。寻找各个关系的东西直到消息链的贯通。就实现了“冷水”与“热水”的转变,即软件的实现。
一个拎一个便会逻辑贯通,“冷水”变成“热水”不是戏法,需要消息链的辅助,同时又保证了模块的独立完整性,便于编码。
flyfash ( 2002-06-25)
机器或是软件代替不了人的智慧,我提供的只不过是一个更合理的思考方法,如同我给出的例子,有了好的开端、好的方法学作指导,就会有好的结果。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值