算法第一章作业

  1. Google 编码规范
    适用范围:覆盖 C++、Java、Python、Go 等主流语言,开源且被广泛参考
    核心特点:
    命名:C++/Java 类名用PascalCase,函数 / 变量用snake_case(Python)或camelCase(Java)
    格式:缩进用 2 空格,每行不超过 80 字符,括号位置严格固定(如 C++ 左括号不换行)
    注释:要求 “解释为什么做,而非做了什么”,复杂逻辑必须有 “非 obvious 说明”
    禁忌:禁止使用全局变量,禁止函数参数超过 5 个(需用结构体封装)
  2. 阿里巴巴 Java 开发手册
    适用场景:针对 Java 后端业务系统,结合国内业务特点(如电商、支付)定制
    核心特点:
    命名:POJO 类名用PascalCase,方法用camelCase,常量全大写 + 下划线(如MAX_ORDER_AMOUNT)
    异常处理:禁止捕获Exception基类,必须捕获具体异常;禁止在循环中创建对象(如new String())
    数据库:表名、字段名必须用小写 + 下划线,禁止使用关键字(如order);索引命名格式固定(如idx_字段名)
    工程结构:严格规定包名层次(如com.aliyun.business.module.feature),禁止跨模块调用私有方法
  3. 华为 C/C++ 编码规范
    适用场景:面向嵌入式、通信等高性能场景,强调代码效率和稳定性
    核心特点:
    内存管理:禁止使用malloc/free,必须用封装的内存池接口(便于监控和泄漏检测)
    类型安全:禁止隐式类型转换(如int转unsigned int必须显式声明)
    宏定义:禁止在宏中使用复杂表达式,必须加括号(如#define ADD(a,b) ((a)+(b)))
    注释:关键算法必须包含 “设计思路” 和 “性能指标”,修改代码时必须同步更新注释
  4. Facebook (Meta) JavaScript 规范
    适用场景:前端 React 生态,兼顾开发效率和大规模应用维护
    核心特点:
    类型:强制使用 Flow 或 TypeScript 进行类型检查,禁止any类型滥用
    组件设计:React 组件必须拆分 “容器组件” 和 “展示组件”,禁止在render中定义函数
    状态管理:禁止跨组件直接修改状态,必须通过 props 或状态管理库(如 Redux)传递
    性能:列表渲染必须加key,禁止在循环中使用useEffect等钩子

我应该遵守的编码规范
先选择一套成熟规范比如 Python 用 PEP8、Java 用阿里手册,不用自己从头制定,命名时让变量和函数名直白易懂,比如用 calculate_total_price 而非模糊的缩写,格式方面借助 Prettier 等自动格式化工具处理缩进和换行,不用手动纠结,注释重点说清复杂逻辑的 “为什么”,方便他人接手,函数保持单一职责,太长就拆分,提交代码前花一分钟快速检查是否有明显不合规的地方,核心是让代码像说话一样好懂,同时借助工具减少手动维护成本

数学之美观后感
关于为什么程序员要读这本书的思考
程序员看《数学之美》,说白了就是帮你搞懂那些天天用的技术到底是咋来的——比如搜东西时排序靠的是线性代数,设密码用的是数论,语音转文字背后是概率模型,这些不是凭空造的,全是数学原理在撑着。它能让你别光盯着代码一行行写,而是能从根儿上明白技术逻辑,遇到复杂问题时,能想到更简单高效的解法,不是只会堆代码。而且看懂了这些,你也能明白为啥技术会这么发展,对这行的理解能深一大截。

posted @ 2025-10-16 00:51  RyoujiKirihara  阅读(5)  评论(0)    收藏  举报