到底是什么阻止了程序员重复使用代码?_惠州计算机Java培训学校
作者:hz_admin02发布时间:2022-04-13分类:惠州计算机学校浏览:687
“懒人创造了世界”是时下很流行的一种说法,懒人因为懒,所以他们会在方式方法上找捷径,想出各种巧妙的方法来解决问题。这一说法在程序员中也得到了印证,在解决实际问题时,老实的程序员会自己编写手工编写代码,懒的程序员会复制已有的代码,而又懒又聪明的程序员连复制都懒得做,他把这些代码写成一个组件下次直接使用。
框架的应用限制了代码重用?
框架出现的目的很明确,就是因为程序员需要重用一段代码,所以把它提取出来。但是当需求出现变化时,当前的框架不再满足需求,而程序员不想重复劳动,所以就会选择修改框架代码。但需求一再变化,程序员不得不再次修改代码,直至这个框架变得无比得大。
这时,当项目中有一个新功能出现,程序员一看框架,“哇呀,我就用一个小功能,这个框架这么大呀!”于是,程序员就开始自己动手再写一个框架,长此以往,框架的数量也不断增长。
虽然框架最初的目标是为了追求便捷,但是数量和体量的不断增加反而对于程序员代码重用造成了困扰。
代码重用有好处,但有可能代价更高
世界上任何事情都是有代价的,代码重用也不例外,在解决了灵活性的问题时,也会在性能和代码可读性方面自然会有所牺牲。所以归根结底,对于问题的解决方法总是权衡每个选择的利弊,然后从中选出最优方案。
所以,如果是从这个角度出发,那么代码重用的最大阻力可能就是项目本身。代码重用的目的往往只是整个项目的一小部分,而不是项目的最终目标。所以一旦项目的完成周期和复用发生冲突时,负责程序员往往会选择牺牲掉代码可用。
重用代码底层好写,上层难
“长恨人心不如水,等闲平地起波澜。”对于代码而言,越是底层越容易规范,越是上层代码,复杂度越高。为什么呢?因为底层代码抽象的是机器,服务的是程序员,具体需求比较单一固定,例如,数据读写、数据操作等等。而上层代码抽象的是需求,服务的是用户,用户的需求千差万别,一段可能想要数十种需求的重用代码可能连用户的一个需求都解决不好。
所以,底层代码可以自顶向下的进行设计,而上层代码则要以解决用户需求为重,然后才能考虑在类似的问题出现的多的时候使用代码重用。
过早优化是“万恶之源”
每个程序员在最初的时候都有一个“完美代码的梦想”,要考虑周全,为可能会出现的需求而编写“预备代码”。但是在经历了多个项目之后,往往会发现90%的预想需求是不会出现的,即使是出现的预想需求也和之前大相径庭。
所以一开始追求复用性并没有多大的意义,相反在设计的时候考虑复用性反而是更合适的阶段:
1、不做设计(新手阶段,能实现就好)
2. 过度设计(了解的东西多了,总想追求完美)
3. 简化设计(认知逐渐深入,学会取舍)
4. 最优设计(熟练掌握,知道概念适配场景)
点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。
本文内容转载自网络,版权归原作者所有,如有侵权请联系我们进行删除。
标签:惠州计算机软件培训惠州计算件软件开发惠州计算机软件基础惠州计算机JAVA软件开发惠州Java培训学校惠州Java培训JAVA语言Java是什么Java开发JAVA入门
- 惠州计算机学校排行
- 标签列表
-
- Java (3694)
- 北大青鸟 (3713)
- 软件开发 (3613)
- JAVA (3413)
- UI设计入门 (2093)
- 惠州北大青鸟 (4375)
- 惠州IT培训 (2558)
- UI设计培训 (2090)
- 惠州UI设计培训 (2095)
- 惠州UI设计培训学校 (2090)
- 惠州计算机软件培训 (6260)
- 惠州计算件软件开发 (6260)
- 惠州计算机软件基础 (6261)
- 惠州计算机JAVA培训 (3574)
- 惠州计算机Java软件开发 (3620)
- 惠州计算机JAVA软件开发 (4645)
- 惠州计算机JAVA软件开发学校 (3338)
- 惠州计算机Java软件开发培训 (3338)
- 北大青鸟IT计算机学校 (5048)
- 北大青鸟IT软件学校 (5062)
- 北大青鸟IT学校 (5059)
- 惠州计算机UI设计软件开发 (2088)
- UI设计基础教程 (2088)
- UI设计是什么 (2088)
- UI设计教程 (2088)
- 网站分类
-
- 计算机教程
- 计算机入门
- 职业学校
- 新闻动态
- 专业课程
- 热门技术
- SEO
- 培训教程
- windows
- linux教程
- 系统集成
- 网站开发
- Html5
- 办公软件
- 师资力量
- 热点问答
- 联系我们
- 计算机学校
- 惠州计算机学校
- 河源计算机学校
- 广州计算机学校
- 深圳计算机学校
- 湛江计算机学校
- 佛山计算机学校
- IT计算机培训信息
- 设计专业
- UI
- 影视特效
- 游戏动漫设计
- Photoshop
- AI设计
- 软件教程
- Java技术
- C语言/C++语言培训
- C#
- Python技术
- PHP
- 数据库
- SQL Server
- 网络教程
- 网络安全
- 网络营销
- 软件专业
- 大数据专业
- 前端开发专业
- 软件测试专业
- Python专业
- 软件实施
- 珠海计算机学校
- 初中生学什么好
- 计算机认证
- 文章归档
-
- 2024年10月 (32)
- 2024年9月 (29)
- 2024年8月 (68)
- 2024年7月 (59)
- 2024年6月 (43)
- 2024年5月 (48)
- 2024年4月 (80)
- 2024年3月 (65)
- 2024年2月 (54)
- 2024年1月 (25)
- 2023年12月 (12)
- 2023年11月 (73)
- 2023年10月 (134)
- 2023年9月 (34)
- 2023年8月 (3)
- 2023年7月 (3)
- 2023年6月 (12)
- 2023年5月 (30)
- 2023年4月 (72)
- 2023年3月 (11)
- 2023年2月 (34)
- 2023年1月 (37)
- 2022年12月 (78)
- 2022年11月 (359)
- 2022年6月 (1193)
- 2022年5月 (570)
- 2022年4月 (1567)
- 2022年3月 (982)
- 2022年2月 (54)
- 2022年1月 (182)
- 2021年9月 (308)
- 2021年8月 (1704)
- 2021年7月 (2423)
- 2021年6月 (1806)
- 2021年5月 (1569)
- 2021年4月 (1380)
- 2021年3月 (1255)
- 2021年2月 (709)
- 2021年1月 (1521)
- 2020年12月 (3626)
- 2020年11月 (1646)
- 2020年10月 (1046)
- 2020年9月 (592)
- 最近发表
-
- 江门信息:伪造健在证明材料骗取工伤保险待遇真刑!|||计算机软件培训学校
- 汕头信息:深化组团挂联汕头这场义诊助力百千万工程|||大学生计算机培训学校
- 东莞信息:石龙石龙人社分局持续举办南粤家政技能培训班|||广州计算机编程培训
- 东莞信息:虎门虎门镇首个人才交流服务中心揭牌成立|||计算机职业技能培训班
- 中山信息:中山市人社局持续开展讲诚信不欠薪根治欠薪法治宣传活动|||计算机培训机构
- 东莞信息:南城南城街道开展职业技能展示活动|||计算机网络培训学校
- 东莞信息:东莞市金秋招聘月就业服务行动招聘会暨东莞市第三届全国个体工商户服务月活动|||计算机专业维修学校
- 茂名信息:来宾市人社局赴我市开展劳务协作交流活动|||电脑计算机编程培训学校
- 汕头信息:家政高手同台比武!汕头市举办2024年南粤家政职业技能大赛|||广州市北大青鸟计算机职业培训学校
- 东莞信息:莞城街道金秋招聘月暨重点群体招聘会活动|||广州计算机软件培训