我们都知道软件发展经历了很长一段路程,在软件刚刚起步的时候,有一批世界顶尖的科学家用自己整个的人生为我们创造了今天美好的信息世界,我印象最深的是我看过一本书,书名是《优雅人生》是专门介绍一位伟大的女性IT工作者,她是一位传奇人物,她是编译器的先驱,在她晚年的时候都拼命在一线开发环境中肩负着整个美国的IT重任,这位女性就是,格雷斯-霍珀;值得我们去敬仰,去学习;我为什么要讲上面的一段话呢,其实这源自于本人对技术强烈的欲望和兴趣,尤其崇拜那些传奇人物;在我们现在的软件开发人员中很大一部分人没有兴趣去关心那些历史,那些过去很老的技术,很麻烦的操作过程;有没有必要那就要看每个人的理解了;我们大部分的开发人员都是做应用层开发,也很少接触底层技术,什么编译器、动态链接等等复杂枯燥的东西;在我看来,尽管我们在日常开发中不需要去关心那些底层的技术,但是那些技术跟我们日常开发息息相关,比如编译报错、动态链接内存分配、PE文件符号重定位,都是我们需要了解的东西;不错,可能有又很多人不赞成这种观点,熟话说得好,苏业有专攻;凡事都是相对的,我们拿园子的前辈来说,他们都是精于某个领域,都是不断的挖掘底层的实现,这些内容在书上是更本找不到的,比如袁永福袁老师他在图形软件领域已经摸索了很久,对底层操作系统的消息、事件等等,对底层都是很了解的;这样的前辈数不胜数,他们都有一个共同特点,就是专研实现背后的实现,知其然而知其所以然;偶尔跟一些同僚朋友聊天,他们对软件开发的理解很简单,无非就是上网搜一堆别人封装好的控件或者DLL,然后自己捣鼓捣鼓,拼成一个界面看起很完美,后台一片杂乱无章的软件;
唠叨了这么多,就是希望能将自己的这份热情去感染很多的人,朋友不要浮于表面,一定要沉,沉的越深越好;本人在思考一片有关程序员修炼之道的文章,这篇文章需要我们站在一定的高度看技术,把技术比喻成金字塔,倒立的金字塔,我们要向下走,越走越宽松,本人近期将出搞,供大家学习;
1:
2:
这幅图是一个程序流程图,可能还不是不够清晰的说明我们上面比喻的例子;我们来一幅更能说明问题的图:
3:
图3应该能很清楚的说明我们上面的问题了,打个比方有一个送快递的将包裹送到我们前台接待那里,然后前台接待人再看包裹的收货人是谁是哪个部门的,在将包裹送到部门中去;这样就完成了包裹的整个邮递过程;我们的消息也是一样的,必须明确知道消息的端口是什么,这样我们的“消息总闸”才能知道这个消息是正确并且是安全的,不是黑客来探访的;我们用.NET开发网路系统时,首先我们要定义我们应用程序要使用的接口,然后要传输的消息;我们开发一个服务器端和一个客户端,在服务器端,发送消息的时候,客户端要在消息到来之前进行端口侦听;