首页 > 其他分享 >aardio 简单工厂模式

aardio 简单工厂模式

时间:2024-05-26 18:44:36浏览次数:25  
标签:oper return .. aardio 模式 工厂 result var ctor

 1 //calculate 简单工厂模式
 2 
 3 //简单工厂模式
 4 import console;
 5 
 6 //运算类
 7 class operation{
 8     ctor(){};
 9     numberA = 0;
10     numberB = 0;
11     getResult = function(){
12         var result = 0;
13         return result;  
14     }
15 }
16 
17 //加法类
18 class operationAdd{
19     ctor(){
20         this = ..operation();
21     };
22     getResult = function(){
23         var result = 0;
24         result = this.numberA + this.numberB;
25         return result;  
26     }
27     
28 }
29 
30 //减法类
31 class operationSub{
32     ctor(){
33         this = ..operation();
34     };
35     getResult = function(){
36         var result = 0;
37         result = this.numberA - this.numberB;
38         return result;  
39     }
40 }
41 
42 //乘法类
43 class operationMul{
44     ctor(){
45         this = ..operation();
46     };
47     getResult = function(){
48         var result = 0;
49         result = this.numberA * this.numberB;
50         return result;  
51     }
52 }
53 
54 //除法类
55 class operationDiv{
56     ctor(){
57         this = ..operation();
58     };
59     getResult = function(){
60         var result = 0;
61         result = this.numberA / this.numberB;
62         return result;  
63     }
64 }
65 
66 //简单运算工厂类
67 class operationFactory{
68     ctor(operate){
69         var oper = null;
70         select(operate) {
71             case "+" {
72                 oper = ..operationAdd();
73             }
74             case "-"{
75                 oper = ..operationSub();
76             }
77             case "*" {
78                 oper = ..operationMul();
79             }
80             case "/"{
81                 oper = ..operationDiv();
82             }
83         }
84         return oper; 
85     };
86 }
87 
88 var oper = operationFactory("*")
89 
90 oper.numberA = 8;
91 
92 oper.numberB = 2;
93 
94 var result = oper.getResult()
95 
96 console.log(result)
97 
98 console.pause(true);

 

标签:oper,return,..,aardio,模式,工厂,result,var,ctor
From: https://www.cnblogs.com/axuanup/p/18214131

相关文章

  • aardio 实现封装继承多态
    //Car实现封装继承多态importconsole//父类classCar{ctor(make,model,color,year){//构造函数,用于初始化对象的属性this.make=make//制造商this.model=model//型号this.color=color//颜色this.year=year//年......
  • 【设计模式】迭代器模式 ——详解Iterator、foreach与for循环的区别
    参考:B站UP主动力节点迭代器模式定义:提供方法,顺序访问集合对象中的各个元素,而又不暴露对象的内部表示。为遍历不同的集合结构提供统一的接口,分离了集合对象的遍历行为。tips:Iterator迭代器本身就是JDK按照该模式设计的迭代器,通常情况下,我们都是直接使用JDK提供的。此处......
  • 【设计模式】代理模式——详解静态代理&动态代理
    内容由B站UP主动力节点产出,本文仅作为学习笔记代理模式定义:为对象提供一种代理,以控制这个对象的访问操作。代理对象和目标对象之间起到中介的作用。作用:保护目标对象和增强目标对象举例说明,以一个订单对象为例:classOrder{ privateStringinfo; privateStringus......
  • 思维减负·系列:(七)重塑语言模式
          我们的语言模式对思维方式有着重要影响。重塑语言模式,避免使用消极、绝对化的语言,多使用积极乐观的语言表达,塑造积极心态,是远离过度思考和精神内耗的一个关键。      不要用消极的语言、负面的情绪和思维喂养自己的潜意识。对自己要有同情心,给自己美......
  • 设计模式 1 (Python版)
    设计模式解释:概念《设计模式:可复用面向对象软件的基础》面向对象的特性:封装,继承,多态接口:若干方法的集合限制实现接口的类必须按照接口给定的调用方式实现这些方法对高层模块隐藏了类的内部实现#接口实现的两种方法:#1.写一个父类,其他类必须继承这个方法,若子类不实现这......
  • 反模式 DI anti-patterns
    反模式DIanti-patterns反模式DIanti-patterns一、一、反模式DIanti-patterns1.控制狂Controlfreak在程序设计中,"Controlfreak"(控制狂)通常指的是一种反模式,即过度控制和过度管理代码的设计和执行流程。这种情况下,程序员试图通过过度的控制和指令来达到对代码的绝......
  • 【设计模式】设计模式前置知识
    目录1.设计模式概述1.1软件设计模式的产生背景1.2软件设计模式的概念1.3学习设计模式的必要性1.4设计模式分类2,UML图2.1类图概述2.2类图的作用2.3类图表示法2.3.1类的表示方式2.3.2类与类之间关系的表示方式2.3.2.1关联关系2.3.2.2聚合关系2.3.2.3......
  • 设计模式之六大设计原则
    文章目录高内聚低耦合设计原则开闭原则单一职责原则里氏代换原则依赖倒置原则迪米特原则接口隔离原则高内聚低耦合提高代码的可读性、可维护性和可扩展性,降低开发和维护的成本,并减少系统的风险内聚:表示内部间聚集、关联的程度耦合:块间联系,指软件系统结构中各......
  • Django+Vue构建前后端分离开发模式
    将Django作为后端,Vue作为前端进行前后端分离开发是一个常见的模式。下面是一个完整的步骤,以构建一个Django和Vue整合的项目。1.准备Django后端安装必要的库确保你已经安装了Django和DjangoRESTframework:pipinstalldjangodjangorestframework配置Django项目在myproj......
  • 探索SPI单线传输模式:时钟线与数据传输的简化之道
    探索SPI单线传输模式:时钟线与数据传输的简化之道在当今的嵌入式系统和微控制器通信中,串行外设接口(SPI)因其高速、全双工和同步的特点而广受欢迎。然而,随着设备尺寸和复杂性的不断减少,对SPI通信的简化需求也日益增加。在这种背景下,SPI的单线传输模式成为了一个备受关注的解决方案。......