zoukankan      html  css  js  c++  java
  • 「程序员修炼之道」【更新中】笔记

    自我修养:

    1. 频繁的高强度的外部刺激(项目)和自主意识(自身训练)的反复提醒是加速知识内化的两个途径,应该通过实践获得知识。
    2. 关心自己的技艺
    3. 思考关于自己的工作
    4. 注重实效的程序员有的特征:承认自己的错误,并为其负责,不去找接口,找到错误原因,想出什么能挽回局面。承认自己的错误,并为其负责,不去找接口,找到错误原因,想出什么能挽回局面。
      1. 早期采纳者:有技术直觉,很快就能把握它
      2. 好奇:想知道是怎么做到的
      3. 批判的思考
      4. 有现实感:会设法理解每个问题的本质,事情有多困难,需要多长时间等
      5. 多才多艺:不止会一方面的技术
    5. 承认自己的错误,并为其负责,不去找接口,找到错误原因,想出什么能挽回局面。
    6. 不要容忍破窗户(低质量的代码)存在,应当及时修正,否则根据破窗理论,代码会越来越烂。
    7. 每个人都会捍卫自己的资源,导致项目启动难,称为“启动杂役”。这时,应充当改变的催化剂。同时,应当记住大图景,而不是自身的一点内容。
    8. 使软件质量成为一个需求问题,不应该永不止境的关注细节,因为会耗费大量精力。并且,代码不可能完美。
    9. 知识资产随着新技术、语言、环境的出现,知识可能会变得过时,应当经营自己的知识资产:
      1. 定期学习新知识
      2. 多元化:掌握的不同知识越多,就越有价值,同时可抗因为技术变化带来的过时风险
      3. 管理风险:不要只掌握一个技术
      4. 低买高卖:新技术可能会被低估,但是如果是流行技术的最先采用者,可能带来回报
      5. 重新评估和平衡:不断的更新学习计划,顺应技术变化
    10. 定期为自己的技术投资,保证持续学习:
      1. 学习一种新语言
      2. 阅读一本技术书籍
      3. 阅读非技术书籍
      4. 寻找有趣的课程并上课
      5. 参加技术会议
      6. 实验不同的软件环境
      7. 跟上技术潮流
      8. 通过网络学习
    11. 提问:
      1. 确切的知道自己想要问什么
      2. 小心的组织自己的问题,记住自己在求助,不是要求别人回答
      3. 组织好问题后,通过搜索进行问题答案寻找
      4. 决定在什么场合提问
      5. 耐心等待,并感恩。
    12. 交流
      1. 了解听众需要什么?
        1. 你想让他们学到什么?
        2. 对你讲的什么感兴趣?
        3. 他们有多富有经验?
        4. 他们想要多少细节?
        5. 你想要谁拥有这些信息?
        6. 如何促使他们听你说话?
      2. 方式:
        1. 选择交流时机
        2. 选择风格
        3. 让文档美观
        4. 让听众参与
        5. 做倾听者
      3. 回复他人

    代码:

    1. DRY:不要重复自己,让复用变得容易
      1. 强加的重复:不能避免的重复
      2. 无意义重复:有的属性可以通过计算得到,不应重复,一定要重复
      3. 无耐心的重复:对代码进行拷贝修改式的复用
      4. 开发者间的重复:不同团队对一段代码的多次编写
    2. 正交性:两部分解耦,变化不应依赖于另一部分。可撤销性:不存在最终决策。思考代码里哪里会变更,写得低耦合,方便对底层组件进行更换。
      1. 引入工具和库时,思考会不会引起当前代码发生变动。
      2. 编码:
        1. 让你的代码保持解耦
        2. 避免使用全局数据
        3. 避免写相似的函数
    3. 可撤销性:不存在最终决策。思考代码里哪里会变更,写得低耦合,方便对底层组件进行更换
    4. 曳光弹:先用曳光弹找到目标。即编写代码,看代码是否能完成目标。曳光弹可以给客户展示沟通,同时搭建了一个可在里面工作的架构。原型是用过就扔的代码,曳光弹可成为代码的一部分。

    团队:

  • 相关阅读:
    codewars sum of pairs
    codewars贪吃蛇算法题目
    记录一道有意思的js题目
    JS判断变量类型
    mock之初体验
    three.js尝试(二)模拟游戏开发:3D人物在地图上行走
    three.js尝试(一)模拟演唱会效果
    Vue中父组件使用子组件的emit事件,获取emit事件传出的值并添加父组件额外的参数进行操作
    网易前端工程师课程中,布局解决方案
    js飘窗
  • 原文地址:https://www.cnblogs.com/tomoka/p/12272019.html
Copyright © 2011-2022 走看看