日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

小强怎样练成——读《现代软件工程——构建之法》第三章有感

發布時間:2023/12/8 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 小强怎样练成——读《现代软件工程——构建之法》第三章有感 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

小強怎樣練成

————讀《現代軟件工程——構建之法》第三章有感

一、知道自己吃幾碗干飯

  先秦時期的“革命家”告訴我們“知人者智,自知者明”,“自知之明”是一種美德,即便是老得“掉渣”的思想,直到今天依然有用。

  對于軟件工程師來說,這種能力尤為重要。我們與生俱來,有著一種“盲目”性,身處職場或是課堂,看著他人升職加薪得高分,心里的癢癢肉又開始“騷”起來。

  然而,你摸摸自己胸口的肉,“你良心不會痛”嗎?如果說“水平”分成100分,“大牛”95分,那么問問自己到“70分”了嗎?

  然而為了明白“自己吃幾碗干飯”我們就需要一把衡量自己的“尺子”。

二、嘴好使就行

  “軟件開發流程”是我們在前兩章中,經常會接觸到一個名詞,簡言之就是軟件開發者將開發的相關技術和過程統一到體系中的工作過程。此“過程”是“有序”的,但卻并非是“無爭論”的,“少馬爺”說“抬杠長姿勢”也就是這個道理。

  為什么呢?

  理由很簡單,不同角色的考慮范疇是不同的,有人的地方就有“江湖”,有江湖的地方就有“沖突”。然而好的團隊就是盡量釋放積極方面(做好自己,說服別人),同時避免消極方面(因為沖突產生的消極、抵觸情緒等)。

  那么什么才是“包治百病”的“老中醫”呢?其實很簡單,就是“嘮”。

  說的書面一點就是“溝通”、“交流”2

  作為一名ICIndividual Contributor),交流的作用2有如下:

  1.通過“嘮嗑”,理解問題、需求或任務。

    就像《猩球崛起3》里反派上校說的一樣,上帝賦予人類區別于禽獸的表征就是“Speak”,開發者通過“交流”了解用戶的需求。

  2.提出解決方法和工作量。

    對于沒有硬性規定的工作,在開始時期,任務都是“潤物細無聲”的存在于雙方的腦中,需要通過不斷的“溝通”將抽象內容具體化。

  3.與相關角色交流解決問題的提案,決定一個可行方案。

  4.執行,把想法“代碼化”,同時驗證方案“可行性”。

  5.與他人合作,改錯。

    “一人計短,三人計長”,在實際問題中,我們總會遇到這樣那樣的問題,很多時候,一個人很難把所有問題掌握清楚,于是乎,開發中我們也應該具備“圓桌騎士”精神,凡事商量著來。

  6.對發布的結果,進行負責。

    對于已經發布的活兒,需要不斷的“嘴對付”,對于提出的問題需要進行“解答”。

三、大招套裝(衡量水平)

  哲學喜歡以辯證的方式看待問題,同樣衡量一個軟件開發者的標準也不可能是“一錘子買賣”。現在,由貧僧教施主兩個大招2

  第一招,針對成長的標準

  1.積累軟件開發的相關基礎知識,增強內力。

    《射雕英雄傳》里,郭大俠最喜歡的招就是“飛龍在天”,因為這是整套“降龍十八掌”的第一招和基礎,只有基礎打牢,才能在更高層次上“游刃有余”。正所謂“重劍無鋒,大巧不工”。

  2.積累問題領域的知識和經驗。

    然而,再扎實的“基礎”也需要一定的實際問題加以驗證和實踐。如果學會了絕世武功,只知道直著打,不知道“變化”,那么學就不如不學,然而如何學?學的就是“經驗”,在實踐中,巧練本領,“紙上得來終覺淺,覺知此事需躬行”。

  3.對通用的軟件設計思想和軟件工程思想的理解。

    什么樣的知識才是屬于自己的?“師傅領進門,修行在個人”,就像葉問的拳法就和陳華順先生(詠春拳大師)的手法一模一樣?領悟、變化,從而出奇制勝。

  4.提升職業技能(區別于技術技能)

    其包括:自我管理能力,表達和交流能力,合作能力,保質保量完成任務執行力

  5.實際成果

    公開的實際項目是否的道理現實的成效?

  第二招,針對開發工作量和質量

  1.項目/任務的大小 一般通過行數以及功能點數進行標記

  2.花費時間 對于目標項目的花費的時間

  3.質量如何,兩種途徑

    1)交付測試人員

    2)交付客戶

      其中,re-work只表明開發過程中所花費的時間,re-work的多寡并不和最終質量成正比。

  4.是否按時交付

    按時交貨是針對于答應客戶的承諾來說的,“君子當擇言而說,以信立言”,這樣客戶才更愿意與開發者團隊形成較為長期的合作關系。

  四、低級玩家的起跑線

    團隊的軟件流程(TSP)對于成員的要求有2

    1.交流

    2.說到做到

      人類需要為自己的言行負責,這樣才有人愿意與某個人形成一種相互信賴的關系。

    3.接受團隊賦予角色并且按角色要求工作

      就像馬克思所說,只有人類接受并且按照“社會分工”進行全力以赴的工作,社會才能向前發展。

    4.全力投入團隊活動  

    5.按照團隊的流程工作

    6.準備

    7.理性的工作

      “沖動是魔鬼,可樂是禍水”,凡是試圖將所有問題“一次性”完美解決的人或者行為都是不可靠的。

  五、你以為你以為的就是你以為的嗎

    軟件的模塊之間,存在各種復雜的依賴關系。不可見性以及易變性導致軟件很難清楚定義,使得軟件不易維護和修復。

  主要問題包括2

    1.分析麻痹

    2.不分主次,想解決所有依賴問題

    3.過早優化

    4.過早擴大化/泛化  

  這些問題的來源都在于“不知道自己吃幾碗干飯”,哲學里,反復強調“主要矛盾與次要矛盾”之間的關系,凡是不分主次,“眉毛胡子一把抓”必然不會長久。

  軟件工程的特點:模塊化,抽象,總頂向下,逐步求精1。想要將軟件開發“一蹴而就”本身就是不可取的。開發過程的實質就是將大問題根據邊界進行拆分,劃分成小問題的過程。只有將每個子問題都解決,其問題的集合才能得到真正的解決。

  六、意氣用事還是另有所圖

  其實,軟件過程的內容與其說是一門技術更像是一門方法論,這種思維應該是凌駕于各種知識之上的一種處理問題以及解決實際問題的能力。人類從“呱呱墜地”開始就是開始學習各種技能,而將技能“巧妙”運用出來,這就是人類區別于“低等動物”的關鍵。

而軟件工程就是這樣一門學科,他的難度應該不低于基礎學科,然而每年的國內開始學習這門課程的學生卻呈現出“逐年上升”的趨勢,他們真正懂得這門課程的重要性嗎?依我看來,非也。

  多數人投身于此并非主動,或者更多是一種迫于形勢的被動(比如服從調劑、就業壓力),然而“既來之,則安之”,“行行出狀元”當每一個學子抱著一顆“敬畏”“信仰”的心情,深入學習,我覺得應該是“學有所用”的,從而達到“學以致用”的目的。

以上6點,就是本人對于第三章內容的大致總結的讀后感,做一個有心人,學會總結,才能逐漸成為一個“小強”,小強不光是“技術”上的而更應該做“遇到困難的小強”。

?

參考文獻

1】張海藩?呂云翔?《軟件工程(第四版)》?2013.08.01?人民郵電出版社

2】鄒欣?《現代軟件工程-構建之法(第三版)》?2017.03?人民郵電出版社

轉載于:https://www.cnblogs.com/LiYuxuan1104/p/LeeYuxuan04.html

總結

以上是生活随笔為你收集整理的小强怎样练成——读《现代软件工程——构建之法》第三章有感的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。