大道至簡 軟體工程實踐者的思想讀書筆記一

2022-04-01 23:04:49 字數 2205 閱讀 6576

第一章 程式設計的精義

愚公移山專案,原始需求的產生:「懲山北之塞,出入之迂」

專案溝通基本方式:「聚室而謀曰」

專案目標: 「畢力平險,指通豫南,達於漢陰」

可行方案:「扣石墾壤,箕畚運於渤海之尾」

專案中有三名技術人員和一名工程管理人員: 「(愚公)率子孫荷擔者三夫」

外加一名力量較弱但滿腹激情的外協:「鄰人京城氏之孀妻,有遺男, 始齔,跳往助之」

以上就是愚公移山整個工程的概況。接下來,愚公向智叟敘述了整個工程的程式設計實現:

「雖我之死,有子存焉」——if條件語句

「子又生孫,孫又有子……子子孫孫,無窮匱也」——迴圈結構

作為優秀的程式分析師,愚公清楚明白由於「山不加增」,所以「何苦而不平」,因此這不會是乙個死迴圈。

在愚公的論述中,我們看到了程式設計的根本:順序、分支和迴圈,這,就是程式設計的精義了。

程式設計作為一種行為,我們只需要知道其邏輯方法就可以了。所謂程式設計實際上就是把一件事交給計算機去做,你只需要用「程式語言」描述 給計算機該如何完成這件事。

程式設計第一要務就是先把事情分析清楚,把事情先後的邏輯關係和依賴關係搞清楚,然後再去寫**實現。

記住:積極工作和勤於思考都要佔時間

第乙個完成程式設計本質思考的人提出公式:程式 = 演算法 + 結構,這個公式未提及**,甚至可以說,在這個公式裡,**是不存在的,存在的只是思想

演算法是對乙個程式的邏輯實現的描述,而結構是邏輯實現所依附的資料實體,開發人員只要將演算法設計出來,把結構描述出來,剩下的就是勞力活了。

第二章 是懶人造就了方法

人的精力終歸是有限的,提出新的「方法」,解決的是影響做事成效的根本問題。

程式 = 演算法 + 結構 + 方法

在面向過程的開發中,「過程」是cpu提供的,「單元」則是編譯器提供的機制,程式設計師無須(至少不是必須)再創造什麼「方法」,就可以進行愚公式的開發工作了。

第三章 團隊缺乏的不只是管理

三個人便可以構成團隊,這樣便有了團隊的一些基本特性:主從,監督和責任。

做管理起碼要能承擔責任,這是最基本的素質。

從管理的角度來看,專案失敗與否與專案經理的經驗直接相關。

專案的成功是由兩個方面來評估的:專案完成質量,專案完成時間。

專案工期的問題不能解決,就不能保證專案成功。只有經驗更加豐富,才更有可能逼近「合理的工期」。在這之前,專案經理面臨的就是失敗,這個失敗可能不是由專案經理本身的能力所決定,或者也不是由團隊成員的工作決定,可能在一開始那份給客戶的專案協議就簽錯了。

因此,專案經理是需要時間來成熟的。他需要機會來承受錯誤,而不是一開始就享受成功。

只有有了確定的團隊模式,才能尋求相應的管理制度,並且才能把這樣的制度實施在團隊之上。

組織模式確定的同時,相應的制度也隨之建立,很少有組織幾年之後才來補制度的。

明確組織機構,既是團隊的關鍵,也是我們思考問題的基礎。

精簡團隊模型:r模型:

在保障這樣乙個組織機構模式的過程中,以下幾點內容是需要注意的:

1. 如果專案針對直接客戶,而且沒有產品化的可能性(或必要性),那麼可以將與市場(以及市場部門)相關的問題和角色先放一邊。

2. 已經存在於開發團隊中的成員,不適合在品質部門中兼任角色。

3.(在這個模型裡)專案經理應致力於減少團隊中開發角色與其他部門的溝通、必要時開發經理應該站在開發人員之前進行部門間的互動。

4. 品質部門、文件和培訓部門以及客服部門應該主要由專職人員構成,儘管開發人員可以(或者經常會)參與文件、培訓和客服的工作,但這也通常是他們最不能勝任的角色。

5. 這是中小型規模的公司和團隊的參考組織機構模型,對大型團隊並不適用。

在這個模型中,我們仍然看到乙個至少由三個人構成的團隊。其中,在開發經理和開發人員之間,既存在主從關係,也存在協作關係。而專案經理,則在團隊中處於領導者、組織者和團隊保障者的地位。

實際上,開發團隊並不需要管理,或者說,在你還沒有弄清楚狀況之前,不要去管它。

協議並不能建立管理者與被管理者的信任,而只是確保了這種關係。

如果有一群開發人員像螞蟻一樣辛勤地工作著,那麼,請先不要打擾他們。你應該跟隨他們,看看他們是如何做的。發現規律,分析這個規律的價值,最後再嘗試改變他們(的一些負面價值的規律)。

你已經確定了組織結構,確定了組織中的角色,還有乙個團隊的人,作為專案經理,你需要先分工。分工之前,那個團隊只能算是乙個沒有組織與合作的群體。

初讀《大道至簡 軟體工程實踐者的思想》收錄

初次讀完這本書,思想裡還是作者的思想,不過這本書還是給了我點教訓,一直覺得自己做開發不合適,就現在 看完這本書的時候,我覺得我錯了,不是自己做開發不合適,而是自己的思想一直這樣去想問題,從未放開去拼搏 一次,真正的去做個實在的東西出來,才是最真的。有些文字我並沒有理解,不單單是我收錄的這部分,還有很...

讀《大道至簡 軟體工程實踐者的思想》有感

第一次讀完這本書時,感覺深深地松了一口氣,因為從頭讀到尾讀懂的地方很少,糊里糊塗,沒能進行好好地思考。前幾天,在電腦上找到這本書又讀了一次,再加上課堂上老師的一些講解,才稍微有點懂了。這本書的作者匠心獨運,語言平實易懂,形象生動。向初學者介紹了什麼是程式設計,向愚公式碼農介紹了什麼是方法,向頭重手亂...

讀《大道至簡》 軟體工程實踐者的思想有感

初聞其名,大道至簡 大多人都會覺得這是一本滿腹人生哲理的書籍,作者洋洋灑灑的談論大道理,其實不然,作者以古典文化為引,以作者的所思所想為線,啟蒙了我作為乙個軟體工程初學者的實踐思想。愚公雖愚,卻向我們展示了如何完成乙個看似龐大的工程,那就是一步一步的分而治之,回想自己大一的學習生活,確實遇到過比較繁...