欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » 程序员 » 正文

热门阅读

没有发布过产品的程序员不知道什么是真正的软件

创建时间:2014年02月18日 08:53  阅读次数:(3719)
分享到:


看起来好的程序员似乎总是短缺;这是为什么编程是如今薪水最高的职业之一。但事实上,程序员从来不短缺的。是公司们总希望市场上有更多的资源可用,当遇到不同的业务时,他们有更多的余地来找到合适的人。但今天我不是来说这些普通程序员的。我感兴趣的程序员是那些热爱他们的技艺,渴望创造出有意义的东西的人。

这样的程序员,在开启他的职业生涯时,在尝试进入他中意的公司时,他需要崭露头角。有些公司在招聘是会写一些诸如“我们招聘时考察他们所做的开源项目”等的话。在我们 Rendered Text公司的招聘广告里,我们总是会提到这样一个要求:应聘者需要至少有一次发布产品的经验——以开源或其它的形式。这样的话没有上下文通常会让人困惑,所以我打算把我的意思更详细的说明一下。

这里的“发布产品”指的是什么?

年轻的程序员,由于缺少经验,常常不知道这样的事实:写代码只占一个软件出品过程中很小的一部分。借用Frederick Brooks著名的《人月神话》一书里专业的描述:它只是一个软件程序诞生的开始。编码这部分活动很独立,这个过程中没有用户,不跟其它各种软件系统交互。这是最容易完成的一部分工作,因为基本上自己闭门工作,我们可以随时声明代码“完成了”。

而真正要开发出一个软件产品则复杂的多。作为产品,你需要把它打包装箱发布给公众。桌面应用需要方便安装。如果是一个代码库,你需要完善里面提供的API,重构代码提供更好的服务,附带测试程序,还有写文档,编写和发布出版说明。当所有这一切完成后,你进入了一个维护阶段:你需要和用户交流,或和一些开源捐赠者交流。你将重新进入这种开发和发布新版本的过程。

举个例子,在GitHub上发布一个音频压缩算法的源代码,这不叫发布产品。而一个程序包,提供了多个版本,被成百上千的开发者下载、使用,这则是一个产品发布行为的明显特征。

大多数的软件都需要跟其它系统进行交互,以此来发挥功能和提供服务。你必须保证你的程序高效稳定。例如,一个web应用需要用到数据库和系统内存。起初,从远程API提取数据不会有什么问题;而经过一个较长的时间、系统用户增加,如何能容易的升级扩展则是另外一个问题。

好的软件是指在生产环境、在用户手中好用的软件,而发布产品动作就意味着你要开发出好用的软件。所有的软件公司都希望招聘到一个发布过产品的程序员。但很多程序员,有些有着高超的编程技能,但却只知道闭门编码。当然,公司招聘一个程序员要看很多方面,但如果你曾经有过参与一个软件产品出品全过程的经验,你绝对是任何一个好软件公司的优选选择。蜰錘 N剉恘x-N 硩錘 w鶴dk{|烺齹剉銐槝`飴 俌済衏汷剉恘x g皛o 'Y禰 z甠頞cksS颯0'
来源:
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 36+69=? 的结果(结果是:105)
结  果: