当前位置: 首页 > news >正文

汕头网站制作怎么做大连金州

汕头网站制作怎么做,大连金州,浏览器官网入口,用js来做网站1、拆分变量#xff08;Split Variable#xff09; 有些变量用于保存一段冗长代码的运算结果#xff0c;以便稍后使用。这种变量应该只被赋值一次。 如果它们被赋值超过一次#xff0c;就意味它们在函数中承担了一个以上的责任。如果变量承担多个责任#xff0c;它就应该被…1、拆分变量Split Variable 有些变量用于保存一段冗长代码的运算结果以便稍后使用。这种变量应该只被赋值一次。 如果它们被赋值超过一次就意味它们在函数中承担了一个以上的责任。如果变量承担多个责任它就应该被替换分解为多个变量每个变量只承担一个责任。同一个变量承担两件不同的事情会令代码阅读者糊涂。 有两种情况除外 循环变量loop variable会随循环的每次运行而改变例如forlet i0; i10; i语句中的 i结果收集变量collecting variable负责将“通过整个函数的运算”而构成的某个值收集起来。 2、字段改名Rename Field   将字段改为易于理解的名字不要出现类似 int a等。 3、以查询取代派生变量Replace Derived Variable with Query 可变数据是软件中最大的错误源头之一。对数据的修改常常导致代码的各个部分以丑陋的形式互相耦合在一处修改数据却在另一处造成难以发现的破坏。很多时候完全去掉可变数据并不现实但我还是强烈建议尽量把可变数据的作用域限制在最小范围。  例如 get discountedTotal() {return this._discountedTotal;} set discount(aNumber) {const old this._discount;this._discount aNumber;this._discountedTotal old - aNumber; } 改为 get discountedTotal() {return this._baseTotal - this._discount;} set discount(aNumber) {this._discount aNumber;} 4、将引用对象改为值对象Change Reference to Value 在把一个对象或数据结构嵌入另一个对象时位于内部的这个对象可以被视为引用对象也可以被视为值对象。两者最明显的差异在于如何更新内部对象的属性如果将内部对象视为引用对象在更新其属性时我会保留原对象不动更新内部对象的属性如果将其视为值对象我就会替换整个内部对象新换上的对象会有我想要的属性值。 如果把一个字段视为值对象我可以把内部对象的类也变成值对象[mf-vo]。值对象通常更容易理解主要因为它们是不可变的。一般说来不可变的数据结构处理起来更容易。我可以放心地把不可变的数据值传给程序的其他部分而不必担心对象中包装的数据被偷偷修改。我可以在程序各处复制值对象而不必操心维护内存链接。值对象在分布式系统和并发系统中尤为有用。 何时不应该使用本重构手法如果我想在几个对象之间共享一个对象以便几个对象都能看见对共享对象的修改那么这个共享的对象就应该是引用。这便是5中的情况了。 4的例子 class Product {applyDiscount(arg) {this._price.amount - arg;} } 改为 class Product {applyDiscount(arg) {this._price new Money(this._price.amount - arg, this._price.currency);} } 5、将值对象改为引用对象Change Value to Reference  一个数据结构中可能包含多个记录而这些记录都关联到同一个逻辑数据结构。例如我可能会读取一系列订单数据其中有多条订单属于同一个顾客。遇到这样的共享关系时既可以把顾客信息作为值对象来看待也可以将其视为引用对象。如果将其视为值对象那么每份订单数据中都会复制顾客的数据而如果将其视为引用对象对于一个顾客就只有一份数据结构会有多个订单与之关联。 如果顾客数据永远不修改那么两种处理方式都合理。把同一份数据复制多次可能会造成一点困扰但这种情况也很常见不会造成太大问题。过多的数据复制有可能会造成内存占用的问题但就跟所有性能问题一样这种情况并不常见。 如果共享的数据需要更新将其复制多份的做法就会遇到巨大的困难。此时我必须找到所有的副本更新所有对象。只要漏掉一个副本没有更新就会遭遇麻烦的数据不一致。这种情况下可以考虑将多份数据副本变成单一的引用这样对顾客数据的修改就会立即反映在该顾客的所有订单中。
http://www.hkea.cn/news/14415592/

相关文章:

  • 卖产品怎么做网站ps抠图教程
  • 龙岩网站建设加盟浙江省建设厅网站张清云
  • 上海模板网站制作多少钱嵌入式开发板
  • 游戏网站哪个好山西招标
  • 浙江舟山城乡建设网站网上注册公司申请入口
  • 北海建设厅官方网站电子商务网站建设教程
  • 江苏省建设注册中心网站用dreamware制作网页
  • 国外做的比较好的购物网站营销推广方案ppt案例
  • 寻找大连网站建设商城网站建设价格
  • 网站被**泛解析后的解决方法网站建设的参考文献
  • 中国风网站设计莱芜最新招工招聘启事
  • 电商法规定企业网站必须做3年前端开发师
  • 电商网站网络服务天津企业网站建设哪家好
  • 最简单的网站开发国际化自媒体制作视频教程
  • 谢岗镇网站仿做模板网站建设
  • 中国建设监理业协会网站wordpress内容分享微信
  • 哪个网站帮别人做ppt做的网站在ie会乱码
  • 做产品展示网站高大上的企业网站欣赏
  • 网站安全维护包括什么那个做图网站叫什么
  • 门户网站建设要点wordpress修改教程视频
  • 网站建设公司盈利分析用来做网页的软件
  • wordpress菜单调用图片建设网站优化
  • 让别人做网站多久开始注册域名我为群众办实事工作总结
  • 学校网站设计论文月夜影视在线观看免费完整版
  • 响应式网站建设外文文献商业网站建设案例笔记
  • 做6个页面的网站哈尔滨雕塑制作厂家
  • 考研门户网站的建设网站建设说明书模板
  • 企业在线购物网站建设vip视频网站怎么做
  • 找人做网站推广wordpress 首页访问量
  • vps打开网站很慢小红书推广方案