林鸿在这个bbs看了一会儿,然后又去了几个常见的论坛看了下,了解一下最近业界的一些最新新闻和动态,便退出了te软件。
这个时候,linus已经下线了。
林鸿想了下,决定将minix下的email客户端给编写出来。
实际上,林鸿很早就了解过email的传输协议,也就是“smtp”,全称为“简单邮件传输协议”。
在他之前看tcp/ip协议的时候,就有关于smtp协议的内容。另外,他在寻找irc协议规范的时候,也接触过相关方面的内容。
因为smtp是建立在ftp文件传输服务上的一种邮件服务,这种协议还是属于tcp/ip协议族,它的作用就是帮助每台计算机在发送或中转信件时找到下一个目的地。通过smtp协议所指定的服务器,就可以把email寄到收信人的服务器上了。
smtp重要特性之一是其能跨越网络传输邮件,即“smtp邮件中继”。
实际上,sam的红外线中转装置cdad上所使用的中继协议,就是模仿smtp协议进行编写的。
由于有了之前编写cqcq软件、te瘦身,以及红外线相关软件方面的编程经验,林鸿现在对这种类型的编程已经完全得心应手。《》网
他现在越来越觉得gcc编译器非常好用了,它有着极大的扩展性,可以非常方便地扩充自己的函数库。
在编程的过程中,林鸿发现,很多代码实际上都可以进行重用。
例如登录服务器模块,只要是涉及到网络访问方面的软件,基本上都会需要这样一个模块,而且底层的实现机制完全一样。
于是,林鸿直接将这个功能的实现代码,分离出来,做成几个基本的函数,放到gcc的函数库中,随时进行调用。
代码重用是编程思想中非常重要的一个思想,可以极大地提高编程速度,节省程序员的时间和精力,不用每次在这些同样的问题上浪费时间,有经验的程序员通常都会有着自己常用的函数库。
当然,一些公认比较普遍、经典的代码会被编译器官方给集成起来,做成官方函数库集成到编译器里面,作为系统函数可以供所有人进行调用。
林鸿很快就将email客户端的原型给编写出来,考虑到这个客户端的通用性,他将一些参数保存在一个设置文件里面,大家可以对这个设置文件进行配置,将自己的email地址,邮件服务器登录名和密码等信息写入里面,这样就可以自动对邮件服务器进行邮件查询,或者通过邮件服务器的smtp服务对外发送邮件。