的C++可视化开发环境。
VC基于C,C++语言,主要由是MFC组成,是与系统联系非常紧密的编程工具,
它兼有高级和低级语言的双重性功能强大
灵活执行效率高几乎可说VC在 Windows平台无所不能。
VC主要是针对Windows系统,适合一些系统级 的开发,
可以方便实现一些底层 的调用。
在VC里边嵌入汇编语言很简单。
当对系统性能要求很高的时候,可用VC开发。
VC在多线程、网络通信、分布应用方面,
有着不可比拟的优势。
局域网聊天室系统设计可以划分为5个子系统:
服务器管理员登陆子系统、服务器管理员开启服务器及广播信息子系统、服务器管理员管理用户子系统、客户端用户申请子系统、客户端用户聊天子系统。
客户端用户聊天子系统是客户端程序的重要组成部分,
要能正常的发送信息功能。
能申请、能显示在线用户、能给任意在线用户发送信息等,
服务器端管理员能够登陆而使服务器具有安全性、服务器端能够广播信息而通知大家重要信息、服务器能够管理用户。
本设计主要解决在客户端于客户端的信息交换和客户端于服务器的信息交换及服务器的信息处理上的管理的课程设计。
此程序主要分为两部分:
服务器端和客户端。
服务器端用于提供一个网络端口,等待客户端发出请求,
登录到此服务端然后进行网络通讯和消息的转发;客户端可通过服务器端的IP地址发送连接请求
然后登陆聊天室。
先启动服务器端聊天程序,这是聊天服务器需要指定一个端口号,
客户端则根据这个端口号以及服务器的网络地址与服务器进行通信,服务器启动后将在这个指定的端口号中等待客户的连接。
通过分析发现,该程序完全可以通过Visual C++中MFC完成。
1.3 系统开发工具以及相关介绍
1.3.1 Visual C++和面向对象程序设计
VC基于C,
C++语言主要由MFC组成是与系统联系非常紧密的编程工具
它兼有高级和低级语言的双重性功能强大灵活
执行效率高几乎可以说VC在Windows平台无所不能。
Visual C++是一个典型的面向对象程序设计语言,
它也是目前为止功能最强、最受欢迎、应用最广泛、高效的Windows应用程序开发工具
它是在C语言基础上发展起来的是C语言的超集。
Visual C++是功能最为强大可视化开发工具,
它不仅支持传统的软件开发方法更重要的是它能支持面向对象、可视化的开发风格。
因此Visual C++又称作是一个集成开发工具,
它提供了软件代码自动生成和可视化的资源编辑功能。
Visual C++具有的优点:
提供了面向对象的应用程序框架MFC(Microsoft Foundation Class),
简化了程序员的编程工作提高了模块的可重用性;提供了基于CASE技术的可视化软件的自动生成和维护工具AppWizard、ClassWizard、Visual studio、WizardBar等
实现了直观、可视化的程序设计风格方便地编程和管理各种类
维护程序的源代码;封装了Windows的API函数、USER、KERNEL、GDI函数
简化了编程时创建、维护窗口的许多复杂的工作。
Visual C++是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出Visual C++1.0后,
随着其新版本的不断问世Visual C++已成为专业程序员进行软件开发的首选工具。
Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。
Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。
这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。
1.3.2 MFC 技术
MFC,微软基础类,实际上是微软提供的,
用于在C++环境下编写应用程序的一个框架和引擎
VC++是Windows下开发人员使用的专业C++SDK(SDK,Standard SoftWare Develop Kit
专业软件开发平台)MFC就是挂在它之上的一个辅助软件开发包
MFC同VC++集成的VCL一样是一个非外挂式的软件包
类库只不过MFC类是微软为VC++专配的。
MFC作为与VC++血肉相连的部分(注意C++和VC++的区别:C++是一种程序设计语言,是一种大家都承认的软件编制的通用规范,而VC++只是一个编译器,或者说是一种编译器+源程序编辑器的IDE,WS,PlatForm,这跟Pascal和Delphi的关系一个道理,Pascal是Delphi的语言基础,Delphi使用Pascal规范来进行Win下应用程序的开发和编译,却不同于Basic语言和VB的关系,Basic语言在VB开发出来被应用的年代已经成了Basic语言的新规范,VB新加的Basic语言要素,如面向对象程序设计的要素,是一种性质上的飞跃,使VB既是一个IDE,又成长成一个新的程序设计语言),MFC同BC++集成的VCL一样是一个非外挂式的软件包,类库,只不过MFC类是微软为VC++专配的。
1.3.3 Windows Sockets 网络编程接口
Windows Sockets规范以U.C. BerkeleyBSD UNIX中流行的Socket接口为范例定义了一套Micosoft Windows下网络编程接口。
它不仅包含了人们所熟悉的Berkeley Socket风格的库函数;也包含了一组针对Windows的扩展库函数,
以使程序员能充分地利用Windows消息驱动机制进行编程。
Windows Sockets规范本意在于提供给应用程序开发者一套简单的API,
并让各家网络软件供应商共同遵守。
此外,在一个特定版本Windows的基础上,
Windows Sockets也定义了一个二进制接口(ABI)
以此来保证应用Windows Sockets API的应用程序能够在任何网络软件供应商的符合Windows Sockets协议的实现上工作。
因此这份规范定义了应用程序开发者能够使用,
并且网络软件供应商能够实现的一套库函数调用和相关语义。
遵守这套Windows Sockets规范的网络软件,
我们称之为Windows Sockets兼容的
而Windows Sockets兼容实现的提供者我们称之为Windows Sockets提供者。
一个网络软件供应商必须百分之百地实现Windows Sockets规范才能做到现Windows Sockets兼容。
任何能够与Windows Sockets兼容实现协同工作的应用程序就被认为是具有Windows Sockets接口。
我们称这种应用程序为Windows Sockets应用程序。
Windows Sockets规范定义并记录了如何使用API与Internet协议族(IPS,
通常我们指的是TCP/IP)连接尤其要指出的是所有的Windows Sockets实现都支持流套接口和数据报套接口.应用程序调用Windows Sockets的API实现相互之间的通讯。
Windows Sockets又利用下层的网络通讯协议功能和操作系统调用实现实际的通讯工作。
它们之间的关系如图:
一个在建立分布式应用时最常用的范例便是客户机/服务器模型。
在这种方案中客户应用程序向服务器程序请求服务。
这种方式隐含了在建立客户机/服务器间通讯时的非对称性。
客户机/服务器模型工作时要求有一套为客户机和服务器所共识的惯例来保证服务能够被提供(或被接受)。
这一套惯例包含了一套协议。
它必须在通讯的两头都被实现。
根据不同的实际情况,协议可能是对称的或是非对称的。
在对称的协议中,每一方都有可能扮演主从角色;在非对称协议中,
一方被不可改变地认为是主机而另一方则是从机。
一个对称协议的例子是Internet中用于终端仿真的TELNET。
而非对称协议的例子是Internet中的FTP。
无论具体的协议是对称的或是非对称的,
当服务被提供时必然存在"客户进程"和"服务进程"。
一个服务程序通常在一个众所周知的地址监听对服务的请求,
也就是说服务进程一直处于休眠状态直到一个客户对这个服务的地址提出了连接请求。
在这个时刻,服务程序被"惊醒"并且为客户提供服务-对客户的请求作出适当的反应。
这一请求/相应的过程可以简单的用图表示。
虽然基于连接的服务是设计客户机/服务器应用程序时的标准,
但有些服务也是可以通过数据报套接口提供的。
TCP/IP 是供已连接因特网的计算
上一篇:
基于VC的聊天系统毕业论文
下一篇:
近三年来思想工作小结(德能勤绩廉)