当前位置: 首页 > news >正文

软件工程师,全面思考问题很重要

为什么要全面思考问题

        □ 在软件开发中,对一个问题思考得越全面,编写出的代码就会越严谨,出现bug的几率就越低;反之,如果没有对一个问题进行全面而深入的思考,编写出的代码就会漏洞百出,出现各种莫名其妙、无法复现的bug的几率也就急剧增加。

        □ 软件就是数据加逻辑,数据是“肉身”,逻辑是“灵魂”。如果不全面思考问题,在某些情况下, “灵魂”就会“精神错乱”,甚至损坏“肉身”,进而导致无法正常工作。

        □ 只有经过全面思考编写出的代码,才是严谨的,才能保证可靠性。一份代码即使严格遵守了代码规范,重构了设计模式,但思考不全面,逻辑不严谨,也不能称之为优雅。

        □ 没有经过全面思考开发出的软件,虽然短期内可能能正常工作,但长远来看,各种问题和漏洞一定会爆发出来,从而导致系统的可靠性、可维护性和稳定性大打折扣。记住墨菲定律:凡是你认为可能会出错的,它一定会出错。

        下面,我们通过几个实例来理解如何进行全面思考。

实例1

        输入若干个整数作为数组,将数组中每一个元素除以第一个元素的结果,作为新的数组元素值。

        这道编程题并不难,稍加一思索,很容易给出下面的答案。

#include <iostream>
using namespace std;static void DivArray(int *pnArray, int nSize)
{for (int i = 0; i < nSize; i+
http://www.lryc.cn/news/92729.html

相关文章:

  • 1.Apollo部署-linux
  • 【HTML】form标签
  • 基于SPAD / SiPM技术的激光雷达方案
  • 使用MATLAB工具模拟单/双频GPS和载波相位差分GPS
  • 当社恐成为技术面试官
  • Jetpack Compose:使用PagerIndicator和Infinity实现滚动的HorizontalPager
  • 2023年杭州/广州/东莞/深圳软考(中/高级)认证,618报名特惠
  • springboot项目外卖管理 day03-公共字段填充与新增删除分类
  • Nginx:Tomcat部署及优化(一)
  • Docker Swarm 集群搭建和使用 —— 筑梦之路
  • 是否需要更换CRM系统如何评估?如何确保更换成功?
  • CSDN竞赛57期题解
  • springboot+vue.js大学生竞赛报名作品评分管理系统
  • Python爱好者的自我修养(1):简单输入与输出
  • java SSM 摄影作品网站myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
  • [Maven高级]->近万字文章带你深入了解Maven
  • 物联网Lora模块从入门到精通(五)光照与温湿度传感器
  • 【网络编程】计算机网络基础知识总结 | 运输层 |TCP协议
  • python关键知识点
  • c# 从零到精通 数组的操作-将两个一维数组合并成一个二维数组
  • Linux目录结构(与window目录结构对比+绝对路径和相对路径)
  • 投票活动小程序开发搭建
  • 代码随想录day18
  • QT+OpenGL高级光照 Blinn-Phong和Gamma校正
  • 【Ubuntu系统内核更新与卸载】
  • RL - 强化学习 马尔可夫奖励过程 (MRP) 的状态价值
  • Mybatis之批处理流式查询
  • Spring架构篇--2.7.3 远程通信基础--Netty原理--bind实现端口的绑定
  • 【改进的多同步挤压变换】基于改进多同步挤压的高分辨率时频分析工具,用于分析非平稳信号(Matlab代码实现)
  • 有关 python 切片的趣事