project joee 开发日志(六)——自定义事件
++之后开发日志不再按照日期命名++
某个功能需求要求插件实现在主程序满足特定条件时触发函数调用,因此需要在框架和接口中添加自定义事件处理,通过事件触发的方式来在主程序中插入插件的功能函数。
自定义事件处理 定义
添加定义事件类 EvtHanlder
在插件接口类中添加属性EvtHanlder: handler
1public EvtHanlder hanlder{get;}
添加事件处理机制,添加CustomEvent枚举类,用来描述主窗体的自定义事件,并将相应设置相应触发器,使得插件可以执行对应的事件handler。
123456789101112131415//事件委托public delegate void DefaultEventHanlder(object sender, CustomEventArgs Args);public delegate void ReelChangeHandler(object sender, CustomEventArgs Args);public delegate void ...;//事件枚举类型public enum ...
project joee 开发日志 10.17
需求
具体描述
(待)实现方式(/思路)
图表添加指示线条
添加竖向可移动的线条来指出瑕疵落点位置
使用对应的控件方法处理
实现方案:
(插件实现)对图表控件添加事件控制逻辑
使用如下变量来存储状态信息和选中的线条对象
123456789//鼠标状态bool MouseDown = false;//命中状态bool StripSelected = false;bool AxisXSelected = false;bool AxisYSelected = false;//当前被选中的线条StripLine SelectedLine;
在MouseMove事件中的逻辑:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586MainWnd.ActiveControl = chart;HitTestRe ...
project joee 开发日志 10.15
需求
具体描述
(待)实现方式(/思路)
不同相机工作状态指示灯
字母代表不同的相机,相机工作对应的指示灯变为绿色
采集卡API检测相机状态
查阅采集卡的开发文档,对应API
12345678910111213141516171819202122232425262728293031IKapGetCameraStatus 获取当前相机状态c++:int IKapGetCameraStatus(HANDLE hDev, int* npValue)对应c#:int IKapGetCameraStatus(IntPtr hDev, ref int npValue);参数说明hDev 设备句柄npValue 相机当前状态返 回 值0:调用失败1:调用成功说 明用户可以在任意时刻调用该函数查询当前相机状态判断采集发生异常的原因。如果返回 0 或相机状态 npValue 为 0xFFFFFFFF,则采集卡获取相机信号失败,用户可以在间隔一段时间后(e.g.100ms),重新调用该函数获取相机状态。相机状态 npValue 可能是下列比特位的异或组合:0x00000001:时钟信 ...
高级软件体系结构分析课程作业,资料整理
概述
高级软件体系结构课程作业是找一个现成的软件来分析架构,需要:
1.制作相应PPT并且演讲
2.写6000-8000字小论文来描述该软件架构
本着面向搜索引擎 的分析方法,成功找到如下案例:
分析一个大型软件体系结构——爱奇艺
link:https://blog.csdn.net/Wsk1234567/article/details/102697419
开始针对相应内容进行资料收集和整理,并恶补相关知识和内容。
info 其他相关资料爱奇艺微服务标准技术架构实践 https://cloud.tencent.com/developer/article/1796751?from=article.detail.1896541
爱奇艺的架构到底有多牛逼?https://zhuanlan.zhihu.com/p/146119034
爱奇艺移动业务后台系统架构设计 https://wenku.baidu.com/view/7e25fc4fb42acfc789eb172ded630b1c58ee9b63.html
爱奇艺推荐系统架构与实践 https://blog.csdn.net ...
project joee 开发日志 10.12
4d8f51835c8fbe51487a5ea4612bfd9d43da46106b6a7e43f4bb8a28590d85c484930d8a1cc513ece647554dc994c06bf9c153d37bbd4c199d813f17a3deefd31b646b2a591b466b6ad149ff8e5923b863f198d985d1c3ec126fb2205e294d12eeeedf1a74824a5a4bf1f3ff69bbce7eb445c056e02dcd06d6a489bb02e212f51305a596573bd33538178c9c31920988361044fb011b7d76c469f2e9ab9c597eaca42c1db04a2c63535ea93b34d1299ea60ed3376d80c31881cf1276ba6dd750522f95b9b7284cc48c45c138d6b225454000a15f9697e61c60784050ac794b6feb00b32bae29cbaa0efd8f8acf402cafff9d0608b41215046 ...
高级软件体系结构知识点
第一章
构件
一般认为,构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。
有的可以独立工作,有的需要与其他配合工作;使用和开发生产无关,只要按照标准来生产;
软件重用
是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。
可以分为三个层次:
代码重用、设计结果重用、分析结果重用
可重用构件
可重用构件表示在软件重用过程中,可重用的软件构件元素。
相对于普通的软件产品,对可重用构件的特殊要求:
可重用构件应该具有++功能上的独立性与完整性;有较高的通用性;较高的灵活;严格的质量保证;较高的标准化程;++
基于构件的软件开发
优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用。
困难和挑战:
在同一系统中采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻问题。
采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场的竞争力;
第三方 ...
设计模式
概述
设计模式,即Design Patterns,是指在软件设计中,被反复使用的一种代码设计经验。使用设计模式的目的是为了可重用代码,提高代码的可扩展性和可维护性。
设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是设计模式能被广泛应用的原因。
设计模式这个术语是上个世纪90年代由Erich Gamma、Richard Helm、Raplh Johnson和Jonhn Vlissides四个人总结提炼出来的,并且写了一本Design Patterns的书。
他们所提出的设计模式主要是基于以下的面向对象设计原则:
对接口编程而不是对实现编程。
优先使用对象组合而不是继承。
为什么要使用设计模式? ...
project joee 开发日志 10.07 (及项目工程目录解释)
4d8f51835c8fbe51487a5ea4612bfd9dc8a2e51d9da2e0d9c473c89cf2689108d0e296f09250cd83b2bacf8780416afd997e8d292beb6b86b9395210513b689eaf9dea5e4278eb38452f4eccdf2236c60ad87bd2f7783bba9cf39c4d4de31216577c98a8ac337f753aa6f75ba1e687ce8f415eead14dc0072e6dfe671f5a48befe375f04e0f90186d2d13b40da473b370089b64556a27c2827428da5fc22b88d58a1bd0b7a05ecddc431b476245f219ad6439a528c506378fe47bf389a75999f9b71f65b6a51045e7dad81b0c7af79612e5915f9936d5c71fcb4d1977c8e0d3b6b3dbc7bf75f77bd4f52971ed79e0cf4a8713ac593281bb1c ...
0. Dropout: A Simple Way to Prevent Neural Networks from Overfitting
Abstract 摘要部分
:::info
提出问题
:::
Deep neural nets with a large number of parameters are very powerful machine learning systems. However, overfitting is a serious problem in such networks. Large networks are also slow to use, making it difficult to deal with overfitting by combining the predictions of many different large neural nets at test time.
拥有大量参数的深度神经网络是很强大机器学习系统。然而,神经网络的过拟合是一个严峻的问题。大型网络的使用速度也很慢,这使得在测试时结合许多不同的大型神经网络的预测来处理过拟合问题变得困难。
:::info
引出解决方法
:::
Dropout is a technique for addres ...
Shoka主题的markdown相关语法
标题语法
使用# (#加空格)来标识标题,多个# 标识次级标题
12# 一级标题
一级标题
12## 二级标题
二级标题
12###### 多级标题
多级标题
段落语法
markdown使用空白行将一行或多行文本进行分隔
123I really like using Markdown.I think I'll use it to format all of my documents from now on.
I really like using Markdown.
I think I'll use it to format all of my documents from now on.
换行语法
markdown支持使用HTML 的 <br> 标签进行换行
1This is the first line.<br>And this is the second line.
This is the first line.And this is the second line.
强调语法
粗体
1**这是粗体**
这是粗体
斜体
1*这是斜体*
这是斜体
...






