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组件化编程的更多相关文章

  1. React 面向组件化编程 - 封装了webpack - npm run build 产生的包的 /static 引用路径问题

    React 面向组件化编程 面向对象 ----> 面向模块 ----> 面向组件 套路: 注意: 组件名必须大写开头: 只能有一个根标签: <input />虚拟DOM 元素必 ...

  2. vue组件化编程应用2

    写几个小案例来理解vue的组件化编程思想,下面是一个demo. 效果图示: 需求: header部输入任务,进行添加,在list中显示; list中每个item项,鼠标移入时,背景变灰并显示delet ...

  3. vue组件化编程应用

    写几个小案例来理解vue的组件化编程思想,下面是一个demo. 效果图示: 功能: Add组件用于添加用户评论,提交后右边评论回复会立马显示数据.Item组件点击删除可以删除当前用户评论.当List组 ...

  4. vue - Vue组件化编程

    今天是对vue组件化的一个理解,最主要的单文件组件,然后就可以脚手架的学习了,本来昨晚就该上传的,但是用的那个上传博客园的Python脚本不行了,换了一个新的. 组件化让我越来越感觉到框架的力量了 一 ...

  5. vue组件化编程

    vue文件包含3个部分 <template> <div></div> </template> <script> export default ...

  6. 谈谈我对前端组件化中“组件”的理解,顺带写个Vue与React的demo

    前言 前端已经过了单兵作战的时代了,现在一个稍微复杂一点的项目都需要几个人协同开发,一个战略级别的APP的话分工会更细,比如携程: 携程app = 机票频道 + 酒店频道 + 旅游频道 + ..... ...

  7. C++ 类的动态组件化技术

    序言: N年前,我们曾在软件开发上出现了这样的困惑,用VC开发COM组件过于复杂,用VB开发COM组件发现效率低,而且不能实现面向对象的很多特性,例如,继承,多态等.更况且如何快速封装利用历史遗留的大 ...

  8. 我所理解的Android组件化之通信机制

    之前写过一篇关于Android组件化的文章,<Android组件化框架设计与实践>,之前没看过的小伙伴可以先点击阅读.那篇文章是从实战中进行总结得来,是公司的一个真实项目进行组件化架构改造 ...

  9. 得到、微信、美团、爱奇艺APP组件化架构实践

    一.背景 随着项目逐渐扩展,业务功能越来越多,代码量越来越多,开发人员数量也越来越多.此过程中,你是否有过以下烦恼? 项目模块多且复杂,编译一次要5分钟甚至10分钟?太慢不能忍? 改了一行代码 或只调 ...

随机推荐

  1. [Poj1743] [后缀数组论文例题] Musical Theme [后缀数组不可重叠最长重复子串]

    利用后缀数组,先对读入整数处理str[i]=str[i+1]-str[i]+90这样可以避免负数,计算Height数组,二分答案,如果某处H<lim则将H数组分开,最终分成若干块,判断每块中是否 ...

  2. MyBatis对数据库的增删改查操作,简单演示样例

    之前一直有用Hibernate进行开发.近期公司在使用Mybatis.依据网上的演示样例,做了一个简单的Demo,以便日后复习 使用XMl方式映射sql语句 整体结构例如以下图 watermark/2 ...

  3. 欢聚时代校园招聘java开发一面经历

    收到yy短信通知笔试通过后隔天就一面了,面试时间是下午1点半,跟另外一个同学在1点半的时候已经到了目的酒店,发现面试都集中在一个大厅,摆了非常多桌椅,由不同的面试关在面试.等到2点多的时候才到我.先说 ...

  4. 抓包分析TCP的三次握手和四次握手

    问题描写叙述: 在上一篇<怎样对Android设备进行抓包>中提到了,server的开发者须要我bug重现然后提供抓包给他们分析.所以抓好包自己也试着分析了一下.发现里面全是一些TCP协议 ...

  5. 深入分析JavaWeb Item47 -- Struts2拦截器与文件上传下载

    一.struts2中的拦截器(框架功能核心) 1.过滤器VS拦截器 过滤器VS拦截器功能是一回事. 过滤器是Servlet规范中的技术,能够对请求和响应进行过滤. 拦截器是Struts2框架中的技术. ...

  6. C++著名程序库的比较

    转载出处:http://www.acejoy.com/ace/thread-3777-1-1.html 1.C++各大有名库的介绍——C++标准库 2.C++各大有名库的介绍——准标准库Boost3. ...

  7. C++虚函数默认实参的注意事项

    我们都知道当成员函数是虚函数的时候,函数调用取决于调用函数的对象的类型而不是指针或者应用的类型.这就是C++中的多态. 那么一个虚函数的实参的缺省值是什么呢?例如如下代码: #include < ...

  8. Android:制作Update.zip升级包 【转】

    本文转载自:http://zwkufo.blog.163.com/blog/static/2588251201382293049118/ 很多时候厂商或者三方提供的ROM并不能满足需求,比如系统自带软 ...

  9. 95.Extjs 表单中自定义的验证规则 VTypes

    1 Ext.onReady(function(){ Ext.QuickTips.init(); //重写 (自定义)xtype Ext.apply(Ext.form.VTypes,{ repetiti ...

  10. Java压缩技术(一) ZLib

    原文:http://snowolf.iteye.com/blog/465433 有关ZLib可参见官方主页 http://www.zlib.net/ ZLib可以简单的理解为压缩/解压缩算法,它与ZI ...