hero

# 软件学院

本文于2013年录入/高2012级13班胡世懋

学术气氛:总的来讲,软件学院的学术氛一般,但学院里的两极分化非常明显,

有人大一刚完就能够在比赛中崭露头角,有人大学四年完了,电脑上的编程环境都不会搭建;有人能够坚持每天起早摸黑,不浪费每一分钟,也有人每天宅在寝室LOL,碌碌无为;有人能够凭借高分TOEFL和GRE顺利的申请到国外高校,也有人到了大三大四才开始为没过四级而着急。软件学院在川大历史上只有十年的历史,有些课上着会感觉到质量不高,也就是水,还不如自学,这里奉劝一句:书可以自己看,也可以自己学,但课一定要上,不要养成翘课的习惯。那些在同样环境下学得很牛B的学长学姐就是很好的例子,甚至有部分人是从不喜欢到喜欢,当一个程序经过自己几小时的编程设计出来时会有无比的成就感。

活动氛围:学院的活动几乎都集中在大一,不过软件的活动都搞得蛮好的,最大的活动要数大一的“迎新晚会”,绝对高质量,还有“辩论赛”,新生“篮球赛”“足球赛”“运动会”等。还有就是学生会各个部门的活动,川大的学生会是搞得比较好的,也很靠谱,在里面也可以得到很好的锻炼,还可以认识很多优秀的学长学姐。当然,软件这个专业也有很多比赛和项目:ACM竞赛,如软件设计大赛,三大计划,萌芽基金项目等,还有很多IT公司自己举办的比赛。这里多提一句,ACM竞赛主要是计算机算法,这个对数学要求很高,但是软件学院没有搞算法竞赛的传统,主要是计算机学院在搞ACM,软件学院的大都走的是项目路线。有位学长的话:“若果你能够算法与项目兼备,大公司绝对主动找你。”,再者,在大一上期期末时,“三大计划”会启动,不要认为自己才大一什么都不会而不敢申请,一个字“报”,而且通过的机率很大。到了大一下期,很多不懂得问题都可以自己解决的。

学院专业:软件工程

专业介绍:

软件工程

培养目标:面向软件产业,以构思、设计、实施和运行实际工程为工程教育背景环境,培养拥有团队协作精神,理论基础知识扎实,能灵活运用专业知识解决实际软件工程问题,具有软件实践经验,适应现代化工程团队,能依据工程需要自发学习并优化自身的理论知识体系,拥有较强的创新创业能力、练达的社会交往能力、卓越的英语表达能力的中高端软件技术人才。在大三时根据自己的兴趣有三个选择方向:“软件工程”“信息安全”“数字娱乐”。

就业方向:至于就业,大部分人都会进入IT公司,可能会是“百度”,“腾讯”等大公司,也可能是些正在成长的小公司,还可能是游戏设计领域,如“完美”,如果英语够好,“Google”,“facebook”也不是不可能(那是要相当牛的人)。刚开始都是当一名程序员,然后持续几年,这要看你的学习能力和领悟能力,然后一步一步往上爬,项目经理主管等,如果够牛B,还可能成为构架师,当然这需要相当相当后的功底...当然也不是所有人都要进IT公司,有一部分人也会进入其他行业,比如银行,债券公司,医院,房地产…因为在这个逐渐智能化的社会每个地方会用到计算机软件。还有一部分人会选择自己创业,这可专业创业还是蛮容易的,只要你有idea,要记住这不是拼爹的时代,拼的是“idea”,比如“愤怒的小鸟”,“找你妹”,“阿里巴巴”,“淘宝”…这些都是些很好的例子。剩下的一部分人可能会选择继续深造,读研或出国,IT最前沿的技术肯定是在国外…总之每个人都有自己的选择,都有属于自己的梦想,没有最好的路,只有最适合自己的路。

专业课详细介绍:

课程名称:程序设计基础(C语言)

课程内容:这是本专业的第一门也是非常重要的一门专业,和校公选的C语言不同之处在于更注重编程能力。另外,C语言是一切语言的基础,这门课先会介绍C语言的基础语法,然后会介绍一些简单的排序算法,接着就是C的灵魂——指针,最后会编一些类似电话簿的完整项目。

学习目标:提高阅读代码和编写代码的能力,熟练C语言基本语法,掌握指针和数组的使用,能够设计一个完整的程序。

笔者看法:动手能力,而不是去整天拿着课本看,越到后面你越能感觉到读懂代码和自己会敲代码是有很大区别的。考试是分四次,每次占期末的20分,都是纯编程,一定要重视,因为期末考试也只占20分。指针是C语言的灵魂,可能刚学时会感觉到困难,但不用怕,就像有位学长给我说的“连指针都拿不下来,还想学后面的东西?”,推荐一本书《C和指针》(弄懂指针后再看)。一句话,掌握了指针,就是掌握了C语言的精髓。

教材:《C语言程序设计(C99版)》清华大学出版社

课程名称:计算机系统导论

课程内容:大体介绍计算机的构造、操作原理、计算机网络等,是对以后要学的一些专业课的框架性介绍,让大家有个感性的认识,PPT是英文的,但老师都是讲的中文。

学习目标:大体了解计算机的软硬件、操作原理并掌握一些命令提示符和网页代码编写。

笔者看法:课上我基本上是旷过去的,但是每次的上机课都是叫大家做实验,给的题目也不是很容易,但是一定要弄懂,可以找学长学姐要答案,或者自己在网上找。期末的考题80%都是从平时的选择题和实验中抽取的,还有20%是编写批处理文件和html。

教材:《计算机文化》(英文版)机械工业出版社

课程名称:数字逻辑

课程内容:数字电路的设计,英文PPT,但老师用中文讲,用与、或、非的逻辑解决问题,设计电路等

学习目标:掌握进制转换,逻辑语的使用以及逻辑图的设计。

笔者看法:这门课还是有难度的,但是老师上课会讲的非常清楚,每个只是点都会反复用例子和题目来讲解,只要课认真听,作业弄懂了,考试也都是一样类型的题,由于书是英文的,一般都会在学校旧书店去买中文版的二手书。

教材:《数字逻辑—应用与设计》(英文版)机械工业出版社

课程名称:面向对象程序设计导论

课程内容:这门课是用java讲的,以前的年级都是大二才开始学,今年课程改革,放到了大一下期,主要讲的是java语言的基础语法,图形语言,面向对象编程的思想,还有程序的设计模式,如果你选到了舒莉老师(很强大哦)的课,她还会让你做一个基于安卓的应用。

学习目标:读懂java代码,提高java语言的编程能力,掌握java的基本图形语言,理解面向对象编程思想,会画UML类图,了解各种设计模式,理解设计思想,并能够设计简单的项目。

笔者看法:这门课你学的东西其实要看你的老师,听其他班的人说他们的课很水,平时连作业都没有,大半学期过去感觉什么也没学到,而我们班的老师(舒莉),可是把我们累惨了,每上完一次课,就够你忙到周末了。除了大量的编程作业以外,还会叫你做课程项目,我们这学期就是两人一组,做一个基于安卓的出租车呼叫系统,其实就是一个安卓机上的GPS应用,一切都是重不会开始,自己上网搜代码学习,自己入门安卓,到最后你都不敢相信是自己做出来的,其实这期间你已经由一个什么都不会的“菜鸟”变成领先很多人的“菜鸟”了,另外提一句,安卓是目前的潮流。分数方面,平时的编程作业一定要交,计入期末成绩,最后的期末考试也不是很难,最重要的是平时专业知识的学习。

教材:有本英文电子教材ssd3,网上能搜到

基础必修课详细介绍:

课程名称:微积分-1

课程内容:学习高等数学:微分,积分,级数等

学习目标:理解并会做题就行了

笔者看法:个人觉得高数除了傅里叶级数外,其实和计算机关系不大,但这门课学分重,到了大一下是5个学分,挂科率也高,但是只要每次把作业交了,点名都到,作业上的题都认真做了,期末前一个月学霸一把,天天刷题,最后90+不是问题,有人高数从头旷到尾同样高分通过。

教材:《高等数学》同济大学版

课程名称:线性代数

课程内容:矩阵,矩阵的性质,矩阵运算,矩阵的秩,正定矩阵等

学习目标:理解并掌握矩阵

笔者看法:线性代数和计算机是密切相关的,特别是计算机图形学,全是一个接一个的矩阵,川大的图形图像是全国数一数二的,所以想朝这方面发展的一定要学好。线性代数最后的考试并不难,每年都是那些题型,考前疯狂刷题就可以上90。

教材:《线性代数》川大数学学院

课程名称:大学物理

课程内容:振动,光学,量子物理。

学习目标:基本概念弄清楚,作业做完就行了。

笔者看法:本来大物是很难的,但是不必投入太多精力在这里面,还是考前刷题,最后考得也很水。

教材:《大学物理》高等教育出版社

课程名称:军事理论,思修,近代史纲要,大学生心理健康

课程内容:看名字就应该知道是干嘛的…

学习目标:闭卷考的一个字“背”,开卷的考前多翻书。

笔者看法:这些课都是我们俗称的“水课”,但确是必修,有些学分还不低,平时可以不学,但考试一定要考好,有些老师偶尔会点名,所以还是不要翘课为好,点名未到是要影响期末成绩的。

教材:略

大二到大四专业课:

必修:离散数学、数据结构与算法、软件开发实践、计算机组成和体系结构、软件工程导论、系统级编程、操作系统、IT企业实训、计算机网络、毕业设计

选修:艺术鉴赏与人文知识、游戏编程实践-Ⅰ、游戏编程技术-Ⅰ、三维造型与动画技术、信息检索与利用(理工类)、计算机图形学、数学试验(matlab软件)、多媒体技术、软件创新实验、分布式系统与互联网(英语)、软件需求分析、软件质量保证与测试(双语)、游戏编程技术-Ⅱ、嵌入式系统、游戏编程实践-Ⅱ、编译原理、网络与信息攻击与防护、软件工程讨论会、建模与分析(全英文)、C++语言程序设计(英语)、软件构造、大学写作、数学建模、生物科学导论、团队激励与沟通、人机交互概论、无线网络技术、网络与信息安全技术、软件过程与管理、中间件技术、游戏设计概论、软件设计与体系结构、软件工程社会和职业问题、工程经济学、软件工程的形式化方法(英语)、专业英语、Web应用开发、计算机密码学、人工智能导论、信息隐藏、游戏编程新技术专题、物联网新技术专题、软件工程新技术专题、IT行业新技术专题、职业生涯规划、信息安全产品开发实践。