软件工程之审题

拿到一个开发任务,先不要着急开着写代码,要做的第一件事情就是---审题。

1、开发任务如何定义?

答:即如何定义问题的边界,哪些属于问题之内需要解决的,哪些不是需要我关心的。这样做的最大好处是,不会像考试看错题一样,写了一堆没用的答案,费力不讨好。

2、完成这个任务需要用到哪些资源以及 这些资源怎么获取? 

答: 是否有可复用的模块,是否有开源的代码,是否有成熟的技术方案等等。 这个问题的解也对开发人员提出一个更高的要求,那就是平时对“轮子”的积累,不要等着用的时候再去造轮子,慢而且比已经被用过多次优化过多次的轮子更容易出问题。

3、如何分解这个任务?

答:纵横交错,阴阳调和。说通俗点就是横向分块,纵向分层。更清晰的解释,纵向就是业务流程或数据流程,横向就是分层解决问题,或者用面向对象的思维,就是需要分几个类来解决这个任务,每层的封装解决自己本层的问题。再就是定义清晰的输入和输出。

4、解决这个任务用到哪些具体的技术?

答:花一些时间了解自己需要用到的技术,一般同类技术中总有一款适合你。比如嵌入式数据库sqlite,写文件的tinyxml,比如jason串。

5、工具的选择?

答:工欲善其事必先利其器,工具的选择也很重要。 选择一款适合自己的开发工具可以事半功倍,熟练掌握适合自己的工具,同时不断积累开发过程中用到的小的调试工具,会让你更加得心应手。

6、证明自己的办法?

答:在开发过程中,要写一些测试函数(不用时可以隐掉),让错误第一时间被发现和消灭, 等有同事与你联合调试时,这个很有用,可以快速证明自己的清白。


另外:看过一位技术大牛的文章,如何读代码?这里也大概写一下,如侵权请通知

1、从主函数开始读;

 2、写注释,看不懂的地方可以先猜,写的不对以后可以再来修正;

 3、分层读,先搞懂上层逻辑再读下边的东西 ;

4、每次只考虑同一个思维层次的问题(有时候你思维混乱,只是因为你没有聚焦自己的层次)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值