一、 专业方向情况
1. 培养方向简介
Python因其能轻松地将其他语言(比如C++)编写的扩充模块联接在一起,而又被称为“胶水语言”。其平台无关性以及丰富且强大的扩展库为技术和科研人员提供了非常合适的开发环境,被广泛用于网络编程、图形图像处理以及人工智能的重要研究领域机器学习。
C++自问世以来,由于极高的灵活性、强大的功能和非常高的效率,已使其成立应用最为广泛的一种编程语言,现广泛应用于网络、语音、视频、图形图像、人工智能等不同领域中。近几年随着互联网技术的迅速发展使得C++在网络应用软件开发成为了一个最引人关注的行业。
本方向致力于培养具有扎实C++和Python基础,并能熟练运用这两种语言进行桌面应用程序开发、网络编程及图形图像处理的复合型软件人才。学生毕业后可胜任爬虫数据分析、计算机视觉、机器学习等热门岗位的开发工作,同时也可为有意参加硕士入学考试的同学奠定一个良好的专业基础。
2. 培养目标
(1). 能掌握Python的核心思想,并使用Scrapy框架进行网络爬虫的开发。
(2). 能熟练使用Python的图像处理和机器学习库进行智能工程项目的开发。
(3). 能深入了解C++基本原理和思想,并能使用STL组件进行高效的项目开发。
(4). 能熟练使用集成工具开发进行WINDOWS或Unix环境下的软件的开发、调试和产品发布。
(5). 对TCP、IP、UDP协议有着较深的理解,并能熟练使用工具开发各种典型的网络应用程序。
(6). 能熟练使用UML建模工具进行基本的面向对象分析、模型设计和代码生成工作。
(7). 能较熟练使用的数据结构进行算法设计和编码实现。
(8). 能使用ADO或ODBC模型对数据库(ORACLE或SQLSERVER)进行开发。
(9). 能熟练使用QTCreater进行QT界面程序开发,完成跨平台的应用程序开发。
3. 要求
(1). 具有C++基础知识,能使用C++编写简单的程序。
(2). 具有数据库基本知识,能对MSSQLSERVER或ORACLE进行简单的操作。
(3). 通过C++入门考试和面试。
(4). 具有一定的团队协作、语言沟通能力。
二、 方向课程体系
1. 方向所开设课程
(1). C++进阶(2个学分)
本课程是C++基础的一门后续课程,其主要对C++编程中的较高级的部分,包括虚函数、函数模板、字符串类、异常机制等内容进行一个详细讲解和训练,使学生能掌握高级C++编程的能力,对C++的优点有着更深层次的认识,课程最后以一个项目的设计的设计与实现来使学生对面向对象的思想和方法有着进一步的巩固。
(2). 高效C++开发(4个学分)
本门课程是在原有的C++基础课程上开设的一门专业方向课,这门课程通过许多生动的案例对C++的各种难懂的概念进行深化讲解,同时重点讲解使用标准模板库(STL),如使用类模板、容器、迭代器、算法等高级组件来实现高质量的C++程序开发,使同学能掌握高级的C++开发技能。
(3). Python基础(4个学分)
本门课程是Python语言的入门和进阶课程,要求学生有其他语言的扎实基础和一定的网络协议知识,在此基础上通过学习Python的核心编程思想和常用开发库,能使用Scrapy框架进行网络爬虫的开发,定向抓取网络中指定领域的海量信息。
(4). UML面向对象分析与设计(4个学分)
本门课程是使用面向对象技术(如C++、JAVA、.C#等)开发程序的必备课程。通过以IBM ROSE为工具介绍了如何使用用例图、时序图、类图、组件图、部署图等模型来实现面向对象的分析和设计工作,并对数据库和WEB建模进行了介绍,使同学们可以利用工具来实现高效的程序分析和设计工作,并能快速地从模型中生成开发框架代码,大大提高程序设计的效率和质量。
(5). 系统设计与实施(4个学分)
本门课程是一门综合实践课,通过一个企业真实的项目作为案例来驱动,使同学们可以将UML、 程序设计、数据开发、设计模式等多门课程的知识结合起来,完成项目的分析、设计、编码、优化等程序开发的各个环节中。通过这种训练可以培养学生各种知识的综合运用能力、积累宝贵的实践经验,达到企业对软件开发人员的基本技能要求。
(6). 计算机视觉(4个学分)
本门课程是人工智能领域的基础核心课程,会向同学门系统地介绍计算机视觉的基本原理、典型方法和实用技术,内容包括图像采集、图像预处理、基元检测、目标分割、目标描述、形状特性分析、运动特性分析以及场景解释等。同学门可以从中了解计算机视觉的基本原理,并能据此解决智能工程中的一些具体问题,比如智能监控、人机交互等。
(7). 数据结构与算法(2个学分)
本课程将对常见的各种数据结构如队列、链表、堆等主要的原理、使用场景及优缺点进行介绍,,并对其常用的算法加、删除、插入、排序等进行分析和训练,学生通过学习能对各种基本结构的内部结构和算法效率有着较清楚的认识。从而可根据问题需要选择合适的数据结构与相应算法进行分析和设计,为进一步实际的项目开发奠定基础。
(8). Python与机器学习(4个学分)
本门课程是Python基础和计算机视觉的后续课程,原理部分主要涉及机器学习原理和半监督学习算法,然后通过掌握机器学习框架scikit-learn能进行图像的处理。通过课程的学习,学生能够应用python的AI框架解决智能工程项目的图形图像处理处理问题。
(9). 基于QT平台的C++应用开发(4个学分)
本课程中的内容中,前5章主要涉及Qt基础知识,后两个部分主要讲解Qt的中高级编程,包括布局管理、事件处理、二维/三维图形、拖放、项视图类、容器类、输入/输出、数据库、多线程、网络、XML、国际化、嵌入式编程等内容。通过本学期的学习,学生要能对Qt开发有一个大致的了解,能够完成一些基本的Qt程序的开发工作,同时对Qt开发中的一些关键技术和框架有一个较为全面的掌握。本次课程尽量精简理论知识的内容,注重动手实践能力,以实际的项目开发为基础来学习本门课程。
(10). 软件测试(2个学分)
本课程对软件测试的基本原理和要求进行介绍,并对一个常用的测试工具的操作进行讲解,从而能通过使用工具完成代码的基本测试,如黑盒测试、白盒测试,并对软件测试结果编写正确的测试报告。课程中将采用一个案例来使学生能掌握如何编写测试用例、代码测试及测试报告的编制。
(11). 编译原理(4学分)
通过本课程的学习,使学生掌握高级程序设计语言的编译原理和基本技术、具体设计实现编译程序的基本技能,特别是对形式语言和自动机、程序自动生成、语法制导翻译、数据流分析、控制结构分析及优化技术等基本原理和技术等基本原理和技术有着较深入的了解。
(12). C++数据库编程
使学生能掌握VC开发环境基础知识,掌握SQLSERVER数据库的配置、管理和SQL数据操作语句。灵活掌握ODBC模型、ADO模型进行数据开发及常用控件的使用。特别是对数据库的连接、数据库操纵、数据集读取、内容的展现、报表的设计与打印等常用技术进行详细介绍和实践。
2. 方向课程总览及安排
序号 |
课程名称 |
学分 |
课时 |
课程安排 |
1 |
C++进阶 |
2 |
32 |
大三上(1-8周) |
2 |
高效C++开发 |
4 |
64 |
大三上(1-8周) |
3 |
数据结构与算法分析 |
2 |
32 |
大三上(1-8周) |
4 |
Python基础 |
4 |
64 |
大三上(1-8周) |
5 |
计算机视觉 |
4 |
64 |
大三上(10-17周) |
6 |
C++数据库编程 |
2 |
32 |
大三上(10-17周) |
7 |
Python与机器学习 |
4 |
64 |
大三上(10-17周) |
8 |
基于QT平台的C++应用开发 |
4 |
64 |
大三(1-16周) |
9 |
UML面向对象分析与设计 |
4 |
64 |
大三(1-16周) |
10 |
系统设计与实施 |
4 |
64 |
大三(1-16周) |
11 |
软件测试 |
2 |
32 |
大三(1-16周) |
12 |
编译原理 |
4 |
64 |
大三(1-16周) |
三、 教学资源(项目、案例或比赛)
1. 项目:出入境自助填表系统(C++高效编程)
2. 项目:公园游乐场信息管理系统电子售票端(windows核心编程)
3. 项目:仿QQ网络即时通信系统(VC网络编程)
4. 项目:计科系优课平台在线考试系统(系统设计与实施)
5. 项目:智慧家庭控制中心PC端(综合技能运用)
6. 项目:JUMPER安全网络平台(综合技能运用)
7. 比赛:IOS系统自拟题目APP开发(IOS课程)
四、 方向学生简历框架和要求
1. 基本信息,包括姓名、学校、生源地、性别、身高、照片(彩色免冠1寸)等
2. 联系方式,包括手机、电子邮箱、通信地址等
3. 求职意向,用于填写个人求职的职位和意向
4. 技能和特长.包括专业能力、项目经验、专业核心课程、综合素质能力等。其中项目经验属于填写重点,项目经验需填写四个及以上项目,每个项目需要填写项目的名称、项目开始时间、项目中所承担职务、所用到的技术和知识以及项目描述和个人体会等
5. 获奖情况,说明在校期间所获得的奖项
6. 自我评价,对自身的个人评价,字数100-200字内。
具体模板如下所示:
基本信息 |
姓名 |
学校 |
|
生源地 |
|
性别 |
|
照片 |
|
专业 |
|
民族 |
|
身高 |
|
学位 |
|
政治 |
|
健康状况 |
|
|
面貌 |
英语 |
|
兴趣 |
|
出生日期 |
|
等级 |
爱好 |
联系方式 |
手机 |
|
电子邮箱 |
|
通信地址 |
|
求职意向 |
|
技能与特长 |
专业能力 |
|
项目经验 |
项目一 |
|
项目名称: *XXXX项目 |
|
项目时间: *项目开展的具体时间 |
|
项目职务: *在项目中所担任的职务 |
|
所用知识: *在项目中所用到的开发知识、技术等 |
|
项目描述: *对项目的主要功能进行讲解,详细说明项目具体需要完成什么事情,使用了哪些技术来解决了哪些问题,最后,项目达到了什么效果。 |
|
个人体会: *完成项目后,个人的收获和体会 |
|
|
|
项目二 |
|
项目名称: *XXXX项目 |
|
项目时间: *项目开展的具体时间 |
|
项目职务: *在项目中所担任的职务 |
|
所用知识: *在项目中所用到的开发知识、技术等 |
|
项目描述: *对项目的主要功能进行讲解,详细说明项目具体需要完成什么事情,使用了哪些技术来解决了哪些问题,最后,项目达到了什么效果。 |
|
个人体会: *完成项目后,个人的收获和体会 |
|
|
|
项目三 |
|
项目名称: *XXXX项目 |
|
项目时间: *项目开展的具体时间 |
|
项目职务: *在项目中所担任的职务 |
|
所用知识: *在项目中所用到的开发知识、技术等 |
|
项目描述: *对项目的主要功能进行讲解,详细说明项目具体需要完成什么事情,使用了哪些技术来解决了哪些问题,最后,项目达到了什么效果。 |
|
个人体会: *完成项目后,个人的收获和体会 |
|
|
|
项目四 |
|
项目名称: *XXXX项目 |
|
项目时间: *项目开展的具体时间 |
|
项目职务: *在项目中所担任的职务 |
|
所用知识: *在项目中所用到的开发知识、技术等 |
|
项目描述: *对项目的主要功能进行讲解,详细说明项目具体需要完成什么事情,使用了哪些技术来解决了哪些问题,最后,项目达到了什么效果。 |
|
个人体会: *完成项目后,个人的收获和体会 |
|
|
专业核心课程 |
|
综合素质能力 |
|
主要获奖情况 |
|
自我评价 |
|
五、 本方向毕业论文/设计
1. 类型:应用研究或技术开发
2. 对应要求
(1). 题目来源:大三实践项目或实习期间从事的项目。
(2). 格式要求:符合《四川大学锦城学院毕业论文样本格式(07版)教务部》与《本科毕业论文参考文献格式补充规定》。
(3). 工作量要求:正文字数须在1万字以上(不含文中代码),且正文页码须在20页以上。建议在20-25页之间为宜。
(4). 真实性要求:论文不得出现弄虚作假、抄袭或其它有违学术道德行为,符合2013年四川大学锦城学院关于毕业论文管理相关规定要求。
3. 框架结构:技术开发类论文须有如下几个部分构成
(1). 引言:
(a) 选题背景、
(b) 选题目的及意义、
(c) 国内外研究现状、
(d) 论文思路与结构
(2). 系统相关技术介绍
(3). 系统分析与设计:需求分析、系统设计、代码编写
(4). 系统成果
(a) 代码测试与结果
(b) 系统运行效果展示
(c) 系统重点模块分析
(5). 总结与展望
(a) 小结文中成果与不足
(b) 论文下一步工作优化与完善
(6). 参考文献
(7). 致谢
(8). 中英文翻译