从寻找资源的习惯上谈如何获得好的代码及控件(使用Koders查找)
严格来讲,本文不是一个技术贴,但是却和我们的技术探索息息相关,每个人的寻找资源的习惯不同,因此获得的资源类型及数量也不同。至于如何获取相应的资源,各种习惯和方法,个人有个人的选择,本无可厚非,这里仅仅是从我本人的习惯方法,来谈论下获取资源的思路及途径,抛砖引玉,共同受益。
作为技术人员来说,我们一般常用的查找资源途径,基本上是通过Google、Bing、Baidu的查询,有时候也会跟着去Codeproject、博客园、CSDN等其他地方去寻找所要的资源,这些途径基本上能满足大多数的期望值,但是有时候针对性不够强,需要经过多次的筛选,才能寻到需要的代码或者控件等。
其实作为代码的查找,有一个地方http://www.koders.com/ ,这个是很不错的寻找代码地方,它里面有大量的开源代码,顺藤摸瓜,追本溯源,我们就可以找到优秀开源组件的地址,或下载,或借鉴,善莫大焉。
例如,有一天,我突然有一个想法,想做一个POP3相关的程序,因此在Google上搜索了一下POP3 C#,发现很多基本的介绍、概念的陈述,翻了多页也未获得我期望的东西,因此期望有更好的面向开发的代码搜索,因此想到了http://www.koders.com/。
如我查找了PoP、C#语言的内容,得到下面的搜索结果,其中很多可以参考人家的一些代码思路,有些可以直接下载过来用的。
很快可以找到一个如下所示的代码片段
当看中一些比较相似的结果后,我们就可以看其完整的项目地址,从中找到开源组件资源的下载地址即可。
这样我们在上图红色框框中就可以项目的完整地址,然后到具体的首页去下载所需要的资源即可,绝大多数的项目源码是可以下载的。
上面这个组件就是非常有名的LumiSoft.Net开源组件,这样你再在Google、百度、Bing上进行搜索,就知道该组件的具体用法和更详细的资源了。非常棒吧,这样你就可以利用前人弄好的轮子(而且是性能非常不错的轮子),直接装配使用即可,不需要再去做笨龊的重复发明了。
采用了该组件的POP部分组件,测试下用POP方式获取邮件,代码变得非常方便和简单明了,代码如下所示:
List<Mime> result = new List<Mime>();
using (POP3_Client pop3 = new POP3_Client())
{
pop3.Connect("pop.163.com", 110);
pop3.Authenticate("wuhuacong", "******", false);
POP3_ClientMessageCollection infos = pop3.Messages;
int i = 0;
foreach (POP3_ClientMessage info in infos)
{
//每封Email会有一个在Pop3服务器范围内唯一的Id,检查这个Id是否存在就可以知道以前有没有接收过这封邮件
if (gotEmailIds.Contains(info.UID))
continue;
//获取这封邮件的内容
byte[] bytes = info.MessageToByte();
//记录这封邮件的Id
gotEmailIds.Add(info.UID);
//解析从Pop3服务器发送过来的邮件信息
LumiSoft.Net.Mail.Mail_Message msg = LumiSoft.Net.Mail.Mail_Message.ParseFromByte(bytes);
Console.WriteLine(msg.BodyText);
if (msg.Date.AddDays(5) < DateTime.Now)
{
Console.ReadLine();
break;
}
}
}
性能非常不错,而且获取到的邮件内容不会出现乱码,比直接在Google上找到的代码例子好很多,那些或多或少只是一个试验品,和这样的优秀组件的质量差别还是相当大的。
本人以上应用纯粹只是一个日常例子,但是很多情况下,我们如果能够增加这样的步骤去寻找一些东西,获得的收益是无穷的,
上天不能给你的东西,Google可以帮到你,Google帮不到你的地方,可以试试koders。
转载请注明出处:撰写人:伍华聪 http://www.iqidi.com