对于IT的设计人员,思维很重要.在程序设计中,养成一种好的思维方式远比掌握许多高深的编程语言更重要.在面向对象程序设计中,最重要的是组合和继承,其实当中隐含着人们常用得思维方式.组合,就是整体和部分,简单得说从宏观和微观角度对事物的看法。构造一个大型系统常用的top-down ,bottom-up的设计方法.top-down的方法应用很广泛。先整体在部分,简单到复杂,仿佛绘画,先画轮廓,在细画每个部分。bottom-up的方法与之相反,仿佛在搭积木.继承,抽象到一般,或一般到特殊的思维。子类继承父类.仿佛人类的遗传.儿子继承了父亲的基因,而且还可以有自己个性.也可以这样看,如果一个人应该具有人该性质,但也有区别与其它人特性.这两种思维在面向对象设计程序中常用.
在程序设计中还需要几种思维.常说的找到问题,分析问题,解决问题.比如调试程序,就要用到一种逆向和正向思维。针对实际不同的应用程序,出现的错误千奇百怪.对于一个大型应用程序找到错误不是很容易,有些错误还是随机发生。程序运行时的错误,要仔细分析,仿佛侦破案件,到处去寻找线索.有意思的是程序很难倒着运行,只能从入口来寻找.比如大家常玩得游戏走迷宫,一般是从出口向入口倒退,然后画出来入口到出口的路线.实际中涉及很多的技巧.在嵌入式应用软件中,调试程序变的更复杂,首先你要判断问题的来源,是硬件还是软件。有些东西很难确定,只知道结果是错误的,只能慢慢追踪靠猜想.在事件驱动,交互类程序设计中,问题有时变的更离奇,出现的事件是随机的.
以上是程序设计的思维,一般是程序员所常用得.然后在微电子中,对于硬件设计者任务变得更艰难。在前端的硬件设计中,硬件人员也要用硬件描述语言编程.这种语言不同与传统的编程语言,虽然类似c语言,这种语言不但可以仿真电路的行为,也可能综合出电路的结构。这种语言表现出来的是并行性,虽然不是真正的并行,并行使分析仿真的结果变得复杂.在实际的仿真调试中,各个信号都是关联性很大。如果遇到问题分析起来更头疼.常用的硬件设计思维就是状态机+数据通路.状态机的思维很奇妙,仿佛不同的人对你说不同的话,你的心里状态在不断的改变.也许大脑就是特别复杂的状态机,当收到外界得刺激,内部的神经网络不断的传送信息.
在实际生活中常常听到说什么复杂 ,简单的思维.但复杂,简单本来是比较模糊的。一般来说量化很难。有人说出现两类人,复杂-》简单,简单-》复杂.其实化繁为简当然比较妙,不过前提要有一定的高度。简单-》复杂也很重要,像生物的进化,其实认识问题或人由简单到复杂过程.讲复杂的问题简化,你可以很清晰得看到问题的本质。将简单问题复杂,将问题具体化更容易抓住细节.
实际的情况是简单到复杂不断循环,在系统设计中,常用的是简单到复杂思维。站在一定的高度首先提出简单的系统模型,然后在不断细化.
关键词:
设计
思维
简单
复杂