中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >
代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本)

包郵 代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本)

作者:章淼
出版社:電子工業出版社出版時間:2022-11-01
開本: 其他 頁數: 292
中 圖 價:¥54.2(7.1折) 定價  ¥76.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 版權信息

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 本書特色

適讀人群 :本書面向的讀者包括軟件工程師、管理者、計算機和軟件工程方向的學生。●本版本為【簡裝本】小冊,攜帶方便,地鐵、公交、圖書館、教室、辦公室,一本適合多場景閱讀。 ●百度學院精品課“代碼的藝術”核心內容首次成書,百度技術培訓中心官方指定用書。 ● 清華大學、IT名企開設“代碼的藝術”課程及講座,課程獲廣泛贊譽。 ● 成為優秀軟件工程師三條路徑:(1)學習-思考-實踐;(2)知識-方法-精神;(3)基礎乃治學之根本。 ● 具備正確的意識比掌握具體的知識更重要。 ● 讀者對象:軟件工程師和管理者;計算機和軟件方向的在校學生。 ● 隨書附贈配套視頻,作者在線一對一答疑等增值服務。

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 內容簡介

本書是作者圍繞軟件工程能力所做的系列培訓的內容匯編。這些內容來源于作者20 多年以來對軟件工程的學習體會和項目實踐,以及對中國工業界軟件工程師的觀察和教育實踐。 全書共8 章,第1 章說明了什么是軟件工程能力,闡述了軟件工程能力中的素質要求。第2~8 章分別從代碼、文檔、項目管理這三個方面講解了提升軟件工程能力素質的實踐方法。 對于代碼,第2 章"代碼的藝術”對其進行了總體說明,第3 章重點說明了代碼評審,第4 章以Mini-spider 為例說明了方法如何運用。 對于文檔,第5 章說明了如何寫好項目文檔,第6 章說明了做研究的基本方法。對于項目管理,第7 章簡要說明了如何做好項目管理,第8章重點說明了如何做好項目溝通。

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 目錄

第1 章

軟件工程能力

1.1 為什么要重視工程能力 / 3

1.2 什么是工程能力 / 5

1.2.1 工程能力的誤區 / 5

1.2.2 工程能力的定義 / 6

1.3 怎樣提升工程能力 / 11

第2 章

代碼的藝術

2.1 背景和初衷 / 17

2.2 代碼和藝術 / 18

2.2.1 代碼也能成為藝術作品 / 18

2.2.2 軟件工程師和“碼農” / 22

2.2.3 來自藝術的啟發 / 24

2.2.4 寫代碼并非易事 / 26

2.3 好代碼和壞代碼 / 28

2.3.1 好代碼的特性 / 28

2.3.2 壞代碼的例子 / 33

2.4 好代碼從哪里來 / 35

2.4.1 好代碼不止于編碼 / 35

2.4.2 需求分析和系統設計 / 36

2.5 如何做好需求分析 / 41

2.5.1 如何描述需求 / 41

2.5.2 對需求分析的誤解 / 43

2.5.3 需求分析的重要性 / 47

2.6 如何做好系統設計 / 47

2.6.1 什么是系統設計 / 48

2.6.2 設計文檔的分類 / 49

2.6.3 什么是系統架構 / 50

2.6.4 系統設計的原則和方法 / 52

2.6.5 重視對外接口 / 56

2.7 如何寫出好代碼 / 59

2.7.1 代碼的溝通價值 / 59

2.7.2 模塊的設計方法 / 64

2.7.3 劃分模塊的方法 / 71

2.7.4 函數的設計方法 / 75

2.7.5 代碼塊的編寫注意事項 / 85

2.7.6 軟件開發中的命名 / 89

2.8 如何支持系統運營 / 90

2.8.1 可監測性的重要性 / 91

2.8.2 以BFE 開源項目為例 / 92

2.9 成為優秀軟件工程師的三條路徑 / 93

2.9.1 路徑一:學習—思考—實踐 / 93

2.9.2 路徑二:知識—方法—精神 / 96

2.9.3 路徑三:基礎乃治學之根本 / 98

第3 章

代碼評審

3.1 代碼評審的常見誤區 / 103

3.2 為什么要做好代碼評審 / 104

3.2.1 代碼評審的重要意義 / 104

3.2.2 沒有做好代碼評審的后果 / 106

3.2.3 為什么要提升代碼質量 / 106

3.2.4 為什么要提升編碼能力 / 108

3.3 如何做好代碼評審 / 108

3.3.1 代碼評審的常見問題 / 109

3.3.2 代碼評審的正確態度 / 109

3.3.3 代碼評審的推薦步驟 / 111

3.3.4 對壞代碼的簡單判斷 / 112

3.3.5 代碼評審的注意事項 / 113

3.4 如何成為好的代碼評審人 / 116

第4 章

“代碼的藝術”應用

4.1 需求的分析 / 121

4.1.1 題目說明 / 121

4.1.2 功能分析 / 122

4.2 軟件的架構 / 123

4.2.1 模塊切分 / 123

4.2.2 系統架構 / 128

4.2.3 軟件組裝 / 130

4.2.4 crawler 間的數據共用 / 132

4.2.5 數據封裝 / 133

4.2.6 crawler 的執行邏輯 / 134

4.3 多線程機制 / 135

4.3.1 數據互斥訪問 / 136

4.3.2 臨界區注意事項 / 138

4.3.3 任務的分發 / 141

4.3.4 程序的優雅退出 / 143

4.4 其他實現細節 / 146

4.4.1 配置的讀取 / 146

4.4.2 種子信息的讀取 / 147

4.4.3 import 的使用 / 150

4.4.4 異常處理 / 151

4.4.5 構造函數的使用 / 153

4.4.6 正則表達式的使用 / 154

4.5 延伸思考 / 156

4.5.1 實現對各網站的限速 / 156

4.5.2 從單機擴展到分布式 / 157

第5 章

項目文檔

5.1 正確認識項目文檔 / 161

5.1.1 項目文檔的重要作用 / 161

5.1.2 項目文檔的常見誤區 / 162

5.1.3 項目文檔的常見問題 / 164

5.1.4 什么時候需要寫項目文檔 / 165

5.1.5 項目文檔是寫給誰的 / 167

5.1.6 項目文檔的基本規范 / 169

5.2 項目文檔的編寫 / 170

5.2.1 編寫順序 / 170

5.2.2 文檔標題 / 171

5.2.3 段落編寫 / 173

5.2.4 問題劃分 / 176

5.2.5 表述模式 / 177

5.3 項目文檔中的圖片 / 179

5.4 文檔的評審 / 185

5.4.1 文檔評審常見問題 / 185

5.4.2 文檔評審的方法 / 186

5.5 文檔的存放 / 187

5.5.1 文檔存放常見錯誤 / 187

5.5.2 文檔存放的建議 / 188

5.5.3 文檔索引的例子 / 189

5.5.4 存放工具的選擇 / 192

5.6 文檔編寫工具 / 194

5.7 如何提高文檔編寫能力 / 195

第6 章

做研究

6.1 什么是研究 / 199

6.2 如何做好研究 / 201

6.2.1 發現問題 / 201

6.2.2 分析問題 / 203

6.2.3 解決問題 / 205

6.3 做好研究的**素質 / 206

6.3.1 關于做人 / 206

6.3.2 關于做事 / 208

6.3.3 關于做學問 / 209

第7 章

項目管理

7.1 重視項目管理 / 213

7.2 相關基本概念 / 215

7.3 項目管理的過程和步驟 / 218

7.3.1 項目啟動和規劃 / 219

7.3.2 項目執行和監控 / 224

7.3.3 項目總結與回顧 / 227

第8 章

項目溝通

8.1 項目溝通的重要性 / 233

8.2 項目溝通方式及對比 / 235

8.3 面對面溝通 / 238

8.4 電話溝通 / 239

8.5 會議溝通 / 240

8.6 IM 工具溝通 / 245

8.7 Email 溝通 / 247

附錄A

延伸閱讀圖書推薦

軟件工程和編程思想類 / 251

項目管理類 / 252

項目文檔編寫和閱讀類 / 252

產品設計類 / 253


展開全部

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 節選

1.1 為什么要重視工程能力 由于行業內競爭加劇、成本上漲和產業升級等形勢的變化,工程能力受到越來越高的重視。 1. 形勢變化與挑戰 *近幾年,軟件研發企業尤其是互聯網企業正面臨以下形勢的變化和挑戰。 (1)行業競爭的加劇。中國互聯網經過20多年的發展,早已不是荒蠻之地,競爭的需要逼迫各企業在軟件研發的質量和效率上不斷提高。 (2)成本的上漲。中國在研發成本尤其是人力成本方面上漲非常快。中國軟件工程師的人力成本已超過歐洲,和美國的差距也沒有那么大了。在這種情況下,業內對于人均產出提出了更高要求。 (3)產業的升級。中國的互聯網企業普遍從toC轉向toB,而toB對軟件研發的質量提出了更高要求。 2. 如何應對挑戰 面對以上挑戰,一些企業的應對方法是延長工作時間、增加工作強度。部分公司出現了“996”(早9點上班,晚9點下班,每周工作6天)的工作制度。應該說,這些方法給從業者的身體健康和正常生活帶來了嚴重的負面影響,它們也只能是短期行為,不可能被長期執行。 從現實情況來看,其實國內很多軟件工程師的工作效率是比較低的,并有巨大的提升空間。根據筆者多年的訪談反饋,很多軟件工程師已經工作了8~10年,但他們的工作方法其實是錯誤的。在以前人工成本較低、管理方法比較粗放的情況下,這些問題并沒有得到足夠重視。現在中國很多傳統行業在進行轉型升級,因此中國的很多軟件工程師也需要升級了! 提升工程能力,是應對以上變化和挑戰的重要解決之道。 3. 工程能力是制勝之本 在提升工程能力的路上,我們可能會聽到一些不同的聲音。有些人說,手頭的業務很忙,所以沒有時間提升工程能力;有些人說,現在的項目進度已經很緊湊了,按照正規的方法來工作會拖慢進度,所以不能對工程能力有嚴格要求。 從使用不正規的方法到使用正規的方法,一定會有一些學習上的成本投入。更重要的是,工程能力不是錦上添花、可有可無,而是一種生存能力。很多項目的失敗,其實是輸在從業者工程能力的不足上了! 工程能力首先會影響“打的準不準”。如果從業者不能做好需求識別和分析,缺乏產品方面的意識,那么研發出的軟件就沒有市場和用戶。 工程能力還會影響“是否能打贏”。工程能力會影響軟件研發的效率、質量和成本,一個低效率、低質量和成本高的軟件項目是沒有市場競爭力的。 1.2 什么是工程能力 在了解了工程能力的重要性后,本節說明什么是工程能力。 1.2.1 工程能力的誤區 很多人可能會將“提升工程能力”等同于“寫好代碼”。 代碼確實是軟件研發的重要產出,但是工程能力的涉及范圍絕不僅僅限于編寫代碼。 軟件研發是一個需要多人共同參與完成的工作,提升工程能力也不限于“一個人”能力的提升。 工程能力反映的是團隊的綜合素質。要提高工程能力,不僅要看單兵素質,也要看團隊能力;不僅要提升寫代碼的能力,也要提升其他方面的能力(見1.3節中的說明)。 工程,不僅僅應用于自然科學,也應用于人文社會科學。只用自然科學的思路和方法來做工程,一定做不好。 在軟件研發過程中,很多從業者的大量時間其實并沒有用在琢磨技術上,而是用在了其他方面(比如溝通、項目協調、錯誤設計導致的返工),這些方面的時間消耗往往也沒有得到大家的關注。很多項目的失敗并不是因為技術,而是因為那些非技術的因素。 1.2.2 工程能力的定義 前面介紹了工程能力的重要性,但是我在這里認真地問一句“工程能力到底是什么?”恐怕沒有幾個人能回答出來,而如果不解答這個問題,我們是無法在實踐中真正提升工程能力的。 在百度內部材料《百度軟件工程能力定義》中,將工程能力定義為:使用系統化的方法,在保證質量的前提下,更高效率地為客戶/用戶持續交付有價值的軟件或服務的能力。

代碼的藝術:用工程思維驅動軟件開發(必讀經典簡裝本) 作者簡介

章淼,博士,百度智能云資深研發工程師,BFE開源項目發起人。 1997年至2006年在清華大學從事互聯網協議和網絡體系結構的研究。 2012年加入百度,一直從事網絡基礎架構的研發工作。同時積極推動百度的代碼質量和工程能力的提升,百度技術培訓中心“金牌講師”,曾任百度代碼規范委員會主席。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 宜兴紫砂壶知识分享 - 宜兴壶人 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 耳模扫描仪-定制耳机设计软件-DLP打印机-asiga打印机-fitshape「飞特西普」 | 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 垃圾清运公司_环卫保洁公司_市政道路保洁公司-华富环境 | 运动木地板价格,篮球馆体育运动木地板生产厂家_欧氏地板 | 开平机_纵剪机厂家_开平机生产厂家|诚信互赢-泰安瑞烨精工机械制造有限公司 | 礼至家居-全屋定制家具_一站式全屋整装_免费量房设计报价 | 报警器_家用防盗报警器_烟雾报警器_燃气报警器_防盗报警系统厂家-深圳市刻锐智能科技有限公司 | 气动机械手-搬运机械手-气动助力机械手-山东精瑞自动化设备有限公司 | 产业规划_产业园区规划-产业投资选址及规划招商托管一体化服务商-中机院产业园区规划网 | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 彩超机-黑白B超机-便携兽用B超机-多普勒彩超机价格「大为彩超」厂家 | 食品无尘净化车间,食品罐装净化车间,净化车间配套风淋室-青岛旭恒洁净技术有限公司 | 小程序开发公司-小程序制作-微信小程序开发-小程序定制-咏熠软件 | 隔爆型防爆端子分线箱_防爆空气开关箱|依客思| 厌氧工作站-通用型厌氧工作站-上海胜秋科学仪器有限公司 | 学叉车培训|叉车证报名|叉车查询|叉车证怎么考-工程机械培训网 | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 深圳高新投三江工业消防解决方案提供厂家_服务商_园区智慧消防_储能消防解决方案服务商_高新投三江 | 全自动烧卖机厂家_饺子机_烧麦机价格_小笼汤包机_宁波江北阜欣食品机械有限公司 | 挤出熔体泵_高温熔体泵_熔体出料泵_郑州海科熔体泵有限公司 | 亿诺千企网-企业核心产品贸易 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 【365公司转让网】公司求购|转让|资质买卖_股权转让交易平台 | 生物除臭剂-除味剂-植物-污水除臭剂厂家-携葵环保有限公司 | 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 3D全息投影_地面互动投影_360度立体投影_水幕灯光秀 | 广东银虎 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | 华夏医界网_民营医疗产业信息平台_民营医院营销管理培训 | 临海涌泉蜜桔官网|涌泉蜜桔微商批发代理|涌泉蜜桔供应链|涌泉蜜桔一件代发 | 承插管件_不锈钢承插管件_锻钢高压管件-温州科正阀门管件有限公司 | 武汉森源蓝天环境科技工程有限公司-为环境污染治理提供协同解决方案 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 柔性输送线|柔性链板|齿形链-上海赫勒输送设备有限公司首页[输送机] | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 磁力抛光机_磁力研磨机_磁力去毛刺机-冠古设备厂家|维修|租赁【官网】 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 |