初探CORBA组件化编程
1.掌握组件化开发的概念,了解CORBA模型及ORB机制;
2.掌握CORBA组件编程方法。
二、实验内容
(一)、步骤
1.配制环境JDK环境。
2.编写编译IDL接口。
3.编写编译服务端程序。
4.编写编译客户端程序。
5.运行测试与调试。
6.完成报告。
(二)、实验题目
1、使用CORBA编程实现显示“Hello,World!+班级+中文姓名”字符串
说明:CORBA处理字符串有:String和wstring两种类型,string类型主要
用于处理ASCII类型的字符串,wstring用于处理多字节的字符串,例如:中文。
2、要求:编写实现连加、连减和加减混合等数学++/- -运算
(三)、实验分析
(一)、程序分析
1、Hello,World实验
通过编译HelloWorld.idl文件(即编译IDL接口)生成module。包sample中包含(HelloWorldStub.java、HelloWorld.java、HelloWorldHelper.java、HelloWorldHolder.java、HelloWorldOperations.java、HelloWorldPOA.java)六个生成的java文件。
再通过编写并编译HelloWorldServer.java、HelloWorldClient.java文件生成Server和Client程序。
运行程序 (在源文件路径下):
启动名字服务器
tnameserv -ORBInitialPort 1050
1
启动服务端程序
java HelloWorldServer -ORBInitialPort 1050
1
启动客户端程序
java HelloWorldClient -ORBInitialPort 1050
1
2、Counter实验
通过编译counter.idl文件(即编译IDL接口)生成module。包sample中包含(CounterStub.java、Counter.java、CounterHelper.java、CounterHolder.java、CounterOperations.java、CounterPOA.java)六个生成的java文件。
再通过编写并编译Server.java、Client.java文件生成Server和Client程序。
运行程序 (在源文件路径下):
启动名字服务器
tnameserv -ORBInitialPort 1050
1
启动服务端程序
java Server -ORBInitialPort 1050
1
启动客户端程序
java Client -ORBInitialPort 1050
1
(四)、调试及测试
源文件请于腾讯云下载(链接:https://share.weiyun.com/5QLdVMJ 密码:zs4rvz)
1、进入目标文件夹(源文件所在文件夹)
2、成功编译
3、启动名字服务器
4、启动服务器端
5、启动客户端程序
发现出现乱码并解决
(查看cmd活动代码页为936(即GBK)并非65001(即UTF-8),故更改活动代码页为65001)
更改活动代码页所需代码:
chcp 65001
1
(五)、总结
通过这次上机逐渐熟悉了CORBA组件化编程,在学习组件化编程的过程中虽然是从未接触过的一种编程方式,但是回头想想CORBA编程并非难以理解。在上级过程中虽然出现了各种问题,但是在通过交流和查询主要知识点之后都将其逐一解决。在可课下完成熟悉实验中慢慢的发现CORBA组件化编程易于构造组装,普遍性比较高,标准规范也非常统一。
---------------------
初探CORBA组件化编程的更多相关文章
- React 面向组件化编程 - 封装了webpack - npm run build 产生的包的 /static 引用路径问题
React 面向组件化编程 面向对象 ----> 面向模块 ----> 面向组件 套路: 注意: 组件名必须大写开头: 只能有一个根标签: <input />虚拟DOM 元素必 ...
- vue组件化编程应用2
写几个小案例来理解vue的组件化编程思想,下面是一个demo. 效果图示: 需求: header部输入任务,进行添加,在list中显示; list中每个item项,鼠标移入时,背景变灰并显示delet ...
- vue组件化编程应用
写几个小案例来理解vue的组件化编程思想,下面是一个demo. 效果图示: 功能: Add组件用于添加用户评论,提交后右边评论回复会立马显示数据.Item组件点击删除可以删除当前用户评论.当List组 ...
- vue - Vue组件化编程
今天是对vue组件化的一个理解,最主要的单文件组件,然后就可以脚手架的学习了,本来昨晚就该上传的,但是用的那个上传博客园的Python脚本不行了,换了一个新的. 组件化让我越来越感觉到框架的力量了 一 ...
- vue组件化编程
vue文件包含3个部分 <template> <div></div> </template> <script> export default ...
- 谈谈我对前端组件化中“组件”的理解,顺带写个Vue与React的demo
前言 前端已经过了单兵作战的时代了,现在一个稍微复杂一点的项目都需要几个人协同开发,一个战略级别的APP的话分工会更细,比如携程: 携程app = 机票频道 + 酒店频道 + 旅游频道 + ..... ...
- C++ 类的动态组件化技术
序言: N年前,我们曾在软件开发上出现了这样的困惑,用VC开发COM组件过于复杂,用VB开发COM组件发现效率低,而且不能实现面向对象的很多特性,例如,继承,多态等.更况且如何快速封装利用历史遗留的大 ...
- 我所理解的Android组件化之通信机制
之前写过一篇关于Android组件化的文章,<Android组件化框架设计与实践>,之前没看过的小伙伴可以先点击阅读.那篇文章是从实战中进行总结得来,是公司的一个真实项目进行组件化架构改造 ...
- 得到、微信、美团、爱奇艺APP组件化架构实践
一.背景 随着项目逐渐扩展,业务功能越来越多,代码量越来越多,开发人员数量也越来越多.此过程中,你是否有过以下烦恼? 项目模块多且复杂,编译一次要5分钟甚至10分钟?太慢不能忍? 改了一行代码 或只调 ...
随机推荐
- 动态加入的HTML的自己主动渲染
这两天在写一个用EasyUI的前台,遇到动态向Layout加入HTML内容时没有自己主动渲染的问题.查了一下网上的资料后得以解决.详细例如以下: $("#content").htm ...
- CF #327 DIV2 D、E
两题都不难. 对于D题,可以使用相对移动,把吹aircraft移动变成相反方向的待援点的移动.假设此时时间为t,把aircraft的速度设为Vmax,看待援点在飞船最大速度飞行t秒的范围内,注意风向变 ...
- 中国银联mPOS通用技术安全分析和规范解读
mPOS是近年出现并得到迅速发展的一种新型受理产品,不少机构和生产企业进行了各种形式的试点. 因为mPOS引入了手机.平板电脑等通用智能移动设备.并通过互联网进行信息传输.因此其安全特点与传统银行卡受 ...
- jmeter默认生成测试报告
我的jmeter安装在F:\study\apache-jmeter-3.1\apache-jmeter-3.1下,在bin目录下执行 其中E:\code\jmeterReport\Course-tes ...
- IOS的一个关于球碰撞的小游戏
这个游戏是关于一个球随机在屏幕上移动,能够用手指来操纵令一个球,假设两个球碰撞到一起,就表示输了,很easy的一个游戏 在StoryBoard里定义两个UIImageView和一个startbutto ...
- 折腾开源WRT的AC无线路由之路-3
来看看Netgear自带的用户界面和具体功能,看看它都能干什么. 開始 一开机.用网线连接到你的电脑上,在浏览器地址栏中输入Netgear默认的路由器地址192.168.1.1,第一次使用时它有个向导 ...
- 对扩展openflow协议的一点思考
软件定义X变得越来越火,正所谓,Software is eating the world. 软件定义网络也是如此.不论是在工业界还是学术界都将是一次伟大的革命,都在紧随着这个行业的方向,找自 ...
- 您必须先调用“WebSecurity.InitializeDatabaseConnection”方法。。。
有如下代码: [Authorize] public ActionResult Index() { ViewBag.ShowList = ShowList.GetShowList(WebSecurity ...
- Framebuffer子系统【转】
本文转载自:http://blog.csdn.net/av_geek/article/details/40897115 本文将介绍Framebuffer子系统 目标平台:TQ2440 CPU:s3c2 ...
- 操作系统-虚拟机-百科:VM
ylbtech-操作系统-虚拟机-百科:VM 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统. 虚拟系统通过生成现有操作系统的 ...