焦点:程序开发

作者:Don Marti

多读书。我知道这听起来像你在流动图书馆海报上看到的东西,但说真的,多读书。现在有这么多写作工具,和这么多发布我们写的东西的地方,写作的吸引力变得有点危险。与此同时,阅读并没有变得更容易。

每个程序员收到的第一个高级建议是“不要编写可以重用的东西。” 这很好,但你需要阅读才能学习什么可以重用。有效的代码重用不仅仅是“我需要SSL,所以我要搜索+ssl +library。” 恭喜,你找到了OpenSSL,但你是怎么知道SSL会对你有帮助的? 因为,如果你不是过去十年都住在山洞里,你肯定在某个地方读到过它。还有什么—也许没有像SSL那么出名的东西—你可以使用? 如果你不阅读,你永远不会学到,最终只会自己编写。

Brian Behlendorf曾写道,“世界需要更少的软件。” 这并不意味着如果必须,我们就不应该编写软件,而是我们不应该为了错误的原因编写软件。 起初,编写自己的东西比费力地理解别人的东西更有趣,但总有一天,那个漂亮的新东西会变成你很久以前写的东西,并且让你厌倦维护。 学习重用,你就是在学习让别人为你工作。

一个项目的邮件列表的贡献者提出了一个问题,“对于一个只删除代码的补丁,我应该被列入贡献者名单吗?” 这是一个GUI项目,该补丁使一个对话框使用一些默认的布局设置,而不是一个严格控制但已损坏的布局。 当然,你应该因删除代码而被列入贡献者名单。 你同时使程序变得更好更小。 而且你为他人提供了榜样。 删除代码可能比添加代码需要更多的理解和技巧,能够成功做到这一点的人应该在贡献者名单的最前面。

还记得XCoffee吗? 这是一个很棒的想法—一个专用的服务器应用程序,它只在网上提供咖啡图片,以及一个专用的客户端应用程序,它只显示咖啡图片。 在当时非常先进,但只是咖啡图片? 而且每个客户端实例只有一张图片? 最初的XCoffee被一个网站取代了—不需要特殊的客户端软件,它可以在没有X的客户端上工作,并且所有难以处理的网络内容都由Web服务器处理。 如果你知道一个通用的解决方案可以让你“屠杀”你的“后代”,你会这样做吗?

说到阅读,本期有什么内容? 在出现更好的东西之前,如果你想进行源代码控制,或者浏览许多尚未正式发布的项目的开发代码,你需要了解CVS。 Ralph Krause在第PAGE页为您介绍基础知识。

内存管理错误会导致各种问题,从你的第一个C程序中的第一个段错误,到摧毁整个公司的安全漏洞。 通过阅读有用的免费工具来提高你的内存“功力”,其中一些工具内置于GNU C库中。 Petr Sorfa在第PAGE页解释了内存管理和内存故障排除。

如果你是一位从第一期就和我们在一起的脾气暴躁的UNIX老手,当你听到我们提到任何与集成开发环境有关的事情时,你可能会准备嘲笑。 所以你可以在那边嘲笑,同时我向这些好人介绍KDevelop和Glade。

在第PAGE页,Mitch Chapman介绍了Glade,这是一个有趣的工具,可以让你将GUI设计从编码中分离出来。 通过点击来设计GTK界面,并分别编写代码。 最棒的是,他在示例中使用了Python,这非常符合令人兴奋的新“对不必快速的东西使用面向对象的脚本语言”的编码理念。

为了不排除桌面战争的KDE方面,Petr Sorfa在产品评测部分的第PAGE页解释了KDevelop。 自然,作为一个KDE应用程序,它专注于C++和Qt,对于C++程序员来说,尝试Qt GUI工具包就会爱上它。 Qt具有一种美学上的简洁性,C++人士似乎很难用语言表达,但这没关系。 KDevelop与CVS集成—非常棒—并且与Qt Designer集成,你可能猜到Qt Designer是Qt的用户界面设计工具(在我们的下一期中查找有关Qt的文章)。

尽情享受这些开发工具,但不要忘记从编码中休息一下,读点东西。

—Don Marti,技术编辑

资源

加载Disqus评论