0bug-C\C++商用工程之道(高清非扫描版)
### 0bug-C\C++商用工程之道(高清非扫描版) #### 1.1 系统分析初步 **1.1.1 需求理解和沟通** 本节着重阐述了在商用工程项目中,如何正确地理解和沟通需求的重要性。商用工程师在接收到用户需求时,首要任务不是立即着手编程,而是深入理解需求。这一过程包括了: - **仔细阅读相关文档**:例如需求分析报告、系统设计书等,以获得项目的全貌。 - **与上级进行面对面沟通**:了解自身模块在整个产品中的位置及优化方向。 - **主动陈述理解并请求反馈**:确保对需求的理解准确无误。 商用工程开发中强调自上而下的设计思路,即先确定整体框架再细化具体实现,而非一开始就专注于解决底层的技术难题。这种方式有助于规避因技术细节未定而导致的整体设计方向偏差。 **1.1.2 “上家”和“下家”** 在商用工程开发中,“上家”和“下家”的概念极为关键。简单来说,“上家”是指提供数据的模块,“下家”则是接收数据的模块。商用程序设计时应遵循“宽进严出”的原则: - **宽进**:对于来自上家的数据不做严格限制,能够接受各种格式的数据输入。 - **严出**:对于输出到下家的数据则要严格把关,确保数据质量,防止错误累积放大。 为了更好地理解和实现这一原则,开发团队可能会进行“角色扮演”式的会议,模拟业务流程,帮助成员们直观理解各模块之间的交互逻辑。 #### 1.2 商用程序员对开发的理解 商用程序员对开发有着不同于传统软件开发的独特理解,主要包括以下方面: **1.2.1 资源和成本** 商用项目往往需要在有限的资源条件下完成,因此成本控制成为重要考量因素之一。程序员需考虑如何在满足功能需求的同时,合理利用资源,减少不必要的开销。 **1.2.2 盈利导向** 商用项目的最终目的是创造价值,因此盈利导向是贯穿始终的核心思想。在开发过程中,不仅要关注技术实现,更要思考如何提升产品的市场竞争力和盈利能力。 **1.2.3 客观** 商用工程师应当具备客观的态度,面对问题时要基于事实和数据做出决策,而不是凭主观臆断。 **1.2.4 平衡** 在商用开发中,需要在多种要素之间寻找平衡点,如性能与成本、用户体验与技术难度等。 **1.2.5 服务** 商用工程最终服务于用户,因此开发者需要站在用户的角度思考问题,不断优化用户体验。 #### 1.3 基本开发思路 **1.3.1 边界** 在商用项目中明确边界非常重要,它有助于定义模块的功能范围和责任区域,从而避免功能重叠或遗漏。 **1.3.2 “细分”的分析方法** 通过对项目进行细致的分解,可以将复杂的问题拆解为更易于管理的小部分,这种方法有助于提高开发效率和质量。 **1.3.3 灵活,逆向思维** 商用开发需要灵活性,特别是在面对不确定性和变化时。逆向思维可以帮助开发者从不同的角度审视问题,寻找最佳解决方案。 **1.3.4 小内核,大外延,工程库思维** 采用小内核设计模式,核心功能保持简洁高效,而周边功能则通过外延方式实现。此外,构建通用的工程库有助于提高代码复用率,降低维护成本。 **1.3.5 单笔交易失败不算失败** 商用工程中单个操作的失败不应被视为整个系统的失败,关键是要确保系统能够从失败中恢复,并继续正常运行。 #### 1.4 数据传输各个角色的开发思路 商用工程项目中涉及到不同类型的数据传输场景,包括但不限于服务器端、PC客户端、嵌入式设备以及跨平台软件模块等。针对这些不同场景,开发者需要采取不同的策略和方法: - **服务器的设计原则**:强调稳定性、安全性及高并发处理能力。 - **PC客户端的开发思路**:注重用户体验、界面友好性以及与服务器端的高效通信机制。 - **嵌入式设备的开发思路**:受限于硬件资源,需要精简代码,优化内存占用和功耗。 - **跨平台软件模块的开发思路**:确保兼容性,采用标准化接口,便于在不同平台上部署。 《0bug-C/C++商用工程之道》这本书深入浅出地介绍了商用工程开发的关键知识点,包括需求分析、开发理念、基本思路以及具体场景下的开发策略。对于希望在商用领域深耕的C/C++程序员来说,本书提供了宝贵的指导和启示。
- Ant-K2014-04-27书很不错,不过作者个人观点多。
- ypmichael2018-08-07我觉得仁者见仁,没必要否定一家的说法,好的就用,不好的就笑一笑
- spacife2014-11-25清晰度还行吧!不过有些流程插图没有。
- ncubrian2015-01-25书中写的东西很实际,很多都是可以借鉴的,不过有些图没有。
- happy123132012-11-17清晰度一般
- 粉丝: 0
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2024校园跑腿代办同城闪送小程序 -课件源码
- 体系结构(ARM架构版本)与其对应的ARM处理器内核
- 美赛建模竞赛全面指南:团队合作、建模流程与工具使用
- spotfire 取某两字符中间的子字符串 demo,自用
- java高校学生信息管理系统源码数据库 MySQL源码类型 WebForm
- 毕业设计《基于Python的南京二手房数据采集及可视化分析》+项目源码+文档说明
- 毕业设计《基于Springboot+Vue+Python深度神经网络学习算法水质管理预测》+项目源码+文档说明
- PLC项目 5号卸垛机.mwp
- 基于 nodejs+SQL server 实现的学生-教师评价系统课程设计
- PLC项目程序 2号卸笼.gxw