焦距原理

 

<<焦距原理>>

今天的文字要講一個方法,我把它稱作“焦距原理”。我選擇從軟件設計的角度講這個方法。但它並不只是適用於軟件開發,它是一種處理事物的普遍原理,可以適用於工作、生活、思想,以及所有你所要解決的問題。其次,它很簡單。

通用的軟件開發設計流程(或者說生命周期)依次包括:
需求分析=>概要設計=>詳細設計=>編碼=>測試=>產品=>維護
也可能是一個迭代的過程,即:
需求分析<=>概要設計<=>詳細設計<=>編碼<=>測試<=>產品<=>維護
當然,很多開發組織可能並不一定完全按這種流程走,如極限編程方法或先設計後分析方法。不管走哪種流程或使用哪用方法,其最終目的都是為了產生一個低資源耗費,且高質量的產品。而且,它們有一個共同點,這個共同點是什麼呢?
我們把上述流程的中間那一段截出來,即:
概要設計<=>詳細設計<=>編碼,再簡化為:
設計<=>編碼
這就是它們的共同點:設計<=>編碼,請注意他們之間的箭頭是雙向的,也就是說,設計中會有編碼,編碼中也會有設計。一個合格的軟件設計師包含兩個職能面:一面是設計,一面是編碼。假如你是一名軟件設計師,那這個時候,在你的大腦裡就要有一個能變距的相機,在你執行設計職能面的時候,你就要把焦距調遠一點,這樣看到更多內容,以及內容之間的關聯關系,而當你在編碼的時候,就應該把焦距拉近一點,以便能清楚的,一絲不漏的把功能點代碼實現完整。
同樣的,這種原理,也適用於軟件開發生命周期的其它階段。

攝影是一項藝術行為,同樣,而軟件開發呢,從本質來講它是一項技術行為,但它又不僅僅是一項技術行為,它可以上升為一項藝術行為。為什麼這麼說呢?
攝影時焦距的控制非常重要,因為它捕捉的是一個瞬間,焦距不能拉得太遠,也不能拉得太近,要恰好在一個度上,捕捉到的畫面才是最合適,拍出好的照片需要有很高的藝術技感覺藝術技巧。而對於軟件開發,同樣也需要這種感覺和技巧,你要合理的控制大腦裡的這個焦距。當然這是對技術而言,而真正的高手,是將技術進行藝術化。

把這個原理再擴展一下,舉一個例子,Google地球,它是一個軟件,利用存儲在服務囂上的衛星拍攝的地球照片,用軟件模擬出一個地球,人們可以利用這個軟件來觀察我們生活的這個星球。用戶可以進行放大、縮小。當縮小成一個球的時候,你會發現,這個星球太美了。慢慢的你找地球上的一個點,再放大,放大至中國,感覺不是那麼好,中國的大部分地區都是山,再放大至福建,也是很多山,再放大至廈門,發現一堆亂七八糟的房子,甚至再放大到你家的房子。很有趣吧。在這個過程中,你會不會有這種感覺?咱們的城市在太空上看起來真是不好看。咱們當初城市的規劃為什麼不能做得更好一些呢?

這就是焦距,就只能關注到你所能關注范圍,只能注意到局部,若要把整體創造得完美,你就得跳出你的這個圈圈,到圈外去看這個圈圈。當然局部也很重要,因此,你若要讓局部和整都保持完美,你就得來回的在這個圈裡圈外跳來跳去。

到這裡。我想我應該講明白了我要講的意思。
那麼同樣,現在我們再利焦距原理,把思考的范圍放大到我們的生活,工作,以及看問題的方法。同樣也舉個例子:一對戀人相戀了,剛開始時他們都決定對方很好,大概相處了一段時間之後,開始慢慢的發現對方身上的缺點。這時候,就可能出現兩種情況,一種是產生矛盾,並愈演愈烈,最終導致分手。而另一種情況可能是雙方都解決了這些問題,又慢慢的變好了。當然不能否認的是這個過程中會有感情因素。考慮這兩種情況,可以發現有一個因素在起作用,就是“焦距”,剛開始時焦距最佳,所以都覺得對方很好,所以相戀了,後來焦距拉近了,一些不好的地方顯現出來,矛盾一產生了。第一種情況的戀人之間,他們不懂得控制這個“焦距”,所以長期的不“美”,導致分手,而第二種情況的戀人就很懂得處理“焦距”問題,所以他們更加堅定了。

人無完人,每個人都有優缺點,只要能夠合理的利用“焦距”,就可以美化缺陷,不是有一種美叫“缺陷美”嗎?這就是生活的藝術,做人的藝術。
做事情一樣,何必固守於一個點,局限於一個范圍,懂得合理收縮,才能把事情做好。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值