阅读成为更好的开发人员-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 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


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 版权协议,转载请附上原文出处链接和本声明。




异构蜂窝网络仿真 用什么软件_什么是 PathWave ?用综合设计与仿真软件将您的设计创意转化为实际产品-全是干货!..._weixin_39595487的博客-程序员宅基地

PathWave 测试自动化软件知识大全 - 自动执行您的测试流程,提高测试速度并扩大测试规模利用测试自动化软件加速工作流程借助开放、模块化的软件,改进测试计划的开发,并更快、更大规模、更轻松地执行测试。设计非常简单的日子已经成为过去。设计人员年复一年不断突破新的极限:更长的电池续航时间、体积更小的元器件以及更高的集成度。复杂的设计带来新的挑战。设计人员要花费几个小时的时间来设置和运行仿真。成堆...

MYSQL8.0使用客户端偶遇 caching_sha2_password cannot be loaded 问题_我晕死哦的博客-程序员宅基地

问题:当连接MySQL的时候出现"Authentication plugin 'caching_sha2_password' cannot be loaded:找不到指定的模块"错误。解决办法:        执行如下语句:ALTER USER 'root'@'localhost' IDENTIFIED BY '[email protected]' PASSWORD EXPIRE NEVER;ALTER USER '...

NetCore 3.0 中使用Swagger生成Api说明文档及升级报错原因_Unknowncheats的博客-程序员宅基地

认识SwaggerSwagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。作用:接口的文档在线自动生成。功能测试。为什么使用Swagger作为REST APIs文档生成工具Swagger 可以生成...

干货3分钟搞懂私募投资以及技术面试[email protected]的博客-程序员宅基地

转 干货 | 3分钟搞懂私募投资以及技术面试https://blog.csdn.net/myquant/article/details/8793374601.PE都有哪些类别?Private Equity(PE),即私募股权投资,是指通过私募的形式募集所需的资金。通常来说,处于二级市场的上市公司,可以通过债市、股市的操作,来填补资金缺口。但处于一级市场或起步阶段的非上市公司,可以通过上市公司的私...

IDEA 单元测试testng入门及testng.xml_pNull的博客-程序员宅基地

IDEA自带了Junit 和testng 测试框架。但默认并不包含在你的项目或者模块中。     在使用之前需要先添加依赖,路径如下:JUnit libraries (junit.jar and junit-4.11.jar): <IntelliJ IDEA directory>\lib.TestNG library (testng-jdk15.jar): <Int


转载 | 最佳身份管理建议_如何建议互联网身份_龙归科技的博客-程序员宅基地


Excel Vba 调用WebService的两种方式,解决MSSOAP30 64位不兼容问题_weixin_34419326的博客-程序员宅基地

虽然是很老的技术了,但是碰到了,还是讲讲.....Office Excel 采用Vba的方式调用WebService主要有两种方式:1.n年前,微软提供MSSOAP30组件,为VC++编写的,这种方式和.Net调用WebService方式很类似,都是添加引用;但是致命的缺陷是不支持64位的Office程序(支持64位机器中运行32位的Office);而且微软已经明确提醒开发者,已经放弃了M...

Mathcad tips_波特图绘制_mathcad传递函数_csdn_dx的博客-程序员宅基地


Oracle Limits.conf_danevc的博客-程序员宅基地

# /etc/security/limits.conf##Each line describes a limit for a user in the form:##            ##Where:# can be:#        - an user name#        - a group name, with @group syntax#        - the wildcard

springboot 静态资源缓存设置_李浩洋93的博客-程序员宅基地

springboot 静态资源 js css  缓存设置@Configurationpublic class WebMvcConfiguration implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { ...

WebSocket环境配置 VS2015_江湖小馆的博客-程序员宅基地

WebSocket环境配置 VS20151.准备工作1.下载Websocketpp(version 0.8.1)源文件github下载地址下载Websocket的依赖Asio(version 1.12.1)下载地址3.VS2015 自行下载2.配置VS工程新建工程,我这里建立的是 win32项目。名字假设是 Win32Project12.拷贝websoc...