loading请求处理中...

桌面软件开发的复杂性在哪里,一个程序员能完成一个桌面软件开发吗

2021-12-01 21:22:32 阅读 9871次 标签: 软件开发 作者: 蓝blue

  桌面软件开发的复杂性在哪里,一个程序员能完成一个桌面软件开发吗。这个估计是很多软件开发外行人士的疑惑。而事实就是一个程序员完成不了一个桌面软件开发这个是为什么,桌面软件开发很复杂吗。

桌面软件

  目前软件公司普通程序员的工作情况,大部分情况下,普通程序员并不负责设计,仅负责编写代码并进行最小限度的单元测试,同时在被要求的情况下撰写相关文档。这类程序员常常是对着详细设计书进行代码翻译工作,对于一个有思想有抱负的人来说很枯燥乏味。我曾经见到过快要达到伪代码级别的设计书。如果拿在手里的不是打印出来的纸张,随便写个宏什么的,基本都能把代码生成出来的。但也不排除设计书做的不完整或者质量低下的情况,这时候就需要向设计者发问,并承担一部分设计工作,这种情况相对会有趣一些。但对知识不丰富且没有设计经验的人来说,这项工作是个噩梦。尤其跨国协作时,要用外语探讨时,有些外语不好的人就彻底缴械了。当然还有另外的一些高级程序员,进行着分工更高层一些的工作。比如:设计师、架构师、顾问等。作为设计师,相对接近程序员一些。要把架构师定下来的东西更进一步细化,设计成程序员能实现的东西。当然对于一些小公司和小项目,以上角色互有穿插,甚至一人全兼。

  一个做桌面程序的程序员应该很容易做一个“稍显复杂的桌面软件”。这就好像一个做Web的程序员做一个“稍显复杂的网站”也是很容易的。当然这个“复杂”只是指功能等技术逻辑上的复杂,如在UI方面还有更高要求,那应该由专门的美工来负责,而在推广营销方面还应与市场人员配合。

  程序员也有分工:桌面程序、网络程序、移动终端程序、大型机编程、小型机编程、单片机编程……即便同是做桌面程序开发,在不同操作系统下,代码写法也有很大不同。术业有专攻,一直钻研其他领域的人,哪怕是高手也可能对桌面程序的运行机制和构建方法不熟悉,从而无法独立完成这个任务。即使在一个专做桌面软件的公司里,也可能有大部分程序员无法独立编写一个稍显复杂的桌面软件。

  作为架构师,往往要做出很多艰难的抉择——是使用这种技术还是那种、是用这种平台还是那种平台、是**功能还是**性能?作为顾问,其实很多真正喜欢闷头搞技术的人一不小心当了顾问之后都大惊:我这跟搞推销的有啥区别?啥时候才能让我再次打开久违的IDE(集成开发环境)或者记事本(拽点的人用Vim),敲两行代码啊。因为顾问的主要工作是研究客户的业务,并提出一个可以满足客户业务需求的IT解决方案。他们对IT技术可以说无所不知但又对任何一种都不深入。让普通技术人员眼花缭乱的各种名词是他们忽悠客户最好的武器,然后就是去客户现场忍着各种不爽做讲演了。

  对于程序员新手如何提高开发能力,首先,大量的实践练习绝对是必须的。而实践之外重要的一点,是多动脑思考,哪怕工作本身不需要头脑,也不要停止思考。想一想做这件事的前因后果,有什么可以改进的地方或者提高效率的地方。长此以往,经过同样的时间,你会学会很多东西,并具备很多能力。简而言之,要提高开发能力,就要做到勤奋和善于思考。

  如果你想找桌面软件服务,或者想要了解更多桌面软件资讯,就上一品威客网。一品威客网入驻上百家专业桌面软件公司,汇集全国千万优秀专业人才,提供最全面、最专业的桌面软件服务。


Tag: 程序员

公司推荐

成为一品威客服务商,百万订单等您来有奖注册中

留言( 展开评论