其实如果你对代码要求比较严格的话,你就会经常发现,你的代码有很多东西可以抽取出来,或者做在公共的模块,或者作为框架的底层,
我们就简单的拿jdbc来说吧, 首先,是connection的管理,这点一般用jdbc熟一些的话,都会有管理connection的公共模块,虽然偶尔会碰到性能的问题,但是这点我们暂且压下不表。
我们查询的时候,每次都要用 rs.get...("name"), rs.get...("id"), rs.get...("age"), rs.get...("gender"), rs.get...("hobby"), 然后修改数据库的时候,还要拼写update语句跟insert语句,经常还要费很多时间来调试这些多余代码的问题,这时候你就想,不行,我一定要写一个公共模块,省得让我每次都要定这么多代码,于是你的第一个公共模块产生了,然后测试啊测试,改进啊改进,叮叮响,过了几天时间的考验,这个公共模块终于可以放心使用了,项目进度开始快一些了,总算不用再拼SQL了。
后来在做统计模块的时候,突然又发现,之前在用到的一些SQL函数,好像在客户要求的数据库上不怎么行啊,于是又去查了一下资料,又过了几天(可能这次不用几天),然后终于放心,所有的函数都正常了。 接着又不可避免的碰到了分页的问题,你对自己说,不用怕,我上回就写了一个分页的,没有问题!可是Ya的你突然发现,上回的那个分页是用游标实现的,这回客户是要求用SQLServer,唉,SQLServer的游标,不提也罢,想来想去,只好自己拼SQL语句来写分页了,又是count又是top,测了又测之后,又过了几天,
啊哈,终于分页的公共模块也做好的,可以放心使用了,好,项目的进度又可以加快了。 做着做着的时候,发现,咦,好像这表得增加一个字段才行,增加了,然后所有查询的SQL语句加一下,所有insert跟update的代码修改一下,页面修改一下,嗯,现在应该正常了,看起来倒是没什么问题,咦,报表好像不怎么对啊,靠,这边还有调用这个表的代码,妈的,改吧改吧。磨蹭了好几个小时(当然,熟练的话,并不用几个小时),总算看起来都正常了。 这一回,这个功能中有一次用户请求,访问了好几次数据库,不行,这里应该用个cache,否则性能上会有问题啊,算了,用算法解决一下,尽量少访问数据库好了,我对cache还不熟呢。
(写啊写啊,Batch Size,这样多,那样多,Fetch Size。。。,终于,看起来正常一些了)。过了一段时间,靠,这边又要访问好几次数据库,Ya的受不鸟了,性能爱咋的咋的,反正一个地方慢又不要紧。Oh !!!这边也是好几次,这边又是好几次,那边又是好几次。不行了,我老老实实写个cache支持吧,于是又叮叮当当了好几天,终于,有个粗糙的cache出来了,终于速度可以看一些了。后来改进又改进,测试又测试,累死了,老子好不爽啊。 好像天下有点太平了,啊,你说我这个地方忘记更新你增加的那个子表啊,算了,没关系,我明天看一下代码,这个容易解决点。嗯,我改了那边的代码了,会更新子表信息了。什么?你说取主表的记录跟相应的子表记录列表麻烦啊,没关系,我更新一下处理resultset的公共模块,明天再说。
Oh ......对这样子复杂的查询好像现在的公共模块支持不了啊,算了,这样子的查询不要用这个公共模块,我们手动写一些代码好啊,别跟我讲这样代码结构很难看,你以为我不知道啊,TMD。 TMD的,怎么这边的SQL老是运行不了啊,不会是分页底层模块的问题吧,靠,怎么你的SQL语句有这么多order,group by,靠,还有top啊,这当然过不了了,不要吵了,现在没时间改,不理它,直接用个假分页就行了。你又说代码结构难看,小心我抽你哦。 公司新来一个程序员,看了几天代码,不停的抱怨说,这代码写得真差啊。。。。。。
分享到:
相关推荐
20210324-西部证券-2021年二季度A、H市场策略展望:迷雾中的抉择.pdf
《行业-2021年二季度A、H市场策略展望:迷雾中的抉择》这份报告主要探讨了2021年第二季度中国A股和香港H股市场的投资策略,为投资者在复杂多变的市场环境中提供了指导。在这个“迷雾中的抉择”主题下,报告深入分析...
报告标题:“汽车消费调查报告:影响消费者抉择的要素” 该报告深入探讨了影响中国消费者在购买汽车时的主要决策因素,涵盖了多个关键领域,旨在为汽车制造商、经销商以及相关市场研究者提供有价值的数据和洞察。...
《汽车消费调查报告:影响消费者抉择的要素》 在当今社会,汽车已经成为了人们生活中不可或缺的一部分,无论是作为代步工具还是彰显个人品味,汽车的选择都深深地反映了消费者的偏好和需求。本报告聚焦于汽车消费...
【汽车消费调查报告:影响消费者抉择的要素】 汽车消费市场是一个复杂且多元化的领域,消费者在购车时会受到多种因素的影响。《车》杂志在第十届上海国际汽车工业展览会上进行的一项调查显示,这些因素包括但不限于...
《创业计划书-汽车消费调查报告:影响消费者抉择的要素》 汽车行业作为全球经济发展的重要支柱,消费者购车行为的分析和理解对于汽车制造商、销售商以及创业者来说至关重要。这份创业计划书深入探讨了影响消费者...
《汽车消费调查报告:影响消费者抉择的要素》 在当今社会,汽车已经成为了人们生活中不可或缺的一部分,无论是作为代步工具还是彰显个人品味的象征,汽车的选择都显得尤为重要。本报告通过对大量消费者进行深入调研...
在这个名为“酒店服务经典案例:开房的抉择”的案例中,南京天京大酒店的公关销售部施经理面临的就是这样一个问题。 案例描述了2021年圣诞前夕,一位北京公司的总经理与他的南京客户来到酒店,希望为醉酒的客户开一...
软件架构(Software Architecture)不仅涉及到系统组件的组织、接口和交互,还涵盖了框架的构建,即为系统提供一个共享的服务层。架构设计是软件开发过程中的关键节点,它在需求分析和实现设计之间起到桥梁作用。 ...
在IT行业,开发者、工程师和决策者经常面临类似“利己和利他”的抉择。例如,当设计一款产品或服务时,他们需要平衡个人利益(如公司的利润、技术的创新)与用户和社会的利益(如用户体验、数据隐私、社会影响)。...
作者还从技术架构角度逐章讲述了业务层、服务层、数据访问层和表现层的分层设计,同时介绍了各种软件架构设计方案的优与劣,如何在各种方案中做出抉择,以及如何将这些设计原则更具体地应用到应用程序中。...
货币政策:相机抉择VS规则.pdf
1. **抉择的力量**:杨澜在1993年底决定辞职出国留学,这是一个重大抉择,她放弃了在中央电视台稳定且受人羡慕的工作,选择去探索未知的世界。这个决定体现了个人成长和自我提升的价值,展示了勇气和决心。 2. **...
这篇思想汇报主要探讨了人类行为中的“利己”与“利他”之间的抉择,并通过两个具体案例——长江大学学生救人事件和复旦大学生投毒事件,深入剖析了这两种价值观的极端表现及其影响。以下是相关知识点的详细说明: ...
在探讨中国社会传统价值观与现代理性思维之间的关系时,“情与理的抉择”这一议题无疑是一个深具时代意义的讨论话题。2007年的高考满分作文题目“情与理的抉择”通过一篇范文,展示了一名高中生对于这一复杂问题的...
框架是典型的构建与购买的抉择。如果你自己构建它,你将在完成时了解它,但是你需要多长时间才能推出自己的产品?如果你购买它,你需要攀登学习曲线,但是这需要多长时间?这里没有正确的答案,但是大多数观察家都会...
美联储的抉择:加息减速,缩减加速 美联储(Federal Reserve System),美国的中央银行,其政策动向对全球金融市场具有深远影响。在当前的经济环境下,美联储面临多重挑战,其政策抉择对于金融市场的稳定与发展至关...
4)全栈自研模式,以特斯拉为代表,其核心算力芯片、自动驾驶算法、整车电气架构都自研自产,这为行业树立了技术发展的一个新高度,同时也为其他传统玩家设定了一个难以企及的标杆。 其次,海外核心零部件供应商的...
信息化:世纪之交的战略抉择.docx
搜狐张朝阳:出售与不出售公司的抉择.docx