• 学习笔记之三十年软件开发之路


    三十年软件开发之路


    • 软件开发
      • 先明确问题,再开始写代码
      • 将步骤写为注释
      • Gherkin是帮助你了解期望(expectation)的好帮手
      • 单元测试很好,集成测试更好
      • 测试可以让API更好
      • 做你知道如何在命令行上运行的测试
      • 时刻准备好扔掉你的代码
      • 好的语言生来带有综合测试
      • 未来思路是垃圾思路
      • 文档是写给未来自己的情书
      • 功能文档是份合同
      • 如果一个函数的描述包含“和”,这就是不对的
      • 不要使用布尔型变量作为参数
      • 注意界面的变化
      • 好的语言自带集成的文档
      • 一门语言绝不仅仅是一门语言而已
      • 有时候,宁愿让应用程序崩溃也不要什么都不做
      • 如果你知道如何处理该问题,那么就处理它
      • 类型决定你的数据是个什么东西
      • 如果你的数据具有模式(schema),请使用结构(structure)来保留它
      • 理解并保持cargo cult的方式
      • 不要管所谓的“合适的生产力工具”,你只需要尽力去push进程
      • “正确的工具”比你想象的更明显
      • 不要跟你项目之外的事情纠缠
      • 数据流动比模式更重要
      • 设计模式是用来描述解决方案的,但它不能找到解决方案
      • 学习函数式编程的基础知识
      • 认知成本是可读性的杀手
      • Magical Number 7 ,正负二(7+-2的范围内)
      • 走捷径挺nice的,但只是在短期内如此
      • 抵制“轻松”的诱惑
      • 总是在你的日期中使用时区
      • 总是使用UTF-8
      • 从笨办法开始
      • 日志用于事件,而不是用户界面
      • Debugger们被高估了
      • 始终使用版本控制系统
      • 每次提交一个更改
      • 当你过度交换时,“git add -p”是你的朋友
      • 按数据/类型组织项目,而不是功能
      • 创建库
      • 学会监控
      • config文件是个好东西
      • 命令行选项很奇怪,但很有帮助
      • 不仅仅是功能组成,还有应用程序组成
      • 即使是做APP,也要从原始的东西开始
      • 优化是面向编译器的
      • 通过懒惰(评估)
    • 在团队/工作上
      • code review并不是为了彰显风格
      • 代码格式化工具还可以,但它们也不是无往不胜的
      • 代码风格:遵循它就是了
      • ...除非代码样式是Google Code样式
      • C / C ++只有一种编码风格:K&R
      • Python只有一种编码风格:PEP8
      • 显式优于隐式
      • 公司想要专才,但全才在公司待的时间更长
      • 心中有用户
      • 处理用户数据的最佳安全方法是压根不捕获它
      • 记下来那些“让我花了一个多小时才解决的愚蠢失误”
      • 如果它无法在你的计算机上运行,那么你就有麻烦了
    • 个人生活
      • 该停下来的时候,就停下来吧
      • CoC保护的是你,而不是别人
      • 学会说不
      • 你负责你代码的使用
      • 当还没完成时,不要说“已经完成了”
      • 你将从痛苦中了解你自身
      • 人们之所以会对代码/架构感到生气/烦恼,是出于关心
      • 从你的烦恼中学习
      • 注意人们对你的反应
      • 学会识别那些人格有毒的人,并远离他们
      • 谨防微观侵略
      • 不,我不认为这样的人是“会改正的”
      • 只有当你意识到自己是那类有毒的人/微侵略者时,才有可能自己改正
      • 英雄项目:总有一天你必须做的事情
      • 不要混淆“英雄项目”与“英雄综合症”
      • 知道何时该果断辞职
      • IT世界是一个非常小的“蛋”
      • 纸质笔记实际上很有帮助
      • Trello非常酷,但Post-it更好
      • 在博客中记录你笨手笨脚的解决方案仍然比什么都不写要好
      • ...但请关闭评论
      • 把你的笨手笨脚的解决方案发布到网上
      • 列出“我不知道的事情”
  • 相关阅读:
    监听器
    过滤器
    连接池与分页
    jdbc优化
    jdbc入门
    web开发mysql基础
    自定义标签
    jsp基础
    会话管理入门
    19. Remove Nth Node From End of List C++删除链表的倒数第N个节点
  • 原文地址:https://www.cnblogs.com/pegasus923/p/11300983.html
Copyright © 2020-2023  润新知