软件构造笔记 8.3 Code Tuning for Performance Optimization

本文探讨了代码调优的目的和策略,强调了不是为了修复bug,而是提升性能。介绍单例模式和轻量模式在对象创建和重用中的应用,以及如何通过原型模式和引用拷贝来优化。此外,还讨论了字符串的代码调整,包括字符串常量池的工作原理,以及如何通过合理使用字符串文字和关键字new来规避垃圾回收。
摘要由CSDN通过智能技术生成

1.代码调优过程和策略

代码调优不是为了修复bug,而是对正确的代码进行修改以提高性能,通常是小规模的变化。


调优不会减少代码行数;应有明确的优化目标;不要边写边调优;不是性能优化的第一选择。

2.代码调整用于对象创建和重用

单例模式:某些类在应用运行期间,只需要一个实例。强制客户只能创建一个Object实例,避免因为new操作带来的时空性能(尤其是GC)的损失,也便于复用。设置静态变量来存储单一实例对象,将构造器设置为private,从而客户无法new,提高静态方法来获取单一实例变量。


轻量模式:考虑文本编辑器的”字符“,同一个字符重复出现多次,代表同样内容,但字体符号不同。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
EFDC(The Environmental Fluid Dynamics Code)模型是由威廉玛丽大学维吉尼亚海洋科学研究所(VIMS,Virginia Institute of Marine Science at the College of William and Mary)的John Hamrick等人开发的三维地表水水质数学模型,可实现河流、湖泊、水库、湿地系统、河口和海洋等水体的水动力学和水质模拟,是一个多参数有限差分模型。经过近20年的发展和完善,目前该模型已在大学,政府机关和环境咨询公司等组织中被广泛使用,并成功用于美国和欧洲其他国家100多个水体区域的研究,在我国已被应用于云南滇池水质模拟,重庆两江汇流水动力模拟、密云水库营养物模拟等以及内蒙古乌梁素海地区水体富营养化模拟等。[1] 该模型系统包括水动力、泥沙、有毒物质、水质、底质、风浪等模块,模拟计算过程中首先完成流场计算,获得三维流速场的时空分布特征,在此基础上计算泥沙迁移、冲淤作用,进而模拟受粘性泥沙吸附影响的各水质变量动态变化过程。为更好的拟合研究区地形条件,模型在水平方向除可采用传统的 直角坐标外还可在水平向使用正交曲线坐标,垂直方向采用σ坐标。 EFDC水动力学模块可计算如下内容:流速,示踪剂,温度,盐度,近岸羽流和漂流。水动力学模型输出变量可直接与水质,底泥迁移和毒性物质等模块耦合,作为物质运移的驱动条件。同时EFDC也提供了与WASP等软件的接口,输出可供水质模拟使用的.HYD文件。EFDC泥沙模块可进行多组分泥沙的模拟,根据在水体里面的迁移特征把泥沙分为悬移质和推移质;悬移质根据粒径大小分为粘性泥沙和非粘性泥沙,进而还可细分为若干组。可根据物理或经验模型模拟泥沙的沉降、沉积、冲刷及再悬浮等过程。EFDC有毒污染物模块可以模拟各类型污染物在水体中的迁移转化过程,该模块需要研究者针对特定有毒污染物提供具体反应过程设定反应系数。EFDC的水质模块,主要模拟水体中以藻类生长为中心的各变量间相互关系。而底质模块模拟沉积物与水体之间的物质交换过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值