建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
092947bevjlmiytnwwd8ky.jpg 云上开发精选优惠 云上优选 特惠来袭
标签
您还可以添加5个标签
  • 没有搜索到和“关键字”相关的标签
  • 云产品
  • 解决方案
  • 技术领域
  • 通用技术
  • 平台功能
取消

7号小助手

发帖: 36粉丝: 149

级别 : 版主

发消息 + 关注

发表于2020年07月02日 18:09:32 5439 215
直达本楼层的链接
楼主
显示全部楼层
[云享读书会] 【活动已结束】【第七期】读书笔记征集《程序员修炼之道:通向务实的最高境界》


奖项公示请见https://bbs.huaweicloud.com/forum/thread-70723-1-1.html


—————————————————————————————————————————————————————————


开发者,你好哟~

华为云 · 云享读书会 第7期 它来了 它来了


本期领读书籍为程序员必读经典《程序员修炼之道:通向务实的最高境界》(第2版)

华为云资深架构师——董老师 现身领读,带你精读这本颠覆了无数程序员软件生涯的大作!!!


经过董老师的视频领读,如果你有相关知识收获,欢迎在此帖留下你的读书笔记~



01. 

征集时间

2020.08.03 - 2020.08.10


02. 

读书笔记要求


1. 每篇读书笔记字数要求≥300字;

2. 内容要求与每日领读视频、《程序员修炼之道》书籍或是华为云产品优化意见相关;

3. 内容原创不可抄袭;

4. 回帖时请务必留下你的微信昵称和华为云账号。


03. 

注意事项


1. 读书笔记提交后,小助手会在3个工作日内按续完成审核,并增加活动积分100分/篇

2. 本次活动通过提交读书笔记,可获得的积分上限为500分

3. 请务必按照上述要求提交内容,以免影响积分增加;

4. 若积分值相同则以完成学习任务的时间先后排序,其中任务完成时间的判定优先级为:结业实践>读书笔记>自测题>其他;

5. 其他积分获取方式请查看活动社群公告;

6. 其他未说明事项请参照 云享读书会《程序员修炼之道》



04. 

最佳读书笔记奖励

领读专家将在活动时间内提交的有效读书笔记中,评选出3篇最佳读书笔记(每人限领一次),奖励撰写人:

image.png

05. 

活动排行奖励

image.png


06. 

关于云享读书会


每期云享读书会活动,会选取一本技术相关的畅销书籍,由原作者/行业专家提炼书籍精华,在读书会的专属微信社群中,每日输出精华知识的领读视频,帮助大家快速积累专业知识。活动期间会设置每日自测题、结业实践任务、提交读书笔记三种积分获取任务,并根据活动结束后的积分排行发放活动奖励。


举报
分享

分享文章到朋友圈

分享文章到微博

大象比字长

发帖: 0粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 10:52:10
直达本楼层的链接
沙发
显示全部楼层

华为云账号:hw07606522

微信昵称:salad

微信账号:sela001


                                                 程序员修炼之道:通向务实的最高境界- 软件编程哲学 day1


今天观看董老师的读书分享,主题是 软件编程哲学,特别有收获,尤其是看到 我的源码被猫吃掉这句话,我们实际项目开发过程中,是一个团队协作的过程,很多人遇见问题时总是甩锅,把自己的问题归结为其他人的问题,永远不从自身找原因,当碰见这种队友时,会让整个团队的氛围变得特别差,影响整个团队,最终导致的就是影响项目。所以我们要从自身做起,用于承担,敢于为结果负责,出现问题,首先分析自己的问题,承担责任,积极主动的去解决问题,给出解决问题的方案,让领导 同事去做选择题,这样我们处理问题的速度就会很快,通过自身来影响身边的同事  队友,来逐步影响这个团队,让大家都明白这个道理,这样我们整个团队不管是 氛围还是进度都会很好,通过第一天的学习,结合自己实际的项目工作,收获巨大,理论和实践相结合,才是进步最快的方法。


点赞 评论 引用 举报

云水不言

发帖: 0粉丝: 1

级别 : 注册会员

发消息 + 关注

发表于2020年08月03日 10:53:03
直达本楼层的链接
板凳
显示全部楼层

程序员修炼之道day1读书笔记

华为云账号:yun1025933139

微信昵称:云水不言

day1的课程内容为务实的哲学15条原则

  1. 人生是你的

    人生是自己的,自己选择,自己对自己负责。

  2. 我的源码被猫吃了

    提供可供解决问题的选择,而不是去寻找借口。

  3. 软件的熵

    不要放任破窗(技术债包括不好的设计,错误的决策,糟糕的代码),遇到问题马上解决,不要放任问题变大,产生更多关联的问题。

  4. 石头做的汤和煮熟的青蛙

    把握全局,察觉变化和趋势,不要沉浸于细枝末节。

  5. 够好即可的软件

    需求是变化的,不要过度设计和过度开发。以用户的真实需求为开发目标。

  6. 知识组合

    不要局限于某一种语言,某一种技术,某一种架构,要开放持续的学习,吸收各种可以解决问题的技术。

  7. 交流

    有效的沟通交流可以务实的理解需求和开发目标。

  8. 优秀设计的精髓

    ETC,设计要是弹性的设计,可以随时适应业务变化而变更。开发是为业务服务的。

  9. DRY错误的重复

    需求和描述都要清晰无歧义。不会造成理解偏差。

  10. 正交性

    正交性有点类似微服务,模块化。就是尽可能的弱耦合,减少依赖。

  11. 可逆性

    所有的决定要适应变化,不是一成不变不能更改的。类似第8条。

  12. 曳光弹

    通往目标的过程中,不断设置路标,避免设计跑偏。

  13. 原型与便签

    原型用来学习经验,把握全局,不要纠结于技术的细枝末节。

  14. 领域语

    用领域内的专业的语言术语来做设计和编程。

  15. 估算

    通过估算,提前发现潜在的问题。然后迭代的过程中不断的修正估算。

点赞 评论 引用 举报

张辉

发帖: 19粉丝: 3

级别 : 高级会员

发消息 + 关注

发表于2020年08月03日 13:30:56
直达本楼层的链接
地板
显示全部楼层

华为云ID:zhanghui_china

微信ID:zhanghui_china

读书笔记Day01:软件编程的哲学


老师讲座一开始提了另一本名著:黑客与画家。(翻译者叫阮一峰,也是鼎鼎大名)

image.png

进入正题,

Part1: 务实的哲学(8条)

P1:有权选择自己的人生

P2:别找借口,说说如何解决问题

P3:及时纠正问题。别放任问题扩大。(熵)

P4:温水青蛙:时刻洞察周边的变化。

石头做的清汤:做推动变革的催化剂

P5:软件够好即可。不需要面面俱到。让用户确认需求。

P6:对知识(技术)做组合投资。多学习。不能只学一种。定期投资。多样化。风险管理和评估等。

P7:将英语作为另一门编程语言。需要交流。需要嵌入文档。

P8:设计的ETC原则:容易变更Easy to change。设计中要考虑适应变更。


Part2: 务实的方法(7条)

P9 不要重复自己。软件要复用。

P10:正交性(弱耦合):消除不相关事务之间的影响

组件化设置。独立自主。微服务概念。消除不必要的依赖和关联。

P11:可逆性:需要留后路,备选方案。寻找被替代的方案。避免推到重来。选中固定的数据库,技术等,可能会导致无法回退。

P12:曳光弹。通过曳光弹引导来找到目标。通过敏捷迭代去不断的寻找目标。寻找适合用户的方式。

P13:通过制作原型设计来表达清楚业务逻辑。通过交流,减少以后开发的风险。以便使得软件更满足客户需求。

P14:领域语言。需要使用领域问题进行编程。

P15:做评估防止意外。开始前评估,实施过程中也不断地评估。


Part3:总结

本次讲座从设计角度阐述了本书的15条原则。


今天还有幸发现了在《GOT》APP上王木头老师对这本书的领读。两边相互印证也蛮有意思的。不过对于王木头提到的一些内容,我个人可能不是很认可。先等着全部听完后,可能再写个读后感吧。

(本日读书笔记完)


点赞 评论 引用 举报

cl4690

发帖: 0粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 15:41:35
直达本楼层的链接
5#
显示全部楼层

《程序员修炼之道:通向务实的最高境界》day1读书笔记

华为云账号:cl4690

微信昵称:禄仁恝


    第一次体验视频领读这种方式来读书, 感觉蛮新鲜的, 哈哈.

    今天的主题是《软件编程哲学》, 老师主要讲述了2大块, 即务实的哲学和务实的方法. 我的关

注点可能有点不同, 放在了务实这个修饰词上. 通过这2个标题我就明白了这个是需要脚踏实地的去

实践.因为不管是哲学还是方法, 在我的理解都属于方法论, 是对行为起指导作用, 甚至是对结果起

标杆作用. ok, 让我记录下老师讲的15点理论指导吧.

1.人生是你的 2.我的源码被猫吃了 3.软件的熵 4.石头做的汤和煮熟的青蛙 5.够好即可的软件

6.知识组合 7.交流 8.优秀设计的精髓 9.DRY错误的重复 10.正交性 11.可逆性 12.曳光弹 

13.原型与便签 14.领域语 15.估算

    通过老师的领读, 直接get到关键点. 我发现其中有些就是生活中遇到的, 只是没有总结, 所以

指导思想很重要啊. 比如:人生是你的->为自己而活, 对自己负责; 我的源码被猫吃了->不找借口;

软件的熵->知错就改,及时止损等等. 在这些中我最有体会的是交流和DRY错误的重复. 因为工作中

我发现沟通可以解决大概70%的需求问题, 因为多数情况开发难以进行就是需求沟通不明确造成的. 

DRY错误的重复是我在学习别的内容时遇到的: 软件开发有个非常流行的原则,叫做不要重复自己

(Don’t Repeat Yourself), 瞬间我才明白了DRY是缩写啊. 其他的指导思想对我来说可能接触的

不是那么深, 但也重要. 慢慢在工作中悟吧.

点赞 评论 引用 举报

Easy Redmine

发帖: 9粉丝: 3

级别 : 注册会员

发消息 + 关注

发表于2020年08月03日 16:14:12
直达本楼层的链接
6#
显示全部楼层

《程序员修炼之道》读书笔记Day1——编程软件的认知


微信昵称: 龙波
华为云账号: cuilongbo

今天老师站在设计的视角,从软件务实的哲学和务实的方法两方面讲述了《程序员修炼之道的》中的15 条原则:


1. 人生是你的——你有权选择

人生是自己的,把握住人生,让它如你所愿。

2. 我的源码被猫吃了——提供选择,别找借口

提供选择而不是去找理由,不要只说做不到,解释一下都能做些什么。

3. 软件的熵——不要放任破窗

只要看到不好的设计、错误的决策、糟糕的代码就赶紧去纠正。

各行各业的原则都有相通之处,听完课重温了一下华为大学编著的《熵减:华为活力之源》,愈发感觉要保持健康,就要努力对抗熵增。
image.png

4. 石头做的汤和煮熟的青蛙——做推动变革的催化剂、牢记全景

你无法强迫人们去改变但可以展示美好未来,并帮助他们参与创造。不要过度沉漫于细枝末节,以免察觉不到周围正在发生的事情。

5. 够好即可的软件——将质量要求视为需求问题

让用户参与对项目真实质量需求的确定。

6. 知识组合——养成学习的习惯,对知识组合做定期投资、批判性地分析你读到和听到的东西

不要受供应商、媒体炒作或教条的影响,根据自身和项目的实际情况来分析信息。

7. 交流——英语就是另一门编程语言、说什么和怎么说同样重要、把文档嵌进去,而不要栓在表面

将英语视作一门编程语言。写文档和编程一样要遵循DRY原则、ETC、自动化等。如果无法有效交流,任何伟大的想法都是没有意义的。与代码隔离的文档很难保持正确并及时更新。

8. 优秀设计的精髓——优秀的设计比糟糕的设计更容易变更

适合使用者的事物,都已经过良好设计。对代码来说这意味着必须适应变化。

9. DON'T REPEAT YOURSELF——让复用变得更容易

系统中的每一条知识都必须有单一且无歧义的权威陈述。只要复用方便,人们就会去做。创建一个支持复用的环境。

10. 正交性——消除不相关事物之间的影响

设计的组件,需要自成一体、独立自主,有单一的清晰定义的意图。

11. 可逆性——不设最终决定,要有替代方案、放弃追逐时尚

不要把决定刻在石头上,而要将其视为写在沙滩上的东西,时刻准备应变。尼尔福特说过: "昨日之最佳实践即明日之反模式。" 要基于基本原则去选择架构,而不盲从于流行。

12. 曳光弹——使用曳光弹找到目标

通过不断尝试并看清着弹点,曳光弹可确保你最终击中目标。

13. 原型与便签——用原型学习

制作原型旨在学习经验其价值不在于过程中产生的代码,而在于得到的教训。

14. 领域语——靠近问题域编程

用问题领域的语言来做设计和编程。

15. 估算——通过估算来避免意外、根据代码不断迭代进度表

开始之前做估算,能提前发现潜在问题。利用实施过程中获得的经验来精细化项目的时间尺度。

点赞 评论 引用 举报

发帖: 49粉丝: 3

级别 : 外部版主

发消息 + 关注

发表于2020年08月03日 16:50:02
直达本楼层的链接
7#
显示全部楼层

Day 01 程序员修炼之道

华为云账号:be_dao

微信名:bēdao

day 01 软件编程哲学

1.务实的哲学

8点

(1)人生是你的

你有权选择

人生是自己的。把握住人生,让他如你所愿。

 

(2)我的源码被猫吃了

提供选择,别选择接口

提供选择而不是找理由。不要只说做不到;解释依稀都能做到些什么。

 

(3)软件的熵

不要放弃破窗

只要看到不好的设计、错误的决策、糟糕的代码,就赶紧去纠正。

 

(4) 石头做的汤和煮熟的青蛙

做推动变革的催化剂

你无法强迫人们去改变,但可以展示美好未来,并帮助他们参与创造。

⚠️警告:牢记全景

不要孤独沉漫于细枝末节,以免观察不到周围正在发生的事情

 

(5) 做好即可的软件

将质量要求市委需求问题

让用户参与项目真实质量需求的确定

 

(6)知识组合

对知识组合做定期的投资

养成学习的习惯

判断性地分析你读到和听到的东西

不要受提供商、媒体操作或教条的影响,根据自身和项目的实际情况来分析信息。

 

(7)交流

英语就是另一门编程语言

将英语视作一门编程语言。写文档和编程一样遵循DRY原则、ETC、自动化等。

说什么和怎么说同样重要

如果无法有效交流,任何伟大的想法都是没意义的。

把文档嵌进去,而不要栓在表面

与代码隔离的文档,很难保持正确并及时更新。

 

(8)优秀设计的精髓

优秀的设计比糟糕的设计更容易变更

适合使用者的事务,都已经良好设计。对代码来说,这意味着必须适应变化。

 

(9)DRY的重复

DRY不要重复自己

系统中的每一条知识,都必须有单一且无歧义的权威陈述。

 

让服用变得更容易

只要复用方便,人们就会去做。创建一个支持复用的环境。

(10)正交性

消除不相关事务之间的关系

设计的组件,需要自成一体、独立自主,有单一的清晰定义的意图

 

(11)可逆性

不设最终决定

不要吧决定可在石头上,而要讲其视为写在沙滩上的东西,时刻准备应变。

 

(12)曳(ye)光弹

使用曳光弹找到目标

通过不断尝试并看清看弹点,曳光弹课确保你最终击中目标。

 

(13)原型与便签

用原型学习

制作原型旨在学习经验,其价值不在与过程中产生的代码,而在于得到的教训。

 

(14)领域语

靠近问题域编程

用问题领域的语言来做设计和编程

 

(15)估算

通过估算来避免意外

开始之前做估算,能提前发现潜在问题。

 

根据代码不断迭代精度表

利用实施过程中获得的经验来精细化项目的时间尺度。


点赞 评论 引用 举报

power11

发帖: 0粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 17:43:13
直达本楼层的链接
8#
显示全部楼层

微信昵称:power

华为云账号:power11

《程序员修炼之道:通向务实的最高境界》——读书笔记Day01:务实的哲学与方法

      通过今天老师的领读可以了解一名优秀程序员应该具备的素质和习惯。

     具体收获有哪些呢?

1、学会自己选择,选择适合自己的很重要

2、不要给自己找借口,要学会从自己身上找出缺点然后加以改正

3、不要放任错误,遇到错误就要马上改正,否则会造成更麻烦的后果

4、学会适应环境,不仅要注意细节,也要关注周围的变化

5、软件要满足用户需求即可,不要过多的赘余

6、不断学习(学习多种语言),

7、学会交流,英语是打开交流市场的大门

8、优秀设计软件要容易变更,要留有一定的空间

9、避免重复的copy,防止成片修改

10、有清晰的思路,有独立性,不要混乱,实现代码间的模块化

11、有备份(没有备份出错可能要重新去做非常麻烦),出现错误可以快速从最近项目继续完成下去

12、往用户需求方面思考设计

13、先做模型设计,有核心向四周扩展,来不断完善自己的项目

14、对领域语言的理解 ,方便灵活设计

15、有时需要估算需求是否满足用户需求及自己的工作量

点赞 评论 引用 举报

帕特里克

发帖: 0粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 19:49:23
直达本楼层的链接
9#
显示全部楼层

程序员修炼之道 day1读书笔记

华为云账号:hw78321662

微信昵称:帕特里克


《程序员修炼之道:通向务实的最高境界》这本书第一版买过,个人感觉写的非常好,还推荐给许多朋友,这次看到第二版,又有老师领读,就加入进来,认真学习

今天第一天,老师站在设计的角度,从软件务实的哲学和务实的方法两个方面讲述了15条原则

        务实的哲学:

1.       人生是你的 你有权选择

2.       我的源码被猫吃了 提供选择,别找借口

3.       软件的熵 不要放任破窗

4.       石头做的汤和煮熟的青蛙 a. 做推动变革的催化剂 b. 牢记全景

5.       够好即可的软件(将质量要求视为需求问题

6.       知识组合 a. 对知识组合做定期投资b. 批判性地分析你读到和听到的东西

7.       交流 a. 英语就是另一门编程语言b. 说什么和怎么说同样重要 c. 把文档嵌进去,而不要栓在表面

8.       优秀设计的精髓 优秀的设计比糟糕的设计更容易变更

务实的方法:

9.       DRY错误的重复 a.不要重复自己b. 让复用变得更容易

10.   正交性(消除不相关事物之间的影响)

11.   可逆性 a. 不设最终决定b. 放弃追逐时尚

12.   曳光弹 使用曳光弹找到目标

13.   原型与便签 用原型学习

14.   领域语 (靠近问题域编程)

15.   估算(a. 通过估算来避免意外b. 根据代码不断迭代进度表

听后很多都很契合实际的工作,包括精益敏捷,用户故事,迭代开发,团队合作,高内聚,低耦合,最小化可行产品,学习型组织……. 很多东西值得细细体味,深入思考




点赞 评论 引用 举报

与代码共舞

发帖: 0粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 20:43:10
直达本楼层的链接
10#
显示全部楼层

华为云账号:hw04954090

微信昵称:Mr


务实的哲学:

1.      人生是你的:可选择性比较大,把我自己的方向,面临一系列问题,有自己的选择权

 

2.      我的源码被猫吃了:产生问题,要从自己考虑,重要的是去解决,而不是去推卸

 

3.      软件的熵:软件的技术债,一扇破窗---不去修理,一步步恶化,最终导致全局失败,减少软件的技术债

 

4.      石头做的汤和煮熟的青蛙:煮熟的青蛙----时刻去洞察周围的动态,防止被慢慢同化,石头做的汤----推动变革的催化剂

 

5.      够好即可的软件:无法把软件的方方面面都做好,重点在于能够满足客户的实际需求

 

6.      知识组合:软件涉及到方方面面的东西,我们需要做一些组合投资,融会贯通一些新的知识

 

7.      交流:沟通交流,使得开发进程能得到良性的循环

 

8.      优秀设计的精髓:ETC---easy to change,更容易变更设计和开发时,流程能够可变化

 

 

软件务实的方法:

9.      DRY evil repetition:一些重复的部分,可维护性,循环实现,避免复制

 

10.   正交性:设计软件的时候能够独立自主,消除软件之间一些不必要的依赖和关联

 

11.   可逆性:做软件时,一定要有可替代的方案,可以走回去


12.   曳光弹:引领方向,软件的不断变化,寻找符合用户价值的软件

 

13.   原型和便签:原型设计,基于原型的开发,就是有可模拟的实体

 

14.   领域语:不同领域的不同的编程语言

 

15.   估算:评估需求、代码的可用性、项目的进度等,作为程序员能力的一部分,对项目有一个总体的把握

 

感悟:

       今天学习了软件编程的哲学,这里就做一个小结,作为自己的主要收获。虽然自己还是一个小白,但仍会努力去不断的学习。

       每个人都有自己选择的权力,就像我们选择了学习计算机行业作为一名程序员,并在今天学习《程序员修炼之道》这个课程的领读。在之后的学习中我们可能会与别人合作去完成一些项目,当出现问题时,我们应首先考虑自己在哪里出了问题,然后和大家交流协商,来共同解决这个问题。在做项目的时候,一旦我们发现了一些程序漏洞问题,一定要及时去解决,而不是拖延。单单努力有时候是不够的,我们还需要努力去观察行业动态,不断的调整方向,去学习一些新的东西并融合自己已有的学识。

       一个优秀的软件不是因为它是完美无缺的,而是因为能够真正的满足客户的需求,有可容易变更的结构,时序性高,可逆性强,也能够不断的发展变化。优秀的软件也不是一蹴而就的,它是在原型的基础上不断的发展演变。

       最后作为一个程序员,我们需要具有估算的能力,学会去评估需求、代码的可用性、能够整体把握项目的进度等。总之,路漫漫其修远兮,吾将上下而求索。


点赞 评论 引用 举报

起名字什么的最烦了

发帖: 2粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年08月03日 20:57:36
直达本楼层的链接
11#
显示全部楼层

微信昵称:七七先生

华为云昵称:hw75404137

image.png

程序员修炼之道


Day1:软件编程哲学


务实的哲学


1、人生是你的


选择自己的人生,对每次选择负责


2、我的源码被猫吃了


碰到问题怎么办?别找借口,尽自己的力去解决问题


3、软件的熵


看到不好的设计、错误的决策、糟糕的代码,就赶紧去纠正


千里之堤毁于蚁穴,只要看到bug就去修复,不要犹豫


4、石头做的汤和煮熟的青蛙


多关注周围的变化、新技术,不要仅仅局限于眼前的事情


改变自己,然后改变别人


5、够好即可的软件


让用户参与对项目质量需求的确定


将质量要求视为我们的需求


6、知识组合


养成终身学习的习惯


根据自身和项目的事迹情况来确定自己应该学什么,干什么


7、交流


如果不和别人沟通交流,任何伟大的想法都是没有意义的


多深入理解,不要仅仅停留在表面


8、优秀设计的精髓


让你的设计更容易变更(ETC)


我们的代码必须适应着时代的变化


务实的方法


9、DRY**的重复


不要重复自己,系统中的每一条知识,都必须单一且没有歧义


避免重复的拷贝


10、正交性


消除不相关事务之间的影响


设计软件的时候,要自称一体,尽量有自己单一的定义,消除不必要的关联


11、可逆性


要准备后门,应对随时会发生的改变


要基于原则去选择架构,而不是盲于流行


12、曳光弹


通过曳光弹来尝试着寻找我们的目标和最优的方法


13、原型和便签


制作原型的设计,将业务的逻辑理清楚,以此来降低软件后面开发的风险


14、领域语


用领域的语言来做设计和编程


15、估算


整个软件都在不断的评估中


开始之前,评估意外风险


建模时评估


代码编写时不断评估迭代进度表


点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册