像 機器 一樣思考

2021-07-31 08:41:20 字數 1734 閱讀 4369

剛剛看了一篇文章,有點感觸,簡單寫寫,算是梳理思路,也當作是總結。

文章的題目叫做:《像"機器"一樣思考》,我在這兒簡單的回顧和總結一下吧。

機器的思考方式,即:輸入➡️處理➡️輸出。簡單粗暴,效率高。輸入和輸出都好理解,這個中間的處理環節,就相當麻煩了。

還是簡單總結一下,就是:

1.分解問題

2.找到子問題之間的關聯

3.找到問題的邊界,明確假設和結果

第三點的大概意思應該就是要詳細地分析每乙個分解之後的問題,給出假設以及假設的結果。

這也是這篇文章給我最大感觸的地方。上述的三點看起來十分簡單,但是在實際實施過程中則要麻煩許多。你需要很強的邏輯思維,以及對整個專案把控能力。

(就舉做專案的例子吧,在生活中的其它領域,應該都可以使用到)

這個能力叫做analytical thinking,翻譯過來也就是分析問題的能力。你需要把乙個複雜的東西拆開,分解成乙個個相對簡單的,再找到其相對應的點,最後再合成乙個整體。

###還有乙個點:面向過程和物件導向的區別及聯絡

我之前一直沒有太分得清楚,只是知道兩者都是一種實現方法,相對應的解決思路不同.看過這篇文章之後,茅塞頓開,以下是我所理解的兩者之間的聯絡與區別,(如果有大神看到不對之處,望糾正!)

我的理解:

上面所說的這種analytical thinking其實就是一種面向過程的程式設計方法,如果僅僅是停留在此處,那也就沒有物件導向的事情了.也就是說,如果你的專案規模很小,那用面向過程程式設計就完全可以實現了,但是如果你的專案很大,後期需要新增一些新的功能,或者要修改一些舊的功能,那面向過程就很方便了.

舉個栗子:

你要做乙個五子棋的遊戲.

面向過程程式設計:

黑子走–>在棋盤上繪製–>判斷輸贏–>白子走–>判斷輸贏,然後就是重複執行上述步驟.

物件導向程式設計:

將整個遊戲劃分為三個物件:

1. 棋子

2. 棋盤

3. 規則

每個物件負責相對應的部分,而各個物件給予其對應的方法:

如:棋子物件完成相應的動作後,告知棋盤物件繪製,而後告知規則物件進行相應的判斷.

那這樣做有什麼好處麼?

舉例:

要在五子棋的基礎上改為圍棋遊戲

基於面向過程的方式,需要改動的地方就多了吧:每一處引用到規則(也就是判斷輸贏這個環節)的地方都要修改,當然棋盤需要重新繪製乙個比較大一點的了.這個的鏈路需要重寫,需要改動的地方太多.

基於物件導向的方式就簡單一點了,只需要把規則物件和棋盤物件改掉就好,可修改性就體現出來了,當然,之前的規則還可以繼續保留,五子棋遊戲還是可以繼續存在的,只需要新新增圍棋的規則和圍棋的棋盤就好.整體的脈絡都可以得以保留,只是需要有新成員的加入.

####總結

1.物件導向的程式設計方法,是面向過程程式設計方法的一種封裝,是在其基礎上發展出現的.

2.像"機器"一樣思考 是面向過程思想的一種體現.

3.面向過程思想:輸入–>處理–>輸出

4.物件導向思想:a物件–>b物件–>c物件,而每個物件之中又存在[輸入–>處理–>輸出],也就是面向過程的封裝了.

以上是我的一些思考,如果有大神發現一些不對的地方,望指正.

像外行一樣思考,像專家一樣實踐

像外行一樣思考,像專家一樣實踐,不只是說說而已。題記 看了試讀的章節有些日子,看完了試讀部分,其中一部分是能和我共鳴,還有一部分觀點,自己也比較贊成,但貌似又有些抽象。我想,書不單是用來讀的,讀一本好書,就像吃肉一樣,吸收書中的營養,把營養轉換為自己的血液,直到骨髓中,成為生命中的一部分。像外行一樣...

《像外行一樣思考,像專家一樣實踐》

這本書是在看 暗時間 時收集到的,書的副標題是科研成功之道,自己是個資訊工作者,也號稱科研工作者,雖然經常忙著一些雜活,沒有時間認真思考和做實驗。但從中找點立項 研究 演講 總結的經驗也是有益的。這本書的目錄比較有特點,竟然佔了12頁,基本上看了目錄也能了解了書的主要思想和內容。專家由於他受固有思想...

像顧問一樣思考

工作中問題層出不窮,疲於奔命而又不斷受到抱怨和批評,有沒有辦法將錯綜複雜的問題理出頭緒,使工作有條不紊地進行?日酬萬金的諮詢顧問,真有那麼神奇?他們是如何工作的?應該怎麼利用?企業能否借鑑諮詢公司的方法培養自己的內部顧問?課程特色 與其他思維提公升的課程不同的是,結構化思維不僅僅是針對問題的分析和制...