编写s=1+2+3+...+n思路打破认知

简介: 最近在和领导讨论架构设计,其中涉及到如何通过代码来体现面向对象?通过一个例子来打破了原有的认知,以此总结记录自己的提升和成长

一、背景介绍


最近在和领导讨论架构设计,其中涉及到如何通过代码来体现面向对象?通过一个例子来打破了原有的认知,以此总结记录自己的提升和成长


二、思路&方案


  • 1.猛然想到的就是通过for循环,你是不是也想到了?(这种方式也称为迭代)


  • 2.面积公式(上底+下底)*高/2 (这种方式在编程里面是直接使用函数)


  • 3.通过F(x)=X + F(x-1) (这种方式也称为递归)


三、过程


1.for循环的代码简写如下


int s = 0;
for(int i=0;i<n;i++){
  s+=i;
}


1.1.面向过程的写法(注重如何做事情,最终把事情做完)

1.2.局部考虑问题(虽然把每个数变化的规律抽出来了,但是它是从头开始,依次累加的过程,至于要加到什么时候是不明确的;而从头这个事情也必须得是从1开始)


2.面积公式


ScriptEngine jse = new ScriptEngineManager().getEngineByName("JavaScript");
Object temp = jse.eval("(1+n)*n/2");


2.1.面向过程,通过函数的调用,直接将结果做了计算

2.2.全局考虑问题,将开始和结束做了整合,结合到了图形中(不过对于开始它还是一个死值)


3.递归方式


private int test(int s ,int n){
  //这里的判断可以抽取出去做成策略,以达到开始的动态
  if(n == 0){
    return n;
  }else{
    return test(s,n-1);
  }
  return s+n;
}


3.1.面向对象的写法(更考虑每一步由谁来提供,而不是怎么提供)

3.2.全局考虑问题,将开始和结尾都动态的考虑进去


四、总结


  • 1.面向过程是非常容易和直观的一种方式;如果你明确这段程序固定不变了(3-5年不会变化),那么这种方式将会让你的效率更高(例如:遥控器中的程序)


  • 2.面向对象是非常抽象的方式,需要极强的业务分析能力想象能力;这种方式相较于面向过程效率更低,但是扩展性更好、复用性更强


  • 3.全局观看待,不仅仅需要利用现有的资源,如果你还能创造出来资源那么你的胜算会更大,收获也会更丰富(一个东西的无用是因为放错了地方,一个资源的没看透是因为你还没找到更多的维度来看它)


  • 4.通过一个求和小例子,它背后体现的不仅仅是如何实现;更体现了思考与权衡的取舍


五、升华


  • 如果你的广度深度越强你将会拥有站到更远未来看现在的超级能力;


  • 不断突破自己的认知它会成就你做行业程序员级别提升;以及会帮助你持续做阶层跃迁。
相关文章
|
人工智能 安全
Sora内测资格申请保姆级教程,附申请提示词
快去申请,不知道什么时候会关闭,早就是优势
5415 3
|
移动开发 Prometheus 监控
Naocs+Prometheus+Grafana实现nacos监控可视化
Naocs+Prometheus+Grafana来实现nacos监控可视化
4712 0
Naocs+Prometheus+Grafana实现nacos监控可视化
|
3月前
|
人工智能 自然语言处理 数据挖掘
OPC一人公司和个体户的区别:这不是换了个马甲这么简单
2026年浙江发布OPC团体标准,明确OPC(一人公司)非个体户升级版:它是由1名核心自然人主导、以AI为生产力主体、具备法人资格、拥有可复制业务系统的轻量化技术公司。核心差异在于有限责任保护、AI驱动规模化生产及系统化收入模型。(239字)
|
3月前
|
自然语言处理 API Android开发
别再幻想"App一键上架"了——为什么应用发布做不到全自动
应用商店“一键上架”为何难实现?根本原因在于各大平台API不支持全流程自动化:首次上架需手动创建应用、填写备案/资质/分级等合规信息,且人工审核不可绕过。9大主流渠道中8个强制人工介入,自动化仅限于传包、状态同步等有限环节。
266 0
|
4月前
|
Java API Go
阿里千问大模型API多语言对接完全指南:PHP、Java、Python、Go、.NET全栈实战
本文系统讲解阿里云通义千问大模型API的五种主流语言对接方案。首先介绍服务开通、API Key获取与环境变量配置等前置工作,随后分别以PHP、Java、Python、Go、.NET五种语言为例,提供完整的代码示例和关键参数说明。文章详细对比了DashScope原生SDK与OpenAI兼容接口两种调用方式,涵盖流式输出、多轮对话、Function Calling等高级特性,最后总结了密钥管理、错误处理、性能优化等生产环境最佳实践。无论您使用何种技术栈,都能在本文中找到可直接运行的接入方案。
|
4月前
|
数据采集 人工智能 IDE
GEO教科书都在推荐的llms.txt,为什么大模型爬虫根本不读?
llms.txt对提升AI搜索引用几乎没有直接效果。截至2026年6月,5.15亿次AI爬虫流量中仅408次请求命中了llms.txt文件,占比在统计上可忽略不计。Google、OpenAI、百度、字节跳动等主流厂商的爬虫均不将其作为有效信号。真正对GEO有帮助的是robots.txt配置、结构化数据和权威内容建设。
557 0
|
5月前
|
缓存 自然语言处理 安全
游戏安全运营中,如何用IP代理识别服务快速检测作弊网络出口?操作指南来了
某MMO开服即遭工作室刷榜,IP 3小时轮换200+网段。依托IP数据云离线库,基于net_type、risk_score等20+维度,毫秒级识别作弊网络出口,误判率<0.5%,单机QPS超250万,助力游戏安全从“封IP”升级为实时出口风控。(239字)
367 0
游戏安全运营中,如何用IP代理识别服务快速检测作弊网络出口?操作指南来了
|
9月前
|
JSON 监控 API
印度尼西亚(IDX)股票数据对接开发
本接口文档助力开发者快速接入印尼证券交易所(IDX)实时行情。通过`countryId=48`,可获取股票列表、指数、IPO日历、K线及公司基本面等全量金融数据,支持多周期K线与实时推送,一键打通东南亚市场投资洞察。
|
人工智能 Kubernetes Cloud Native
Higress(云原生AI网关) 架构学习指南
Higress 架构学习指南 🚀写在前面: 嘿,欢迎你来到 Higress 的学习之旅!
3899 1
|
机器学习/深度学习 自动驾驶 搜索推荐
今日热门论文推荐:多模态CoT综述、BlobCtrl、Being-0、DreamRenderer、WideRange4D 等
这篇调查论文是首个系统回顾多模态思维链(MCoT)推理的综述。论文阐明了相关基础概念和定义,提供了全面的分类法,并从不同角度对当前方法进行了深入分析。MCoT将思维链推理的优势扩展到多模态环境中,设计了各种方法和创新推理范式来解决图像、视频、语音、音频、3D和结构化数据等不同模态的独特挑战,在机器人技术、医疗保健、自动驾驶和多模态生成等应用中取得了广泛成功。
525 1

热门文章

最新文章