软件开发需要综合考虑系统模型,环境因素,软件工程,网络连接,用户界面,数据流和网络. 开发即为写程序且写到非常孰练?,程序设计也许是永远的基本技能和高度艺术,但今后决不是开发者的主业. 真正需要的搭积木式的系统构筑和维护,故必须对各个积木块进行深入了解.作为一个程序员不算是最辛苦,最辛苦的是系统分析员.最辛苦的不是设计和搭出多少个系统,而是登山不止的知识获取和吸收.学习和研究成为当今开发人员最为坚苦的一项工作, 系统的概念已深如人心 ! 这世界变化得真快,当我还在埋头查阅 NT4.0巨大的文档时,身旁有人很是令我心惊地 说了一句," 别折腾 了,留点儿体力给 NT5.0 吧 !". 老实说,每当面对这样的现实,我总是有一种气喘吁吁的感觉.自从我开始接触计算机,仿佛每一天都在不停地奔跑,都在买力地追赶.但结果总是会落后,在我还没有完全从?? 找回感觉时,我在网上又发现了更新版本??的踪迹,顿时, 我感觉自己没希望了. 了解开发的思路和方法比编程本身要重要. 我觉得现在编程已经不是一件难事了, 尤其是在Internet十分发达的今天, 许多资料在网上都能找到. 所以, 知道到哪里找资料是很重要的,即使是你不知道一些编程的具体细节.分配给你一个项目, 你如果知道要用到哪些方案来解决问题, 每种方案的优缺点. 最后你能挑选出一个很合理的方案来.例如,开发时间和费用, 所开发出系统的成本高低和性能. 当别人告诉你一个程序的开发方案时, 你如果能发现它的优缺点, 例如, 但需要高性能的图形时, 你是决定用价格高昂的专用图形卡还是用通用的显示卡加上DirectX技术呢?.所以,这些都比编程本身要重要的多. 当今许多人一谈到计算机就认为是编程, 一谈到编程就等同于VC/VB/Java, 对一些界面和非本质的东西大加赞赏, 而对于许多真正本质和提高性的东西不去学习. 到头来, 稍微出点问题就解决不了.如果不相信, 可到各bbs看看, 有多少人所提出的问题是真正的问题呢?, 大部份问题都只能算是会不会翻书的问题, 可大部份人就是不知道怎么过翻法! . 所以,近几年来,我一直力求多看一些大师级的好书, 以及一些方案性和能提供idea的文章, 单纯编程的东西我已经跟本不感兴趣了. 开发是一种思路,利用别人的成果才是最高的境界,在设计时应尽量多找一些已有的核心代码.在开发中积累的应该是对问题之分析能力,对出错情况之诊断能力,对结构之设计能力, 而不仅仅是编写代码的能力. 打好基础 计算机课程设置的都是基础课。学习其他技术的基础没有过时不过时之说,现在一些新技术往往华而不实,不能告诉你本质的东西,对大家不会有质的提高。 一味讲用工具,顶多叫程序员,IT许多行业需要理解和融会贯通的理论及技术.开发工具只是辅助性的,掌握开发的思想和理论精华才是一名程序员向高程次发展的真正任务,否则只有一辈子当代码工人了! 说系统分析员编程弱恐怕有失偏颇.可以说大多数好的系统分析员都是从优秀的程序 成长起来的.很难想象一个对编程不甚了解的人可以划分好模块,更不要说较准确的估计出工作量和工作进度的了,可以说系统分析是建立在程序编写上的一种学问.也 可以说是一种宏编程.我想我们不应该把做软工和做程序员对立起来.任何事物在不同的阶段都有它的 表现形式.同一个人,开始工作的一年他是程序员,一年后他就是系统分析员了.干的活其实差别不大,只是把注意力和精力从细节转移到宏观上罢了. 我老是有一种比较天真的想法,那就是:软件工程是需要创造性思维的. 换句话说,好 的软件绝不仅仅是漂亮的代码.不论从纯计算机技术角度来说, 还是其他的角度也好,没有过人的想法都是不行的.写程序不应该只考虑到: 一段代码如何.思路宽广 是一个相当重要的素质. 但是,编程编得多了,往往回自己闭塞自己的思路,把自己 限制在一个比较: 狭小的范围内.系统分析员也许写代码根本就很弱,但是思路宽广,统筹全局的能力一定要有,一定要看到很多程序员考虑不到的地方.因为,用户在 意 的往往不是某些程序员孜孜以求的东西.比如,某个Button放的位置不好, 经常比较 缓慢的执行速度更令用户不满. |