从最简单基本开始 or 把问题复杂化还自诩为“设计了一个可扩展的系统”?

文章目录

Intro

刚才看了一段关于在苹果系统中使用numbers表格软件制作记账本的视频教程:当 Excel 交给苹果来设计会变成...?#Numbers 新手教学,以下为最终界面效果:

有些触动,在该段视频中:

对重点操作步骤的讲解言简意赅

对numbers表格软件的使用知识点的讲解长驱直入

程序员"把问题复杂化"的职业病

很早以前我就想自己开发一个web版的记账本软件(好几年前,但可以确定是在2019之后),至今未开始。

不禁想,怎么还没开始?

因为我把问题复杂化 了。我考虑的太多了,以至于我不能从最简单且必要的功能点开始

把问题复杂化 的原因我也想到了:

程序员在设计系统的时候,一定会被要求:要考虑到系统的可扩展性。

哪怕是刚入行的程序员,哪怕是一个临时系统,哪怕大家都确定这个系统不会有第二个人去开发,更不会有下一个版本。

依旧会被要求考虑系统的可扩展性。

部分证据参见设计模式,这是一个程序员甚至在还没毕业的时候,就要学习模仿的编程方向/模范。

哪怕是计算 1+1 的和,你也不能直接输出print(1+1),而是设计类、设计方法、设计对象......考虑系统的可拓展性。

如何抉择

我没法说解决,暂时没有通用的解决方式。关于:

到底是从简单基本开始,还是从身负重托开始?

折中。
没有两全,只有折中。

先用最少的代价出一个能运行的成果。

然后基于此,去设计更多,去添加可拓展性。

从简单开始,复杂设计在其后。

相关推荐
卷心菜不卷Iris2 天前
第4章唯一ID生成器——4.1 分布式唯一ID
java·分布式·系统设计·场景题·分布式唯一id
大咖分享课8 天前
如何设计一个软件项目管理系统:架构设计合集(六)
软件架构·系统设计·数据库设计·技术选型·项目管理系统设计
蜗牛沐雨13 天前
掌握系统设计的精髓:12个核心设计模式的通俗解读
系统设计
头发那是一根不剩了22 天前
双因子认证(2FA)是什么?从零设计一个安全的双因子登录接口
网络安全·系统设计·身份认证
庄小焱1 个月前
大数据治理域——计算管理
大数据·系统设计·数据治理域
roman_日积跬步-终至千里1 个月前
【系统设计【3】】系统设计面试框架:从理论到实践的完整指南
系统设计
庄小焱2 个月前
Java开发经验——阿里巴巴编码规范实践解析4
系统设计·编码规范·开发经验总结·java规范
庄小焱2 个月前
数据治理域——数据治理体系建设
大数据·数据治理·系统设计·数仓系统设计
编程在手天下我有3 个月前
缓存:缓解读库压力的高效方案与应用实践
数据库·缓存·性能优化·软件开发·系统设计·技术架构
在未来等你3 个月前
互联网大厂Java求职面试:云原生与AI融合下的系统设计挑战-2
java·微服务·ai·云原生·面试题·架构设计·系统设计