基于OSGI.Net的图形界面系统

  在2013年的十月份有幸接触了osgi.net和iopenworks的创始人,了解和学习的插件式开发,开始了后台数据的处理生涯。

  第一个有图形界面的系统——智能农业的环境监测系统,其实在这个系统中所有的通信处理都是现有的,但是当时是由一个没有多线程处理的同事开发的,缺点就如果这个果园中如果有十个摄像头,就需要部署在十台机器上实时监控不同的位置、还有自动滴管和土壤信息的数据采集,这两个是一个单独的程序。我的任务就是在一周之内整合程序,评估时间极不准确,因为我不了解业务逻辑,在开发的过程中,我不断的遇到问题,主要是业务逻辑的实现,因为以前有过多线程开发的经验,所以构建服务框架很快,多线程通信还是可以完全把控风险大的,我使用了OSGI.Net的插件是开发框架, 让我的开发省心省力,因为我使用了很多公共插件,例如:

  1、 Outlook 风格 WinForm界面框架

  2、 NLog日志插件

  上图是服务端(后台)的界面,前台(Web)的处理是另外一个同事的处理,双方的通信通过消息队列实现前台和后台的交互,后台将相关命令下发给对应的实体,同时将实时上报的数据存储在数据库中,提供给前台访问显示。这个程序大部分是移植的处理做了整合而已。

  第二个基于OSGI.Net的程序是去年的八九月份帮一个朋友的忙,自己开发的系统是Web端,现在已近开始使用了。使用的插件,例如:

  1、 Win7风格的Web界面框架

  2、 NOPI库插件

  3、 NLog日志插件

等等,同时还有数据库访问的插件,在开发的过程中各个插件互不影响,每一个插件就是一个独立的项目,可以相互引用,非常方便。下面是我第二个系统的几张截图,

登陆

默认页面

我的接触很皮毛,只是向大家介绍一下这种编程思想和方式,如果感兴趣可以访问OSGI.net的官网:http://www.iopenworks.com同时也可以关注创始人的博客:http://www.cnblogs.com/baihmpgy

本人对.Net属于赶鸭子上架式的用多少学多少,并没有系统的学习语法及其编程方式,对异步处理理解不深,只有明确的概念,但没有实际的操作机会。但是在两个图形界面的程序中了解了很多新的知识和思想,本人认为值得借鉴和分享。

时间: 2024-10-30 23:16:05

基于OSGI.Net的图形界面系统的相关文章

格式文件读取&图形界面系统框架/应用接口设计

https://baobao.baidu.com/article/f3cb07d568d9f9b3bcc5d5bea73a7135.html https://baobao.baidu.com/article/2c48aa9d71e494e83cd8c8dfc5c75737.html https://baobao.baidu.com/article/f058f8db7b292a21f20682f2b479c21b.html https://baobao.baidu.com/article/b595

用Python设计一个基于命令行的图形界面

Introduction 如今很多开发工作都需要远程进行,比如深度学习需要登录到专门的服务器上.当你需要看一些可视化的结果时,可能需要用到matplotlib或是seaborn这样的绘图库.那么你或许还需要通过ssh或者scp把图片下载到你本地的桌面才能看,这样非常麻烦. 考虑到现在的terminal基本都已经支持24-bit真彩色表示,所以很自然地联想到,能不能直接在terminal中进行画图呢?比如常用的柱状图或热图,就足够能解决很多问题了. 原文地址:http://blog.51cto.c

XenServer 6.5实战系列之十三:图形界面安装Linux Redhat系统

Citrix目前已经支持发布Linux桌面,然而在XenServer上创建VM和安装图形界面系统是有一定讲究的,为此今天在此跟大家分享如何在XenServer 6.5中部署Red Hat Enterprise Linux Server 6.6. 1. 创建虚拟机 1.1 打开XenCenter右键"XS"选择"New VM" 1.2 选择对应的模板"Red Hat Enterprise Linux 6(64-bit)" 注:当然有些人在部署Lin

java之 22天 GUI 图形界面编程(一)

转自:http://takeme.iteye.com/blog/1876850 GUI(图形用户界面) Java代码 1 import java.awt.Button; 2 import java.awt.FlowLayout; 3 import java.awt.Frame; 4 import java.awt.event.WindowAdapter; 5 import java.awt.event.WindowEvent; 6 7 /** 8 * GUI(图形用户界面) 9 * Graphi

【转】CentOS图形界面的开启与关闭

源自:http://blog.sina.com.cn/s/blog_4a1f76860100zpus.html 安装CentOS 5.6系统的时候我没有先装任何组件,现在用X Window,需要再安装X Window,就可以启动图形界面了,但是默认的图形界面是很简陋的界面,可以根据需要再安装GNOME或KDE桌面环境 安装X图形界面 # 显示系统已经安装的组件和可以安装的组件(可用来对照组件名称) yum grouplist #安装X图形界面系统 yum list 列出所有可安装的软件包 可以通

ubuntu 启动图形界面 sudo inin 5

Linux系统最早期的时候只有命令行界面,所有的工作都需要用Linux命令来完成. 随着系统的发展,以及图形界面系统的出现,Linux也出现了图形界面,使得Linux系统不再是只有计算机的专业人士才可以使用,普通用户也可以很方便就可以使用Linux. 我们可以根据自己的需求来设置Linux系统的默认启动:是图形界面还是命令行界面. 方法一.更改默认启动设置 /etc/X11/default-display-manager文件:原值为 /usr/sbin/gdm,表示默认进入图形界面.改为:fal

CentOS 7 在迷你系统上安装Gnome GUI图形界面

今天换了台新电脑了,晚上就开始在虚拟机vmware安装CentOS 7系统.兴奋一下,开始了,各项 设置都设备好了.在选择安装系统的版本时,有事走开了,剁手的节奏啊!点到最小化安装了.当时没 注意,后面一步步安装完了,结果直接启动到命令行模式了. 晕,又不想重新安装,直接想从命令行模式安装.在网上找了半天,终于找到一点小提示,分享一下:             1.在命令行下输入下面的命令来安装 Gnome 包 #:$sudo  yum groupinstall "GNOME Desktop&q

部分LINUX系统由图形界面启动变更为命令行界面启动的方法

背景: 图形界面很绚丽,但是现在并不需要图形界面,只需要命令行即可,所以要将图形界面自启动给关闭. 正文: Centos: 更改文件/etc/inittab的其中一行    id:5:initdefault: 将5改成3即可. 这应该是最原始也是google出来最普遍的答案了,根据Linux默认的运行等级来设定,其中, 0 表示关机. 1 单用户命令行模式 2 多用户但是不能使用网络文件系统模式,也是命令行模式 3 多用户模式,也是命令行模式 4 还未使用 5 图形界面模式 6 表示重启. 中标

CentOS 7 系统下安装gnome图形界面

在安装Gnome 包之前,我们需要先检查下安装源是否正常,因为我们要通过yum命令来安装gnome包, 而yum命令式通过yum 源来下载安装包的. 1.在命令行下输入下面的命令来安装 Gnome 包 $sudo  yum groupinstall "GNOME Desktop" "Graphical Administration Tools" 2. 更新系统的运行级别 $sudo ln -sf /lib/systemd/system/runlevel5.targe