两个程序员的对话


2006-09-23 22:40:30 程序员A
新公司感觉怎样?

2006-09-23 22:40:52 程序员B
好像没什么感觉
 
2006-09-23 22:41:11 程序员A
晕,你是什么职位?

2006-09-23 22:41:21 程序员B
高级软件工程师
 
2006-09-23 22:42:10 程序员A
.NET开发?

2006-09-23 22:42:04 程序员B
在以前的公司还有几个手下的,现在又变回别人的手下了
 
2006-09-23 22:42:40 程序员A
很快你就会再次升上去了

2006-09-23 22:43:40 程序员B
嗯,.net。。
本以为既然是写代码,如果可以好好搞一些C++还好的。。
 
2006-09-23 22:44:12 程序员A
.NET上C++不是已经变了么?

2006-09-23 22:45:01 程序员B
是啊,不过本质还是一样的
 
2006-09-23 22:45:23 程序员A
怎么又对C++发生兴趣了?

2006-09-23 22:45:55 程序员A
感觉C++现在已经是embedded system上的语言了,呵呵

2006-09-23 22:46:35 程序员A
我现在用C写C++式的代码

2006-09-23 22:46:42 程序员A
感觉真是痛苦

2006-09-23 22:47:01 程序员B
不是啊,搞了几年.net觉得有点空虚。。
还是换回C++比较爽,或者玩玩java
 
2006-09-23 22:47:30 程序员A
听说J2EE是宇宙...

2006-09-23 22:48:13 程序员A
对了,有没有办法动态的更动接口?

2006-09-23 22:48:05 程序员B
呵呵。。宇宙什么?
 
2006-09-23 22:48:25 程序员A
就是说J2EE无所不包

2006-09-23 22:48:40 程序员B
哦?你想怎么动态更动法?
 
2006-09-23 22:49:02 程序员A
我研究了一下reflection,

2006-09-23 22:49:31 程序员B
也不是啦,J2EE只是企业级开发而已,嵌入式还是用J2ME之类,听说也很好玩的
 
2006-09-23 22:49:43 程序员B
.net reflection?
 
2006-09-23 22:50:02 程序员A
比如有 几何形 这个集合 里面有圆形 三角形 正方形

2006-09-23 22:50:17 程序员A
现在产品发布了,让用户增加 长方形 

2006-09-23 22:50:22 程序员A
不重新编译

2006-09-23 22:50:32 程序员B
呵呵,有很多办法啊。
 
2006-09-23 22:51:04 程序员A
reflection C++也可以用 不用.net

2006-09-23 22:51:09 程序员A
讲讲

2006-09-23 22:51:49 程序员B
哦?C++怎么做reflection啊?RTTI么?还是自己搞一套meta data?
 
2006-09-23 22:52:10 程序员A
自己做meta data

2006-09-23 22:52:40 程序员A
其实reflection就是一套框架 跟COM有类似的地方

2006-09-23 22:52:46 程序员B
加长方形可以用插件啦,或者干脆提供个可视化的设计器,让用户自己定制,
 
2006-09-23 22:53:33 程序员A
如果需要 计算面积 怎么办?

2006-09-23 22:53:41 程序员B
呵呵,很好啊。。你们做出来了么?我前短时间还在想如果再有机会搞C++的话我也要做一个带meta data的C++呢
 
2006-09-23 22:54:29 程序员A
没有,我一个人在做,呵呵,觉得设计的太矬了架构

2006-09-23 22:54:41 程序员A
我是说我们上一个产品的软件架构

2006-09-23 22:54:54 程序员A
现在新的项目我正在想怎么改善

2006-09-23 22:55:53 程序员B
呵呵,好同志啊
 
2006-09-23 22:56:12 程序员A
自己提高提高

2006-09-23 22:56:13 程序员A
呵呵

2006-09-23 22:56:23 程序员B
现在新的项目由你负责么?
 
2006-09-23 22:56:38 程序员A
我对软工又不感冒,一部分吧

2006-09-23 22:56:48 程序员A
底层控制部分是我做

2006-09-23 22:57:11 程序员B
其实做个好的架构师需要综合很多方面东西的,包括软工
 
2006-09-23 22:57:38 程序员B
嗯,那还有希望,最怕的就是自己有些好的想法,然后难于推行
 
2006-09-23 22:58:23 程序员A
是的,有空研究下XP,现在看了一点UML,觉得还是喜欢把它作为符号集而不是语言

2006-09-23 22:58:49 程序员B
呵呵,没错,其实到现在我都觉得UML没什么好学的
 
2006-09-23 22:59:28 程序员A
学会class diagram sequence diagram state diagram差不多了

2006-09-23 22:59:38 程序员A
rose用了一下,放弃了

2006-09-23 22:59:37 程序员B
很多人吧UML吹嘘成语言,主要是为了进一步吹嘘MDA而已,这些都是共产主义理想,一下难以实现的。。
 
2006-09-23 22:59:51 程序员A
严重束缚生产力

2006-09-23 23:00:30 程序员A
都是那个language害人

2006-09-23 23:00:40 程序员B
是的,UML里面需要什么就用什么好了,有些小的项目,我宁可用老一套的数据流图都不用UML。
 
2006-09-23 23:01:25 程序员A
我现在对你的算子 有点理解了,呵呵。不过这个更加需要接口的扩展

2006-09-23 23:01:39 程序员B
本来有好多东西想写的,以后一定要好好补上
 
2006-09-23 23:02:06 程序员A
什么时候软件的接口能够自己演化就好了,呵呵

2006-09-23 23:02:30 程序员B
呵呵,这可是个革命性的想法啊
 
2006-09-23 23:02:37 程序员B
把OO的命都给革了。。
 
2006-09-23 23:03:22 程序员A
OO不能进化

2006-09-23 23:03:28 程序员A
COM也不能

2006-09-23 23:03:32 程序员B
不过我还是不太理解你说如果要动态变化接口,如何变化呢?
 
2006-09-23 23:03:57 程序员A
COM 是面向接口

2006-09-23 23:04:19 程序员B
OO和COM都是面向接口的,直到SOA也基本上是
 
2006-09-23 23:04:28 程序员A
就是说原来对接口知之甚少,甚至一无所知,却能够利用那个接口

2006-09-23 23:04:38 程序员B
how?
 
2006-09-23 23:04:48 程序员B
那不就是通过一个代理知道么
 
2006-09-23 23:05:43 程序员A
简单的说 应用diretx 3的软件 虽然到directx 5的时候虽然可以兼容,却不能利用directx 5的特性

2006-09-23 23:06:39 程序员A
如何让这种软件不编译 也能利用未来的库接口,呵呵

2006-09-23 23:08:57 程序员B
那可能是directx 的接口定义的问题吧。。比如在COM里面如何定义接口其实是一个复杂甚至两难的问题,而且没有什么绝对的设计标准。。定义一个接口的时候,需要在理想和现实,现在和未来之间平衡。。
 
2006-09-23 23:10:11 程序员B
呵呵。。为什么不换一个角度思考:我们总是希望原来的代码不编译,就能如何如何。。如果我们能实现局部的动态编译或者替换,也可以啊。。而且实现起来代价应该会低很多。。
 
2006-09-23 23:10:43 程序员A
我说的是一种妄想,COM可以感知未来的接口,前提是未来的接口必须遵从现有的规范

2006-09-23 23:11:00 程序员A
是的,我说的不编译包括你说的动态编译

2006-09-23 23:11:14 程序员A
就是软件能够智能感知,修改自身行为

2006-09-23 23:12:48 程序员B
记得前几年在《科学美国人》上看到一片文章
 
2006-09-23 23:12:56 程序员B
叫做《不死机的电脑》
 
2006-09-23 23:13:15 程序员A
要自己演化的电脑

2006-09-23 23:13:30 程序员B
里面提出一种微模块技术,这种技术用来让软件有自我修复的能力
 
2006-09-23 23:13:53 程序员B
可能我们也需要一种技术,或者跟微模块类似,让软件来自我演化
 
2006-09-23 23:14:32 程序员A
比如软件突然发现跑在P7 上了,发现P7 多了很多新的更有效的指令 于是修改自己...

2006-09-23 23:14:38 程序员A
妄想狂我现在是

2006-09-23 23:14:40 程序员B
呵呵。。很有意思
 
2006-09-23 23:15:17 程序员B
更早以前好像还有一种 磁心大战 的游戏,也是跟软件自身复制和竞争有关系,这些资料都可以去查查看
 
2006-09-23 23:15:28 程序员A
其实.net和java是往这个方向走,但是CLR自己不能烟花

2006-09-23 23:15:34 程序员B
是的CLR需要靠MS来演化。。
 
2006-09-23 23:15:56 程序员A
但是可以通过不停的更动CLR提升原有软件的能力

2006-09-23 23:16:04 程序员B
其实我觉得是有可能的
 
2006-09-23 23:16:40 程序员A
我觉得难度就是软件如何自动生产软件

2006-09-23 23:16:35 程序员B
一个简单的方法是CPU厂商提供一个标准格式的指令文档
 
2006-09-23 23:16:52 程序员B
一个标准格式的指令描述文档 
 
2006-09-23 23:17:01 程序员A
明白你的想法

2006-09-23 23:17:22 程序员A
然后再旧的指令和新的指令之间映射

2006-09-23 23:17:24 程序员B
软件如何自动生产软件 其实就是 MDA 了
 
2006-09-23 23:17:38 程序员A
软件按映射表修改

2006-09-23 23:17:57 程序员B
而且这个映射表是根据遗传算法来生成的,这样就可以演化
 
2006-09-23 23:18:24 程序员A
软件什么时候可以明白业务逻辑就好了

2006-09-23 23:18:52 程序员B
这样映射表就是动态生成的,我们只需要一个版本的软件,可以在不同的CPU上跑,而且越跑越快越跑越优化。。
 
2006-09-23 23:19:14 程序员B
呵呵,让软件理解硬件可能比较容易,让软件理解业务就很难了。。
 
2006-09-23 23:19:46 程序员A
应该说硬件的逻辑比较简单

2006-09-23 23:19:49 程序员A
呵呵

2006-09-23 23:20:10 程序员A
是一个理性世界

2006-09-23 23:20:13 程序员B
不过软件跟业务之间的接口也已经定义好了,就是BPEL,有空你可以看看,它就类似刚才说的软件跟硬件之间的 CPU之类描述文档
 
2006-09-23 23:20:54 程序员A
灵活配置说起来容易 做起来 真够痛苦的

2006-09-23 23:21:08 程序员B
现在在大型的企业级应用里面应该都可以看到 BPEL,应该可以用来定义工作流引擎,数据映射之类
 
2006-09-23 23:21:38 程序员A
有空我研究一下

2006-09-23 23:21:54 程序员A
我的目标不是企业级应用

2006-09-23 23:22:02 程序员B
是啊,不容易啊,所以现在集成平台性质的软件都卖得很贵,里面主要就是各种灵活配置
 
2006-09-23 23:23:22 程序员A
比如现在多了一种输出设备,软件通过脚本理解这个输出设备的规范从而直接支持

2006-09-23 23:23:15 程序员B
但是说到软件理解业务,企业级应用是业务最复杂而且变化最快的,所以才是 能理解业务的软件 真正的用武之地 
 
2006-09-23 23:23:53 程序员B
设备其实很简单啊,就是需要一个描述文档就可以了,
 
2006-09-23 23:24:15 程序员B
设备接软件,就像软件接软件一样,把接口定义出来就可以了
 
2006-09-23 23:24:29 程序员A
不,想象一下没有刻录机的时候软件

2006-09-23 23:24:59 程序员A
根本不知道刻录机为何物

2006-09-23 23:25:55 程序员A
然后用户装上刻录机,软件研究它一下,然后恍然大悟,重启,菜单中当时多了刻录的选项

2006-09-23 23:26:15 程序员B
但是不管是刻录机还是鼠标,还是什么奇怪的东西,甚至我的台灯,我都可以通过USB接上去啊
 
2006-09-23 23:26:23 程序员B
USB就是这样的接口
 
2006-09-23 23:26:50 程序员A
但是上面的应用需要知道刻录机的细节

2006-09-23 23:27:08 程序员B
我们可能需要的就是一个更加智能的装载程序,在这个USB设备装入系统的时候,自动把设备上的软件装入系统。
 
2006-09-23 23:27:25 程序员A
你说的USB是一种通用连接规范

2006-09-23 23:27:33 程序员B
是的,单靠USB还是不够的
 
2006-09-23 23:27:38 程序员A
是充分考虑了未来的接口

2006-09-23 23:28:11 程序员B
USB只是规定了通信一层的东西,我们还需要更上层的接口定义
 
2006-09-23 23:28:35 程序员A
嗯,就像TCP/IP

2006-09-23 23:28:27 程序员B
在上层的接口里面定义未来的需求
 
2006-09-23 23:28:59 程序员B
而且刚才说的装载程序应该就是上层接口的一部分
 
2006-09-23 23:29:26 程序员A
不是装载,是修改

2006-09-23 23:29:31 程序员B
哦,如何修改?
 
2006-09-23 23:30:10 程序员B
它应该只负责装载,然后告诉系统上的其他软件,现在有一个新成员加入了,你看看是否需要与她握个手,或者交个朋友什么的
 
2006-09-23 23:30:39 程序员A
比如定义好桩,然后一个设备管理器 直接修改软件 按照原有的桩把设备层的接口连接上去,甚至可以提供转换层支持

2006-09-23 23:31:07 程序员A
在比如一个软件原来只理解int,现在要让它理解float

2006-09-23 23:31:06 程序员B
啊。。有点深奥哦。。
 
2006-09-23 23:31:13 程序员B
动态类型?
 
2006-09-23 23:31:27 程序员A

2006-09-23 23:31:26 程序员B
VARAINT
 
2006-09-23 23:32:10 程序员A
VARAINT是兼容,不是理解

2006-09-23 23:32:14 程序员B
那如何才算理解?
 
2006-09-23 23:32:53 程序员A
能够按float的方式操作float而不是按无类型的方法操作

2006-09-23 23:33:10 程序员B
难道连以前程序里面的对 int运算的CPU级的指令都要替换成float运算
 
2006-09-23 23:34:32 程序员A
比如原来对int的乘法采用了优化的接口,float不能采用这种方法,但是有别的方法

2006-09-23 23:34:54 程序员B
那如果是这样的话真的就要 动态编译 的配合了
 
2006-09-23 23:35:12 程序员A
GP就是把对类型的鉴定交给了编译器

2006-09-23 23:35:48 程序员B
嗯,很多无类型的语言如 jscript 也是
 
2006-09-23 23:36:04 程序员A
所以我说.NET和JAVA都是朝这个方向努力,想象一下所有的软件都是运行时编译

2006-09-23 23:36:18 程序员B
那多可怕啊。。
 
2006-09-23 23:36:35 程序员A
哈哈

2006-09-23 23:36:44 程序员B
至少部分软件还是比较固定的
 
2006-09-23 23:37:11 程序员B
我们不能把莫尔定律带来的CPU性能一下全吃光啊。。
 
2006-09-23 23:37:21 程序员A
软件突然说嗯,IPv6到来了,自动的把软件,包括自己全部改成IPv 6

2006-09-23 23:37:50 程序员B
呵呵,其实这是个哲学问题。。
 
2006-09-23 23:38:29 程序员B
如果没有AI,软件能预知未来,必定是人类所能预知未来的一个子集。
 
2006-09-23 23:38:37 程序员A
早年愚蠢的程序员没有想到 IPv6年代 IP地址需要6段数字,软件发现了,并修改自己

2006-09-23 23:39:24 程序员A
是的,但是现在的AI我觉得过分集中在数据的学习上,行为的学习基本没有

2006-09-23 23:39:52 程序员B
对对。。我当时提的那个算子的咚咚,核心就是行为学习。
 
2006-09-23 23:40:28 程序员A
太难了

2006-09-23 23:40:30 程序员B
呵呵,不难,
 
2006-09-23 23:40:51 程序员B
至少在企业级应用这块,已经有人用BPEL来定义行为了
 
2006-09-23 23:41:06 程序员A
就像你说的,软件的扩展能力依赖于设计者的智力水平

2006-09-23 23:41:10 程序员B
BPEL只是一种用XML描述的脚本语言,
 
2006-09-23 23:41:16 程序员B
同样可以被当作数据进行处理
 
2006-09-23 23:41:48 程序员A
设计者对未来的把握能力越高则扩展能力越好

2006-09-23 23:41:51 程序员B
呵呵,我是说在没有引入IA的情况下,有了IA,软件就可能超越人类了
 
2006-09-23 23:42:42 程序员A
很多时候软件的元件都是在那里的,装配的工作却要一再的重复,人会觉得很无聊的

2006-09-23 23:44:04 程序员A
现在做软件越来越像砌砖,只不过用的砖越来越好

2006-09-23 23:44:02 程序员B
而且有一点很重要,在软件世界里,其实数据和行为没有严格的界限的,这一点在计算机诞生之处就已经存在了,最找的打孔纸带就是把0101的数据传给计算机的。。
 
2006-09-23 23:44:52 程序员A
是的

2006-09-23 23:45:32 程序员B
呵呵,其实几乎99%的程序员都是在砌砖,因为砖里有砖啊。。这是个没有尽头的自相似结构
 
2006-09-23 23:46:11 程序员B
所以刚才说的 行为学习 ,其实有可能会在企业应用领域最先出现哦 :)
 
2006-09-23 23:46:21 程序员A
软件说装修的墙面该换了,就自己把自己粉刷了一遍

2006-09-23 23:46:59 程序员A
说到底,数据和操作在现在的世界里面已经壁垒分明了

2006-09-23 23:47:46 程序员A
现在的软件可以换肤,但是有一天一个不甘寂寞的用户写了半透明的代码,却无法应用到原有的软件上

2006-09-23 23:47:43 程序员B
现在也还是不一定的,关键是看的角度不同。。比如你自己写的程序,对于编译器来说,全部就都是数据。
 
2006-09-23 23:49:20 程序员A
否则就要设计者约定好规范

2006-09-23 23:50:12 程序员B
呵呵。。如果这个不甘寂寞的用户正好是个黑客的话,可能就可以做到。。因为毕竟说到底,软件无非就是一堆一维的二进制数据。。
 
2006-09-23 23:50:47 程序员B
对了,你看了我的BLOG了么?
 
2006-09-23 23:51:40 程序员A
是的,他研究出原来砌的是方砖,并且每层3块,他增加了功能变成六角形的砖,每层4块

2006-09-23 23:51:56 程序员A
看了XML那篇,reflection的最好应用

2006-09-23 23:51:58 程序员A
呵呵

2006-09-23 23:52:23 程序员B
呵呵。。啥时候你也搞一个,也好交流交流 :)
 
2006-09-23 23:52:45 程序员A
对象管理器 然后要求每个对象 提供query自身接口的接口给它

2006-09-23 23:54:13 程序员B
COM就是这样的啊。。然后,你想做什么?
 
2006-09-23 23:55:22 程序员A
好的,有空我到google上搞,以前注册了,但是那时blogspot属于封禁对象,现在go.vern.ment开放了

2006-09-23 23:56:27 程序员A
想象一下 你写了对象 多了三种接口, 要通知管理者应用这三种接口,管理者query的时候通常发生在已知集合上

2006-09-23 23:56:50 程序员B
哦?
 
2006-09-23 23:57:13 程序员A
比如多了接口 float + float,如何让原有软件应用此接口?

2006-09-23 23:57:34 程序员A
原来只有 float 显示功能

2006-09-23 23:57:44 程序员A
int显示功能

2006-09-23 23:57:40 程序员B
不太明白你的意思。。
 
2006-09-23 23:58:02 程序员B
你是不是说原来 func(float) 变成 func(float,float) 了?
 
2006-09-23 23:58:22 程序员A
新接口如何告诉管理者(legacy软件)我要两个 float,然后我会还你一个float

2006-09-23 23:59:52 程序员A
如何让只知道funcA的软件应用上funcB接口

2006-09-23 23:59:01 程序员A
不是,原来没有funcB只有funcA,在已知集合里面没有funcB的类似定义

2006-09-24 00:01:10 程序员B
哦,然后你现在想做的是把原来程序里面调用 funcA的地方全部换成调用funcB?
 
2006-09-24 00:02:08 程序员B
是这样的么?
 
2006-09-24 00:02:27 程序员A
不一定是替换

2006-09-24 00:02:24 程序员B
那是什么?
 
2006-09-24 00:02:52 程序员A
呵呵

2006-09-24 00:02:51 程序员A
软件发现50%的地方需要替换

2006-09-24 00:03:21 程序员A
现在觉得编译原理封面上写的data flow analysis的道理了

2006-09-24 00:04:05 程序员A
data flow只对人有意义,软件如果明白data flow的意义才能修改自己

2006-09-24 00:04:40 程序员A
这50%是软件在用户给出一些判据后思考的结果

2006-09-24 00:04:36 程序员B
呵呵。。软件也应该知道啊,我们的调试程序不就可以跟踪到调用堆栈的么
 
2006-09-24 00:05:49 程序员A
软件理解堆栈上放的是data ,但是不知道what data

2006-09-24 00:06:22 程序员A
这么说吧,一个void *最后需要编写者转换为 object *然后加以应用
 
2006-09-24 00:06:25 程序员B
但应该知道data的类型啊
 
2006-09-24 00:07:07 程序员B
你说的 编写者 是谁?程序员?
 
2006-09-24 00:07:24 程序员A
泛指人类

2006-09-24 00:07:18 程序员A
是的

2006-09-24 00:07:47 程序员A
template给了编译器一个机会

2006-09-24 00:10:23 程序员A
现在觉得要学的东西太多了

2006-09-24 00:10:49 程序员A
都有点不知从何下手的感觉

2006-09-24 00:11:10 程序员B
你是说把所有的东西都使用类似template这种方式
 
2006-09-24 00:11:50 程序员A
关键是运行时刻还要是template

2006-09-24 00:12:26 程序员A
这个运行时刻可以认为是动态编译

2006-09-24 00:12:31 程序员B
比如说学什么?我有段时间觉得,其实计算机里面没有太多本质上的新东西,很多东西背后的思想都是一样的
 
2006-09-24 00:13:04 程序员A
是的,就是如何对现实世界抽象

2006-09-24 00:13:32 程序员A
但是需要学的东西挺多

2006-09-24 00:13:42 程序员A
很多时候都是名词之争

2006-09-24 00:14:29 程序员B
也不一定是对 现实世界 的抽象了,这可能在应用级的程序开发中是这样,但更多的程序可能就是一种逻辑的堆砌,而且人类的逻辑总是有一定的特征或者是惯性的
 
2006-09-24 00:14:51 程序员A
是的

2006-09-24 00:14:58 程序员B
有一天真想看看外星人写的程序。。
 
2006-09-24 00:15:16 程序员A
要把没有理性的东西 通过 理性的东西 认知

2006-09-24 00:16:20 程序员A
程序已经明白万物本源,能够适应各种变化

2006-09-24 00:16:27 程序员A
哈哈

2006-09-24 00:17:00 程序员B
呵呵。。前阵子CSDN上流行了一个自打印的程序,你看了吧
 
2006-09-24 00:17:11 程序员A
像人刚刚出现的时候 什么都不懂 发展到今天终于明白了一些

2006-09-24 00:17:13 程序员A
没有

2006-09-24 00:17:31 程序员A
CSDN上的少,最近比较迷codeproject

2006-09-24 00:17:53 程序员B
人和程序还是不一样的啊,人可是上帝造出来的啊。。
 
2006-09-24 00:18:11 程序员A
上帝编的程序多好

2006-09-24 00:18:19 程序员A
从一个蛋白质分子开始

2006-09-24 00:18:34 程序员A
想象一下你写一个蛋白质分子

2006-09-24 00:18:56 程序员B
我刚毕业的时候也常上codeproject,后来好像很少上了,只是觉得csdn比较现实一点,俗一点,不过说实在也很少上,当时那个程序我是在程序员杂志上看到的
 
2006-09-24 00:19:28 程序员A
codeguru和CSDN更靠近工业吧

2006-09-24 00:19:42 程序员A
一个存在项目 进度 的世界

2006-09-24 00:20:10 程序员B
呵呵,我突然想起当时上生化课我问过的那个问题。。
 
2006-09-24 00:20:25 程序员A
更多的时候我们仅仅需要把墙砌成就行了,并不需要研究增加扩展性

2006-09-24 00:20:57 程序员A
因为人很便宜,需要时找几个民工推倒 用更好的砖块重复一遍操作即可

2006-09-24 00:20:52 程序员B
给出一个蛋白质的一级结构,如何就知道他的空间结构了呢
 
2006-09-24 00:21:27 程序员A
蛋白质不明白自己,但是一群蛋白质好像就明白自己了,呵呵

2006-09-24 00:21:31 程序员B
CSDN更靠近中国的软件工业,所以也更低俗
 
2006-09-24 00:22:15 程序员A
我上的很少,大三的时候上过,那时候觉得这些技术都太形而上了

2006-09-24 00:22:17 程序员B
是啊。。真是奇妙,而且也不一定是热力学的能量最低原则哦,他们自己可能也储存着一些能量
 
2006-09-24 00:23:38 程序员A
就是说微观尺度上是最通用的功能,组成宏观后反过来操控微观

2006-09-24 00:23:41 程序员B
是啊,其实很多人之所以觉得软工没意思,就是因为软工通常只是研究如何降低成本,如何雇佣民工,之类。。
 
2006-09-24 00:23:50 程序员A
太形而上了,哈哈

2006-09-24 00:24:50 程序员B
哦?不太理解。。 
2006-09-24 00:24:51 程序员B
微观如何通用?宏观又如何操控微观?
 
2006-09-24 00:25:29 程序员A
中国的软工更多的停留在形式上,连降低成本都达不到

2006-09-24 00:26:12 程序员B
这也不一定的,看不同公司了。。
 
2006-09-24 00:28:44 程序员A
他当时设计了一个弹性很强的架构

2006-09-24 00:28:38 程序员B
对了,你看得懂C#的语法吧,发个程序给你
 
2006-09-24 00:28:45 程序员B
他是谁啊?
 
2006-09-24 00:28:58 程序员A
上帝啊

2006-09-24 00:29:22 程序员A
但是现在软件对这套弹性很强的架构不满意了

2006-09-24 00:29:17 程序员B
靠。。总感觉今天QQ消息的时序有问题。。
 
2006-09-24 00:29:34 程序员A
发过来看看

2006-09-24 00:30:07 程序员A
人对语法的宽容度远远超过编译器,即使一个很差的家伙

2006-09-24 00:30:10 程序员A
呵呵

2006-09-24 00:30:02 程序员B
上帝只设计人啊。。软件如何对人的架构不满意了?
 
2006-09-24 00:30:31 程序员A
上帝设计了世界,规定了演化的规则

2006-09-24 00:30:57 程序员A
我这里的软件指得是上帝设计的世界

2006-09-24 00:31:06 程序员B
呵呵,你知道最关键的区别是什么么?关于上帝对人的设计和人对程序的设计
 
2006-09-24 00:31:27 程序员B
呵呵,你知道最关键的区别是什么么?关于上帝对现实世界的设计和人对虚拟世界的设计 
 
2006-09-24 00:31:57 程序员A
上帝设计人时允许人作选择

2006-09-24 00:31:57 程序员B
呵呵,不对。。
 
2006-09-24 00:32:09 程序员A

2006-09-24 00:32:14 程序员A
说来听听

2006-09-24 00:32:53 程序员B
因为上帝精通量子力学,相比起来现在的程序员只停留在伽利略的时代,连牛顿定律还没发现呢。。
 
2006-09-24 00:33:21 程序员B
在量子力学眼里,一切都是概率
 
2006-09-24 00:33:36 程序员A
我说的就是这个意思,上帝宽容的让人感觉不到框架存在

2006-09-24 00:34:02 程序员A
而现在最牛的程序员也只能提供框架,然后软件只能活在框架里面

2006-09-24 00:34:20 程序员B
我现在,这一刻,可能不在上海,我可能无所不在,甚至可能在深圳,只不过现在,对的,就是你读到这个字的这一刻,我在上海的几率最大。。
 
2006-09-24 00:34:31 程序员B
这就是量子力学
 
2006-09-24 00:34:52 程序员B
上帝用量子力学构建这个世界
 
2006-09-24 00:35:14 程序员B
可程序员只能用简单愚笨的逻辑堆砌程序
 
2006-09-24 00:35:21 程序员A
是啊,所以人可以反过来扩展世界

2006-09-24 00:35:37 程序员A
所谓的扩展只是强化了一些概率

2006-09-24 00:36:05 程序员A
为什么可以无限灵活,因为原本就没有规范

2006-09-24 00:36:30 程序员A
为什么无法破解,因为原来就没有招数,哈哈

2006-09-24 00:36:33 程序员B
嘿嘿。。是的,这也正是中国的古典哲学,道家思想。。
 
2006-09-24 00:37:12 程序员A
可是我们的framework永远不能提供100%

2006-09-24 00:37:21 程序员A
连1%都很难

2006-09-24 00:38:08 程序员A
程序于是自限于这1%,当出现1.1%时,那0.1还需要上帝(程序员)的参与

2006-09-24 00:39:32 程序员B
是啊。。关键问题是上帝制造世界的时候,同时带来了太多的维数,如果没有时间,我们的framework可能可以做到100%,就像墙上的油画一样美丽而永恒,但是有了时间,我们的framework就会慢慢的变老,直到一文不值。。
 
2006-09-24 00:40:19 程序员A
也可以这么说,软件永远需要包办婚姻,不会自由恋爱

2006-09-24 00:40:35 程序员A
没有时间,什么都是永恒的

2006-09-24 00:40:47 程序员B
呵呵,说是自由其实也是男女双方的包办。。
 
2006-09-24 00:41:22 程序员B
是啊。。对了,最近有本书不错
 
2006-09-24 00:41:39 程序员A
现在的插件也好,动态链接也好,reflection也好,程序员制定了 婚配范围

2006-09-24 00:41:46 程序员B
将嵌入式系统的C++编程的,里面用到很多量子力学的类比
 
2006-09-24 00:42:01 程序员A
名字?

2006-09-24 00:42:04 程序员B
不知道未来的虚拟世界,可不可以也找到自己的量子力学。。
 
2006-09-24 00:42:41 程序员A
上帝明白我们的量子力学么?

2006-09-24 00:42:36 程序员B
《嵌入式系统的微模块化程序设计——应用状态图C/C++实现》
 
2006-09-24 00:42:54 程序员A
英文名

2006-09-24 00:43:24 程序员A
如果上帝明白我们的量子力学他也不过是顶尖程序员

2006-09-24 00:44:09 程序员B
呵呵,现在流行看英文版啦。。可以买到中文版的啊
 
2006-09-24 00:44:28 程序员B
那你还想让上帝干什么?
 
2006-09-24 00:44:38 程序员A
当你设计的东西超越你的思考范围时才能称为god

2006-09-24 00:44:47 程序员A
上帝应该是个普通人

2006-09-24 00:45:07 程序员A
吃喝拉撒都会,有一天拍了拍脑袋,说就是这样了

2006-09-24 00:45:23 程序员A
事实上它完全不懂概率不懂量子力学

2006-09-24 00:45:31 程序员B
是的,没错,人总是喜欢推卸责任,吧自己能力以外的东西推给一个虚无飘渺的客体。。
 
2006-09-24 00:46:13 程序员A
它饶有兴趣的开始看这段程序的运行,惊奇的发现原来还有叫量子力学的东西

2006-09-24 00:46:17 程序员B
呵呵。。耶稣或者施加模拟的确是普通人,但上帝不是普通人
 
2006-09-24 00:46:54 程序员A
于是他应用这套理论去创建下一个宇宙

2006-09-24 00:47:08 程序员A
那个宇宙里面出现了量子力学++

2006-09-24 00:47:13 程序员B
呵呵,你是说宇宙也是演化的
 
2006-09-24 00:48:01 程序员A
或者量子力学.NET,是啊,我们并不懂宇宙目前,但是我们每一个行为都或多或少的影响整个宇宙

2006-09-24 00:48:41 程序员A
上帝就是抽象 也许就是一个终极的公式,也许就是太极

2006-09-24 00:48:33 程序员B
嘿嘿,那估计他先用牛顿定律做一个宇宙1。0版,然后觉得不爽,再用相对论做1。1版,然后发现还是不行,必须推倒重来,用量子力学做了2。0版。。
 
2006-09-24 00:49:43 程序员B
是的,上帝就像数学上的 无穷数, 被人争论了很久,没争论出什么东西,但在争论的过程中诞生了计算机科学
 
2006-09-24 00:50:18 程序员A
不,他用牛顿定律做了一个宇宙,这个宇宙突然发现了相对论或者说按相对论的方式开始运行,也就是说宇宙理解了相对论,上帝看了程序的行为恍然大悟,在它的下一个项目里面,软件直接从相对论时代开始

2006-09-24 00:51:27 程序员A
而牛顿定律版宇宙最终也进化到了量子理论版,上帝不用增加一行代码

2006-09-24 00:51:58 程序员B
天。。至少我们所认识的软件,还没有这么神奇。。
 
2006-09-24 00:52:25 程序员B
你可能是把软件直接理解成为有生命的东西了
 
2006-09-24 00:52:36 程序员A
那是我们无法认识到那个接纳的公式

2006-09-24 00:52:29 程序员B
其实未必
 
2006-09-24 00:52:41 程序员A
基本的公式

2006-09-24 00:53:16 程序员A
为什么软件不能是生命?只不过他们活在电流上

2006-09-24 00:53:27 程序员A
哈哈

2006-09-24 00:53:50 程序员A
等我见上帝的时候一定要问它这些问题

2006-09-24 00:54:08 程序员A
成为他项目组的成员

2006-09-24 00:55:06 程序员B
用牛顿定律或者相对论写的程序肯定是没有任何生命力的,用量子力学以后开始有了一点,但是关于生命的本质,其实人类还没有真正发现。。估计只有了解到生命本质以后,人类才能至少出真正有生命力的东西。。比如有生命力的程序。
 
2006-09-24 00:55:37 程序员A
是的

2006-09-24 00:55:51 程序员A
我们现在在软件上顶多到了牛顿时代

2006-09-24 00:56:13 程序员B
呵呵。。上帝估计不是一个很好的team leader。。他做东西从来没留下什么好的文档。。。什么都让后来的维护工程师去猜。。
 
2006-09-24 00:57:04 程序员B
估计还不到呢。。我感觉还是伽利略,现在的软件工程师开始知道地球是圆的,不是方的了。。
 
2006-09-24 00:57:18 程序员A
那是我们缺乏有效的交流手段
 
2006-09-24 00:57:41 程序员A
真正的交流不能发生在文档上

2006-09-24 00:58:15 程序员B
必要的文档还是要有的,文档跟口头语言一样,都是人类之间交互的接口
 
2006-09-24 00:58:44 程序员A
文档是单向交流,嘿嘿
 
2006-09-24 00:59:24 程序员A
文档如果写得差就更恐怖了

2006-09-24 00:59:16 程序员B
文档是固化了的口头语言
 
2006-09-24 00:59:32 程序员B
文档是固化并且形式化了的口头语言 
 
2006-09-24 00:59:46 程序员B
文档差主要是形式化的工作没做好
 
2006-09-24 01:01:26 程序员B
哦,刚才说的就这段程序
 
2006-09-24 01:01:30 程序员B
using System;

namespace PrintMe
{
 class Class1
 {
  [STAThread]
  static void Main(string[] args)
  {
   int i=0; i++;
   string str = "using System;{0}{0}namespace PrnitMe{0}{{{0}{1}class Class1{0}{1}{{{0}{1}{1}[STAThread]{0}{1}{1}static void Main(string[] args){0}{1}{1}{{{0}{1}{1}{1}int i=0; i++;{0}{1}{1}{1}string str = /"{2}/";{0}{1}{1}{1}Console.Write( str, /"//r//n/", /"//t/", str );{0}{1}{1}}}{0}{1}}}{0}}}";
   Console.Write( str, "/r/n", "/t", str );
  }
 }
}
 
2006-09-24 01:01:41 程序员B
有vs.net的话可以运行一下
 
2006-09-24 01:02:28 程序员B
当时我在网上看到自打印程序的介绍,然后就模仿做了个C#版。
 
2006-09-24 01:03:51 程序员A
看懂了,呵呵,关键是{2}参数

2006-09-24 01:05:17 程序员B
呵呵。。那句 int int=0; i++; 是我自己后来加上的,用来表明,如果是做成一个程序自复制的框架的话,这里就是扩展点,可以增加自己的代码、
 
2006-09-24 01:08:43 程序员B
http://cjhacker.blogchina.com/4541575.html
 
2006-09-24 01:08:54 程序员B
这是原文
 
2006-09-24 01:12:00 程序员B
今天的话题很有意思啊。。我都想把聊天记录放在BLOG上,意下如何?
 
2006-09-24 01:12:34 程序员A
可以啊,把名字改成 禅师A和禅师B好了

2006-09-24 01:12:38 程序员B
嘿嘿。。
 
2006-09-24 01:13:01 程序员A
或者疯子A和疯子B

2006-09-24 01:13:33 程序员A
或者疯子A和禅师B或者。。。哈哈

2006-09-24 01:13:56 程序员B
哈哈。。或者还是低调一点,程序员A和程序员B好了,毕竟程序员跟疯子是同义词。。
 
2006-09-24 01:15:12 程序员A
都可以,代号本身是没有意义的,人让它有了意义

2006-09-24 01:15:27 程序员B
哈哈。。经典。。你已经到出神入化的境界了。。

2006-09-24 01:15:54 程序员A
我已经疯了

2006-09-24 01:15:45 程序员B
呵呵,你也尽快搞个BLOG啊,等着拜读你的大作了。。
 
2006-09-24 01:16:16 程序员A
好的

2006-09-24 01:16:28 程序员A
压力大啊

2006-09-24 01:16:23 程序员B
呵呵。。我也快了。。
 
2006-09-24 01:16:38 程序员B
哦,怎么压力了?
 
2006-09-24 01:17:04 程序员A
拜读这两个字啊,哈哈

2006-09-24 01:17:34 程序员B
呵呵。。没关系的啦。。BLOG的好处就是随意,想咋写就咋写,没人管得着。。
 
2006-09-24 01:18:00 程序员A
除了gov.ern.ment

2006-09-24 01:18:12 程序员B
最近有一本讲软工的书《joel说软件》就是用blog的风格写的,读起来很有意思。。
 
2006-09-24 01:18:29 程序员B
gov.ern.ment 是什么咚咚啊?没有这个网站吧?
 
2006-09-24 01:18:52 程序员A
是一个词

2006-09-24 01:18:53 程序员A
呵呵

2006-09-24 01:19:12 程序员A
有空可以去看martin fowler的blog啊,挺有意思的

2006-09-24 01:19:11 程序员B
呵呵。。QQ不会连这个词也过滤吧。。
 
2006-09-24 01:19:18 程序员B
网址?
 
2006-09-24 01:20:14 程序员A
http://www.martinfowler.com/bliki/

2006-09-24 01:22:17 程序员B
哦,我先存下来了。。改天细看,坚持不住了,要睡觉了。。
 
2006-09-24 01:22:20 程序员B
[bye]
 
2006-09-24 01:22:30 程序员A
88 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 23
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值