南阳理工学院
Linux应用开发实验指导书
软件学院·软件工程教研室
2014.7

 
实验1 熟悉Linux操作系统环境    1
实验2 LinuxC/C++编程实践    2
实验3 事件驱动编程实践    3
实验4 wxWidgets GUI 组件使用-1    4
实验5 wxWidgets GUI 组件使用-2    5
实验6并发编程实践    6
实验7网络编程实践    7
实验8 数据库编程实践    8

实验1 熟悉Linux操作系统环境
一、实验目的
1. 熟悉Linux开发环境;
2. 熟练掌握Linux各种命令和软件安装配置的方法;
3. 学习使用Vi编辑器或者Emacs编辑器。
二、实验内容及步骤
命令名
                 
Rs
显示进程状态
Kill
给进程发信号,杀死进程
Rm
删除文件或目录(remove files or directories
Cp
复制文件和目录(copy files and directories
Cat
将指定文件(或标准输入)内容输出至标准输出(通常的用途是显示文件内容),当输入文件为多个时则为合并输出(concatenate files and print on standard output
More
文件分页显示的交互式工具(files perusal filter for crt viewing
Ls
显示文件属性和目录内容
Chmod
改变文件访问权限(change file access permissions
mkdir
建立目录(make directories
Pwd
显示当前目录名/工作目录名(print name of current/working directory
Echo
显示一行(display a line of text
chear
清屏(clear the terminal screen
1. 熟悉和使用上表所示常用命令
2. 掌握常用软件管理的方法。

实验2 LinuxC/C++编程实践
一、实验目的
1. 熟悉程序编译链接的过程和各阶段的任务;
2. 熟练使用GNU gcc/g++进行程序开发;
3. 自学linux买什么书好能够掌握并遵循一般软件工程原则;
4. 能够阅读并书写简单makefile文件。
二、实验内容及步骤
1. 编写程序:输入一个字符串,将其中所有数字删除,并输出改动后的字符串及其长度,例
如输入ab123df354adfx,输出abdfadfx。请详细记录编译器动作命令和其在预处理、编译、汇编的链接的各阶段任务。
2. 编写一个复数类Complex,要求用友元函数重载“+”“-”运算符,用成员函数重载“=”运算符,使之能够实现整数或浮点数和复数的加法和减法,并且进行测试。请遵循软件工程基本原则,程序分文件书写。同学们可以相互交换代码。
3. 创建makefile文件,可以对Complex程序进行自动编译。

实验3 事件驱动编程实践
一、实验目的
1. 熟悉GUI应用程序事件驱动工作原理;
2. 掌握静态实践表编程方法;
3. 掌握动态事件加载机制;
4. 了解自定义事件的实现方法
二、实验内容及步骤
1. 编写wxWidgets GUI应用程序,熟悉它的组成和事件系统工作原理。并修改静态事件表机制为动态事件加载方法。写出核心代码
2. 编写程序,实现自定义事件的实现过程。

实验4 wxWidgets GUI 组件使用-1
一、实验目的
1. 掌握GUI应用程序的基本框架和消息驱动的工作原理;
2. 掌握wxWidgets常用数据类型和组件的使用;
3. 掌握LinuxGUI程序的开发的流程。
二、实验内容及步骤
1. 实现一个简单计算器:可以实现浮点数的加减乘除运算

实验5 wxWidgets GUI 组件使用-2
一、 实验目的
1 熟悉掌握设备上下文的使用;
2 熟悉使用各种绘图工具;
3 能够使用绘图函数进行复杂图形的绘制;
4 能够使用拖放操作
二、实验内容及步骤
1 编写时钟程序。
2 要求创建一用户注册登录对话框模拟用户注册登录过程。要求用文本文件保存用户名密码,注册时需验证用户名是否合法;登录成功失败则用消息对话框进行提示。

实验6并发编程实践
一、实验目的
1. 掌握线程和进程的基本概念和区别联系。
2. 掌握wxTimer定时器的使用方法。
3. 能够使用并发编程解决同步和互斥问题。
二、实验内容及步骤
1. 编写GUI程序,模拟生产者-消费者多线程同步。
2. 编写程序,实现设计一个图片浏览器。要求每间隔1.0秒,随机选择图片文件在窗口显示。
3. 编写GUI程序,实现一个多线程文件搜索软件。(附加题)

实验7网络编程实践
一、实验目的
1. 掌握网络编程基本原理,理解TCP/IP协议相关概念
2. 掌握套接字网络编程接口和方法,可以进行网络应用程序的开发。
二、实验内容及步骤
1. 编写局域网聊天程序,要求服务器和客户机都可以多次发送消息给对方,也能够多次接收对方消息。
编写FTP文件浏览器,可以对远程FTP文件进行浏览和下载。
实验8 数据库编程实践
一、实验目的
1. 掌握数据库基本原理和sql语法,可以熟练进行数据库操作
2. 掌握常用数据库和其使用方式
3. 掌握Linux下数据库连接的基本方法并能够使用其中一种进行数据库的连接和操作,进行软件开发.
二、实验内容及步骤
    选择合适数据库,Linux平台下实现一个XXXX信息管理系统, 能够使用 GUI组件进行信息的增删改查操作.