阅读成为更好的开发人员-Coding4Fun DevKit_cunfuteng7334的博客-程序员宅基地

技术标签: python  c++  github  java  编程语言  

I've written a number of articles for Coding4Fun, in fact, there's a whole category for them on my Blog here. Dan Fernandez runs Coding4Fun and there's a LOT of Coding4Fun writers, so I can't keep track of all the cool stuff that's being done on the project.

我为Coding4Fun写了许多文章,实际上,在我的Blog上针对它们整个类别丹·费尔南德斯(Dan Fernandez)运行Coding4Fun,并且有很多Coding4Fun作家,所以我无法跟踪该项目正在完成的所有有趣工作。

I was looking around for some really good Source Code to read. You know the whole Be a Better Developer in 6 Months thing? We did a podcast on it, and it's being discussed in the forums. One of the things that I thought was the most important was reading other people's code. I postulated that writers don't become better just be writing, but by reading.

我正在寻找一些非常好的源代码来阅读。 您知道整个6个月内成为一名更好的开发人员的事情吗? 我们对此进行了播客,并且正在论坛中进行讨论。 我认为最重要的一件事是阅读其他人的代码。 我假设作家并不会因为写作而变得更好,而是通过阅读而变得更好。

Anyway, I stumbled on a treasure trove of source to read. Recently released, and comparatively quietly, was the Coding4Fun Developer Kit 2008 Vol 1 (BETA) (whew!) that I will refer to as the C4F DevKit because that name is crazy long.

无论如何,我偶然发现了一个宝藏来阅读。 最近发布的相对安静的是Coding4Fun Developer Kit 2008 Vol 1(BETA) (哇!),我将其称为C4F DevKit,因为这个名字疯狂了。

The "Vol 1" designation is cool because it implies it'll be a series of projects. Here's the kinds of stuff it includes (very DIY (Do It Yourself) friendly):

“ Vol 1”的名称很酷,因为它暗示它将是一系列项目。 以下是其中包含的内容(非常友好(自己动手做)):

  • Bluetooth – Serial Port, File Transfer and Object Push; plus Device Discovery and Service Discovery

    蓝牙–串行端口,文件传输和对象推送; 加上设备发现和服务发现

  • Windows Vista Contacts – abstraction of the Windows Contacts API 

    Windows Vista联系人– Windows联系人API的抽象

  • Messaging – Better APIs for SMTP and POP3

    消息传递–更好的SMTP和POP3 API

  • Power Management – Access Windows Vista Power Management features like rebooting, hibernating and locking a computer; get battery status on a laptop too

    电源管理–访问Windows Vista电源管理功能,例如重新引导,Hibernate和锁定计算机; 也在笔记本电脑上获取电池状态

  • Windows Desktop Search – Easy API to Search

    Windows桌面搜索–易于搜索的API

  • Windows Vista Picture Acquisition – Acquire pictures and videos from common devices like digital cameras

    Windows Vista图片获取–从常见设备(如数码相机)获取图片和视频

  • Preview Handler – Resolve predefined file types such as Microsoft Word , Visual Basic and Visual C# source files, images and many others in their own applications.

    预览处理程序–在其自己的应用程序中解析预定义的文件类型,例如Microsoft Word,Visual Basic和Visual C#源文件,图像以及许多其他文件。

  • SoundRecorder - record audio sounds and play them back information with Windows Vista's API

    SoundRecorder-录制音频声音并使用Windows Vista的API播放声音信息

  • RSS ScreenSaver - WPF RSS ScreenSaver 

    RSS屏幕保护程序-WPF RSS屏幕保护程序

  • P2P Picture Share - share your pictures with family and friends

    P2P图片分享-与家人和朋友分享您的图片

There's a LOT of source here - a bunch of it I could use in some of my on-the-side projects. Some of it is "mashups," brining different APIs together in interesting way, while much of it is very clean abstractions of COM or P/Invoke APIs for useful things like Image Acquisition and Source Recording. These are the kinds of APIs that it'd be nice to see pushed back into the BCL/platform. It also serves as a good primer on how to create a managed API on top of an unmanaged one. I think I'll do some posts on it. The Preview Handler on is very nice.

这里有很多资源-一堆我可以在我的一些现场项目中使用。 其中一些是“混搭”,以有趣的方式将不同的API绑定在一起,而其中许多则是非常干净的COM或P / Invoke API抽象,用于诸如图像采集和源记录之类的有用功能。 这些是很高兴看到被推回到BCL /平台中的API。 它还是如何在非托管API之上创建托管API的很好的入门。 我想我会做一些帖子。 预览处理程序非常好。

The other thing that's cool about these "components" is that a bunch of them are done as controls that live in the Visual Studio 2008 toolbox (and they all work on the Express SKUs) so in many cases using them is just a drag-and-drop operation with a Smart Tag. Apparently the plan is to add as many Smart Tags as possible.

这些“组件”的另一个很酷的地方是,其中的许多组件都是作为控件存在于Visual Studio 2008工具箱中的(它们都可以在Express SKU上使用),因此在许多情况下,使用它们只是拖拽式操作智能标签的拖放操作。 显然,该计划是要添加尽可能多的智能标记。

While I was able to run the installer and compile most of the code on Windows XP, many of the projects are Vista specific. I think in the future there will be an option to select the projects that are specific to your OS. If you've got Visual Studio 2008 or the C#/VB Express version, you'll be fine. The Express 2008 SKU runs very fast under my XP SP2 VM and I've been very happy with it.

虽然我能够在Windows XP上运行安装程序并编译大多数代码,但许多项目都是特定于Vista的。 我认为将来会有一个选择来选择特定于您的OS的项目。 如果您拥有Visual Studio 2008或C#/ VB Express版本,则可以。 Express 2008 SKU在XP SP2 VM下运行非常快,对此我感到非常满意。

I wanted to see how fast I could get something new written with some of this source, so I set off to create a vCard Preview Handler. Remember what a Preview Handler is? It's those little in-proc plugins that can be used by Outlook or the Vista Explorer to show you what a file looks like without opening the host application. Tim Heuer made a PDF Preview Handler using some code from the obscenely talented Stephen Toub (here's a list of all his articles on MSDN).

我想看看用这些源代码写新东西的速度有多快,所以我着手创建一个vCard Preview Handler。 还记得预览处理程序是什么吗? Outlook或Vista Explorer可以使用那些小的in-proc插件来显示文件的外观,而无需打开主机应用程序。 Tim Heuer使用了才华横溢的Stephen Toub的一些代码制作了PDF预览处理程序(这是他在MSDN上所有文章列表)。

My next post will talk about writing a vCard Preview Handler using the code in the C4F DevKit. I wanted to see just how quick and easy (or totally not at all) it would be, considering all the COM Interop and what-not.

我的下一篇文章将讨论使用C4F DevKit中的代码编写vCard预览处理程序 考虑到所有COM Interop和其他功能,我想看看它会多么快速和容易(或完全没有)。

I've really enjoyed reading the code in this kit. Nothing makes me realize what a crap programmer I am like reading a good programmer's code.

我真的很喜欢阅读此套件中的代码。 没有什么让我意识到我喜欢读一个好的程序员的代码,这真是一个废话程序员。

翻译自: https://www.hanselman.com/blog/reading-to-be-a-better-developer-the-coding4fun-devkit

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cunfuteng7334/article/details/109084241

智能推荐

傅立叶变换的深入理解(转帖)_weixin_30611509的博客-程序员宅基地

傅立叶变换的深入理解2007年10月05日 星期五 16:41专题讨论四:关于傅里叶变换的讨论[精彩]有奖征集:大家讨论一下傅里叶变换相关的内容:1 变换的目的,意义,应用。2 傅里叶级数与傅里叶变换的差别和联系3 连续傅里叶变换,离散时间傅里叶变换,离散傅里叶变换,序列的傅里叶变换,各自的定义,差别,联系。3 高速傅里叶变换的实质,经常使用的算法之间的差别和联系,各自的优势。4 fft的应用...

单向链表的搭建_wang_xiang_long的博客-程序员宅基地

链表的搭建何为链表节点指针整体实现何为链表链表就是在引用之前就有其先后顺序元素之间通过持有其他引用指针来完成有序的数据结构.链表分为单项链表和双向链表本文只针对单向链表的搭建进行描述.节点通过指针连接的每个元素称之为节点,节点由指针以及所携带数据(也可以携带字符串,列表等)指针用来连接各个元素的自定义属性整体实现from typing import List #引用类型 :列表# 节点创建class Node: def __init__(self, data):

HDU 1114 Piggy-Bank(DP,水题)_小白菜小青菜的博客-程序员宅基地

Piggy-Bank题目链接Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 26906 Accepted Submission(s): 13610Problem Description Before ACM can do anyt

mysql 分片join_MySQL 工作笔记 八:Mycat和Sharding-jdbc的区别、Mycat分片join、Mycat分页中的坑、Mycat注解、Catlet使用..._刘一含的博客-程序员宅基地

一、Mycat和Sharding-jdbc的区别1)mycat是一个中间件的第三方应用,sharding-jdbc是一个jar包2)使用mycat时不需要改代码,而使用sharding-jdbc时需要修改代码Mycat(proxy中间件层):Sharding-jdbc(TDDL为代表的应用层):二、Mycat分片join在前面的文章Mysql系列四:数据库分库分表基础理论中,已经说过分库分表需要应...

Linux内核多线程(一)_weixin_34186128的博客-程序员宅基地

Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求)。内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的。内核线程就是内核的分身,一个分身可以处理一件特定事情。内核线程的调度由内核负责,一个内核线程处于阻塞状态时不影响其他的内核线程,因为其是调度的基本单位。这与用户线程是不一样的。因为内核线程只运行在内核态,因此,它只能使用大于PAGE_OFFS...

两种测试方法简析:Junit和SpringJunit_VernonJsn的博客-程序员宅基地_junit spring

在下面的项目里演示一下两种测试方式,Junit测试和Spring自带的SpringJunit单元测试,后者需要导入jar包;首先创建一个简单的java工程:Junit测试类1:public class TestPersonJunit { BeanFactory bf; @Before public void before() { // TODO Auto-generated method stub //F4(接口实现类) System.out.println(.

随便推点

redis抢购mysql_Redis两种秒杀抢购思路_weixin_39934085的博客-程序员宅基地

方式一:使用DECR减库存/*** 外卡进入减库存* @param competitionQuarterInDTO* @return*/@Overridepublic int otherCardEnter(CompetitionQuarterInDTO competitionQuarterInDTO) throws IOL8ServiceException, IOL8CommonException...

鸿蒙系统公测第一期,幸福来得太突然!鸿蒙系统 2.0 第二轮公测开启,内附申请方法..._奶油肥皂的博客-程序员宅基地

距离华为鸿蒙系统第一次公测已过去一段时间,小伙伴们升级后纷纷表示「很香」。全新系统带来的崭新体验,让没能升级的教授跃跃欲试。就在昨晚,HarmonyOS 2.0 开发者 Bata 公测招募第二期开启啦~终于等到你!公测新增机型第二期公测新增了七款机型:华为 nova 6、华为 nova 6 5G 、华为 nova 7 5G、华为 nova 7 Pro 5G、华为 nova 8、华为 nova 8 ...

arcgis10.2连接表xlsx格式失败_weixin_30371875的博客-程序员宅基地

需要安装 2007 Office System 驱动程序(AccessDatabaseEngine.exe)转载于:https://www.cnblogs.com/lichunl/p/9272411.html

网站使用服务器1核1g够,云服务器1核1g够用了吗_大宝宝和小宝贝的博客-程序员宅基地

云服务器1核1g够用了吗 内容精选换一换创建IP地址组,添加需要统一管理的IP地址。IP地址组功能目前仅在“华北-北京一”、“华北-北京四”、“华南-广州”、“西南-贵阳一”、“亚太-香港”开放。IP地址组无法针对某些类型的云服务器生效,即引用了IP地址组的安全组规则,对某些类型的云服务器不生效。IP地址组不支持的云服务器类型如下,具体规格请参见规格清单。通用计算型(S1型、C鲲鹏AI推理加速型实...

blob和mysql对应_Mysql的Text和Blob的比较_weixin_39858124的博客-程序员宅基地

MySQL存在text和blob:(1)相同在TEXT或BLOB列的存储或检索过程中,不存在大小写转换,当未运行在严格模式时,如果你为BLOB或TEXT列分配一个超过该列类型的最大长度的值,值被截取以保证适合。如果截掉的字符不是空格,将会产生一条警告。使用严格SQL模式,会产生错误,并且值将被拒绝而不是截取并给出警告.BLOB和TEXT列不能有 默认值.当保存或检索BLOB和TEXT列的值时不删除...

初入linux记录_宋辰轩的博客-程序员宅基地

谨以此文记录我初入linux遇到的一些或大或小的问题 2020-10-11有些是复制来的权限不够问题:关闭防火墙-chkconfig iptables off(或者执行其他命令时权限不够)You do not have enough privileges to perform this operation.此时需要管理员权限,输入命令-su,然后输入密码即可[[email protected] Desktop]$ suPassword: [[email protected] Desktop]#