SCSAI平台面向对象建模技术的设计和实现(1)

news2024/9/21 0:49:17

SCSAI平台面向对象建模技术的设计和实现(1)

原创 团长团 AI智造AI编程 2024年09月19日 20:09 北京

用爱编程30年,倾心打造工业和智能智造软件研发平台SCSAI,用创新的方案、大幅的让利和极致的营销,致力于为10000家的中小企业实现数字化转型,打造数字化企业和智能工厂,点击上边蓝色字体,关注“AI智造AI编程”,分享转发文章,让我成为您的合作伙伴。

针对SCSAI平台面向对象建模的设计和实现做思考和总结,逐步给出实现过程相关技术分析,希望相关专业的您能给出宝贵意见。

SCSAI平台以面向对象的分析、设计、编程和建模技术构建软件平台,最终构建出支持用户以面向对象的方式构建对象模型的软件系统,而无需或很少量的编码就可以快速搭建业务系统以及迁移业务系统。

图片

面向对象方法包括 面向对象分析、面向对象设计和面向对象编程。

OOAD(Object Orient Analysis & Design)面向对象分析与设计是现代软件企业广为采用的一项有效技术。OOAD方法要求在设计中要映射现实世界中指定问题域中的对象和实体,例如:顾客、汽车和销售人员等。这就需要设计要尽可能地接近现实世界,即以最自然的方式表述实体。所以面向对象技术的优点即为能够构建与现实世界相对应的问题模型,并保持他们的结构、关系和行为为模式。

在面向对象的设计和编程中,每个对象object都属于某个类class,每个对象都是某个类的实例instance,我们将该类称为对象类ObjectClass.

一般考虑的都是去设计一个对象类,设计该类的属性,方法,类之间的从属关系也就是父类和子类,然后还有多态。

我们在设计系统的时候会考虑去设计系统中一个一个的类,设计类的属性和方法,设计类之间的关系,然后用代码去实现,然后我们在一个复杂的系统中可能设计和实现了成百上千的类,通过软件工程的方法、各种设计工具和面向对象的编程语言做出了一个又一个复杂的软件系统,实现了各种复杂的功能。

很少有人会考虑设计一个工具,通过该工具不需要编程就可以去设计和实现各种类以及类之间的关系,通过工具去实现各种类与其它的类之间的关系、类的展示界面、针对类的各种操作、对类的操作权限等等,综合考虑这些问题的话,我们应该考虑建立一个面向对象的模型,也就是今天我们要讨论的面向对象的建模问题。

今天我们来考虑上述这个问题解决的基本思路:

首先我们要将面向对象编程涉及到的类class考虑更复杂一点,那就是每个对象类ObjectClass也应该是属于某个特定对象类,是该特定对象类的一个实例,为了避免混淆我们将这个特定对象类称之为ObjectClassInfo,简称OCI。今天我们先来谈谈怎么设计和实现这个OCI。

我们要通过设计和实现OCI,当用户对OCI执行相关操作(增删改查等)的时候要达到如下功能:

1.能够创建、删除、修改、查询对象类(每个对象类就是OCI的一个实例);

2.能够定义对象类的展示界面(就是对象类实例的展示界面,包括增删改查和列表等不同场景);

3.能够定义对象类对应的功能在系统菜单中的位置(如果需要的话)。

4.能够定义对象类和其它对象类之间的关系,可能是父子关系,也可能是其它协作关系

5.能够定义对象类的的生命周期;

6.能够定义和管理与对象类相关的工作流程;

7.能够定义和管理对象类的操作权限,也就是谁(某个角色)能够操作和管理该对象类的对象;

8.能够定义和管理对象类的版本信息(如果有的话);

9.能够定义和管理对象类的实例的各种可能操作(operation);

10.能够定义和管理与对象类相关的其它可能的各种应用场景。

11.OCR自身也是一个对象类,针对任何对象类的操作也适合于OCR。

在设计和实现了OCR的上述功能之后,还要做什么了?

具备相应权限的用户通过对OCR的管理和操作,可以实现对任意对象的建模,也就是构建(定义)一个对象模型(对象类),该模型描述了对象的各种属性,对象关联的对象,对象是否支持版本信息,对象的展示界面,可以操作对象的角色,对象的生命周期,对象涉及到的工作流等等。

那么下一步就是该模型的实例(对象)在系统中的创建和呈现问题,也就是以用户在对象模型中定义的菜单位置和用户界面来创建和展现对象。

上述功能如何设计和实现,后边将分别展开,敬请关注。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2147058.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【jupyter notebook】环境部署及pycharm连接虚拟机和本地两种方式

Python数据处理分析简介 Python作为当下最为流行的编程语言之一 可以独立完成数据分析的各种任务数据分析领域里有海量开源库机器学习/深度学习领域最热门的编程语言在爬虫,Web开发等领域均有应用 与Excel,PowerBI,Tableau等软件比较 Excel有…

双立方(三次)卷积插值

前言 图像处理中有三种常用的插值算法: 最邻近插值 双线性插值 双立方(三次卷积)插值 其中效果最好的是双立方(三次卷积)插值,本文介绍它的原理以及使用 如果想先看效果和源码,可以拉到最底…

【论文阅读笔记】YOLOv10: Real-Time End-to-End Object Detection

论文地址:https://arxiv.org/abs/2405.14458 文章目录 论文小结论文简介论文方法为NMS-free训练的一致性双标签分配双标签分配一致性匹配度量 效率-精度整体驱动的模型设计效率驱动模型设计轻量级分类检测头Spatial-channel 解耦下采样Rank-guided block design 精度…

Vue3中的Pinia——管理应用程序的全局状态

介绍Pinia Pinia 是 Vue.js 的状态管理库,主要用于管理应用程序的全局状态。它是 Vuex 的替代品,提供了更简单和更灵活的 API。Pinia 的主要作用包括: 1. 状态管理:Pinia 允许你在应用中集中管理状态,方便不同组件之…

微服务以及注册中心

一、什么是微服务 微服务是指开发一个单个小型的但有业务功能的服务,每个服务都有自己的处理和轻量通讯机制,可以部署在单个或多个服务器上。微服务也指一种松耦合的、有一定的有界上下文的面向服务架构。也就是说,如果每个服务都要同时修改…

Errorresponsefromdaemon:toomanyrequests:Youhavereachedyourpullratelimit.

Errorresponsefromdaemon:toomanyrequests:Youhavereachedyourpullratelimit.Youmayincreasethelimitbyauthenticatingandupgrading:https://www.docker.com/increase−rate−limit.See ′ dockerrun−−help 在拉取docker进行的时候遇到这个问题,如何解决呢?本文提供的解决方…

石英晶体谐振器:核心功能材料及其工作原理与应用

晶发电子专注17年晶振生产,晶振产品包括石英晶体谐振器、振荡器、贴片晶振、32.768Khz时钟晶振、有源晶振、无源晶振等,产品性能稳定,品质过硬,价格好,交期快.国产晶振品牌您值得信赖的晶振供应商。 石英晶体谐振器,又称为无源晶振,是现代电子…

【代码】使用c#实现串口通信的基础模板

一、分享代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;using System.IO.Ports; using…

云平台在大规模设备管理和数据分析中的作用

在当代数字化转型的浪潮中,云平台作为信息技术基础设施的核心组件,扮演着无可替代的角色,尤其在大规模设备管理和数据分析领域,其重要性和影响力日益凸显。本文旨在深入探讨云平台如何通过其独特的优势,促进数据的高效…

ROS第五梯:ROS+VSCode+C++单步调试

解决问题:在ROS项目中进行断点调试。 第一步:创建一个ROS项目或者打开一个现有的ROS项目。 第二步:修改c_cpp_properties.json 增加一段命令: "compileCommands": "${workspaceFolder}/build/compile_commands.json"第三…

11.第二阶段x86游戏实战2-找人物状态

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…

gma 2.0.13 (2024.09.16) 更新日志

安装 gma 2.0.13 pip install gma2.0.13网盘下载: 链接:https://pan.baidu.com/s/1P0nmZUPMJaPEmYgixoL2QQ?pwd1pc8 提取码:1pc8 注意:此版本没有Linux版! 编译gma的Linux虚拟机没有时间修复,本期Linux版…

WinRAR 创建自解压文件 添加桌面快捷方式 自定义图标

一、需求描述 将我们开发的软件,打包成exe安装包形式,让用户双击后可以选择安装位置,并在安装完成后,自动生成桌面快捷方式(以任意我们自定义的图标和描述) 二、准备 1.根据需求准备如下几种图标 软件安…

解析药用植物重楼甾体皂苷生物合成中的连续糖基化及其抗真菌作用-文献精读49

Unraveling the serial glycosylation in the biosynthesis of steroidal saponins in the medicinal plant Paris polyphylla and their antifungal action 解析药用植物重楼甾体皂苷生物合成中的连续糖基化及其抗真菌作用 摘要 糖–糖糖基转移酶在构建复杂的具有生物活性的…

走进低代码表单开发(五):高效开发的利器

前面我们已经介绍了勤研低代码开发平台的权限管理相关的内容,当表单设计完成后,我们将继续探索表单的其他功能,接下来,我们一起来看看勤研低代码平台还能如何为用户带来更便捷的开发体验。 一、表单导入 表单导入功能是勤研低代码…

电气自动化入门03:安全用电

视频链接:2.1 电工知识:触电原因与防触电措施_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1PJ41117PW/?p4&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 1.电流对人体的危害 电击:电流通过人体。 电伤:电流热效应…

深入理解Unreal中的AI感知系统

StimuliSource和PerceptionListener 感知作为一种信号,整个场景中存在这个信号的生产者和消费者。这种信号在Unreal中被叫做刺激Stimuli 生产者就是StimuliSource,通过挂载StimuliSourceComponent并RegisterForSense来注册成为哪些类型刺激的刺激源 消费…

聚焦API安全未来,F5打造无缝集成的解决方案

研究发现,目前超过90%的基于Web的网络攻击都以API端点为目标。随着对API使用需求的增加,这些攻击还会持续增长。现代企业需要一种动态防御策略,在风险升级成代价高昂、令人警惕且往往无法预防的API安全漏洞之前,发现并降低风险。 …

Android 开发高频面试题之——Flutter

Android开发高频面试题之——Java基础篇 flutter高频面试题记录 Flutter1. dart中的作用域与了解吗2. dart中. .. ...分别是什么意思?3. Dart 是不是单线程模型?如何运行的?4. Dart既然是单线程模型支持多线程吗?5. Future是什么6. Stream是什么7. Flutter 如何和原生交互…

微信getUserProfile不弹出授权框

当我们在微信小程序开发工具中想要使用getUserProfile来获取个人信息的时候,会发现不弹出授权框,这是什么原因呢? 早在2022年的小程序官方公告中就已经明确给出了小程序用户头像昵称获取规则调整公告 因此如果还想继续使用getUserProfile的弹…