《Linux应用程序开发》课程教学大纲_第1页
《Linux应用程序开发》课程教学大纲_第2页
《Linux应用程序开发》课程教学大纲_第3页
《Linux应用程序开发》课程教学大纲_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Linux应用程序开发》课程教学大纲课程代码:ABXX0428课程中文名称:Linux应用程序开发课程英文名称:ApplicationLinuxProgramming课程性质:选修课程学分数:2学分课程学时数:32学时其中理论学时:16学时实验学时:16学时授课对象:计算机科学与技术专业本课程的前导课程:面向对象程序设计、数据结构一、课程简介本课程是一门技术性很强的专业选修课。本课程是一门为计算机软件人员开设的一门计算机专业课程。Linux作为具有良好特性的操作系统,学生通过本课程的学习,掌握Linux操作系统平台下的软件系统开发方法。通过本课程的学习,学生能够熟悉Linux操作系统下C编程环境,掌握Linux操作系统下C语言编程的文件操作、标准I/O库、进程控制、进程间的通信、curses编程、网络编程等。使学生掌握Linux操作系统下C程序开发的方法和技巧,并具备开发大型应用程序的能力。掌握正确的系统工程设计方法和思想;根据问题的特征、性质以及实际情况,运用所学的计算机的基本原理和研究方法进行分析、研究,达到培养学生在本专业与相关领域中的系统应用开发能力。利用所掌握的最新的计算机知识、技术和方法进行分析比较,不断思考问题、发现问题,在不同专业领域、不同学科上有所创新和发展。培养学生良好的利用系统工程的思想分析问题的意识和信息素养,严谨求实的科学态度和刻苦钻研的精神,具有良好的社会责任感与职业道德。二、教学基本内容和要求第一部分、Linux操作系统基础第一章、历史、现状和未来发展课程教学内容:Linux的历史、现状和未来发展、Linux系统的特点和组成、发行版本的分类、Linux操作系统的安装;课程的重点、难点:Linux系统的发行版本、系统安装。课程教学要求:了解Linux操作系统;掌握系统安装方法。第二章、系统使用和操作课程教学内容:熟悉Linux的图形界面操作;使用Linux文件系统;掌握Linux各类操作命令的使用;理解并掌握Shell各种功能及其使用;课程的重点、难点:课程教学要求:第二部分、程序设计基础第三章、程序开发工具课程教学内容:第一个Linuxc程序、gcc编译器、gdb调试器。课程的重点、难点:Linux下C语言编程环境、Linux下C语言程序的调试;Linux下C语言编程环境。课程教学要求:掌握Linux下c程序的编辑、编译和运行;熟悉gcc编译器的使用;熟悉gdb调试器的使用。第四章、多文件编译课程教学内容:自定义函数、gcc警告提示的解读、库依赖、gcc常用选项、gcc的错误类型及对策、文件分割、Make工程管理器、autotools的使用。课程的重点、难点:gcc的使用和常用选项;gdb的调试方法;makefile文件的书写规则、make命令的使用。课程教学要求:熟悉gcc的使用;熟悉gcc的常用选项;gdb的调试方法。第五章、系统函数课程教学内容:数学函数的使用、字符函数的使用、系统时间与日期函数的使用、环境控制函数、内存分配函数、数据结构中常用函数。课程的重点、难点:系统函数的使用。课程教学要求:熟悉程序设计的规则。第三部分、应用开发基础第六章、文件操作课程教学内容:不带缓存的文件I/O操作、带缓存的流文件I/O操作、特殊文件的操作课程的重点、难点:系统调用,文件的维护,流的打开,读和写等操作。课程教学要求:熟悉系统调用;了解流和FILE对象;熟悉流的打开、读和写操作;熟悉文件和目录的维护。第七章、进程控制课程教学内容:进程简介、Liunx进程控制、Linux守护进程课程的重点、难点:进程的状态,进程调度,进程的一般操作和特殊操作。课程教学要求:了解进程的状态及其状态转换;了解进程的调度;第八章、进程通信课程教学内容:信号简介以及信号操作、管道简介以及管道操作、消息队列、共享内存。课程的重点、难点:管道、消息队列、各个进程间实现共享内存。课程教学要求:掌握Linux下进程通信;了解管道的概念;了解消息队列和管道;了解各个进程间如何实现共享内存。第四部分、应用开发第九章、网络程序设计课程教学内容:TCP/IP简介、Socket简介、Socket编程、网络高级编程课程的重点、难点:Socket编程。课程教学要求:了解TCP/IP;掌握Socket编程;了解ping命令的简单实现。第十章、数据库编程课程教学内容:Linux环境下数据库简介、MySQL的使用、常用API函数简介、Linux下的MySQL数据库简单应用课程的重点、难点:课程教学要求:熟悉API函数的使用;掌握Linux下的MySQL数据库的简单应用。第十一章、QT编程课程教学内容:Qt简介、Qt的安装、Qt的编译器qmake、Qt中的Action、Qt中的信号-槽机制、QtDesigner设计器、Qt应用实例;课程的重点、难点:课程教学要求:了解Qt的安装;熟悉QtDesigner设计器;掌握使用Qt设计编写程序的简单应用。三、实验教学内容及基本要求实验一:计算器在学习完第五章系统函数后,验收课程的第一个项目。本项目要求在字符界面下实现简单的计算器功能,至少包含加减乘除等简单算术运算和平方、开方等复合运算。实验二:U盘同步器在学习完第八章进程通信后,验收课程的第二个项目。本项目要求实现挂载U盘后,能选择在计算机硬盘目录和U盘目录之间同步文件(包含子目录)。要实现新的文件代替旧的文件。实验三:综合实验,结合网络,数据库,和QT在学习完第十一章QT编程后,验收课程的第三个项目。本项目为课程大作业,综合性实验,要求综合网络编程、数据库编程和QT编程等完成一个自定义项目。四、教学方法与手段本课程的教学坚持以“学生为中心”的原则,遵循学生的认知规律,激发学习兴趣,以“案例”教学来驱动、启发学生自主学习;授课教师要将信息技术整合于教学过程,充分利用网络教学环境所提供的各种功能,做到信息可见、过程可控、资源可重用,使计算机专业教学更加适应21世纪人才培养的需要;同时注重理论联系实际,面向应用,不断研究和改革教学方法和手段。五、教学学时分配章节与内容课时实验备注第一章、历史、现状和未来发展2第二章、系统使用和操作22第三章、程序开发工具2第四章、多文件编译2第五章、系统函数2项目一验收第六章、文件操作2第七章、进程控制2第八章、进程通信22项目二验收第九章、网络程序设计22第十章、数据库编程22第十一章、QT编程22项目三验收合计1616在教学中,所有32个学时都用来教学,实验由三个项目组成,项目验收为公开汇报。六、考核方式与成绩评定标准为了建立以综合管理技能考核为主线的开放式、全过程的考核体系,更好地调动学生自主学习本门课程的学习积极性,全面掌握学生对该门课程的学习动态,总结和发现教师与学生在教与学两个环节中的经验和问题,指导教师在下一个教学过程中更好地履行教师的教学责任。根据课程的特点,在课程总成绩评定中,共三个项目1.项目一(20%):项目一是给定项目,要求实现字符界面下的计算器功能。2.项目二(30%):项目二是给定项目,要求实现字符界面下的U盘同步功能3.项目二(50%):项目三是自定项目。七、教学参考资源1、参考书目:(1)陈健,宋健健译,NeilMatthew,RichardStones著,《Linux程序设计(第4版)》,北京:人民邮电出版社,2010年。(2)邱铁,周玉,张民垒编著,《Linux环境下Qt4图形界面与MySQL编程》,北京:机械工业出版社,2012年(3)杨宗德,吕光宏,刘雍编著,《Linux高级程序设计(第三版)》,北京:人民邮电

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论