IS5311 - JAVA Programming for Business Applications
授课教师:
课程目标
The aim of this course is to introduce the students to essential business problem solving with programming concepts and skill, with emphasis on object-oriented programming for business information systems construction.
On completion of this course, student should be able to:
a) understand how to solve basic problems with Java;
b) construct simple business application with Java classes/libraries.
课程考核
来自考核文件
实际考核内容应当以教师在课程中公布为准,此处仅为参考
平时性考核 | |
---|---|
持续性考核(作业,问题与提问) | 10% |
个人项目 | 40% |
个人实验考核 | 50% |
课程考核文件链接:IS5311
课程评论(选自2022版选课心得)
1-8周
每周会有个人作业且难度较大,对没基础的同学来说是很大的挑战。花费时间较多,且老师严查同学作业之间的相似度,发现抄作业现象,双方都零分。- 期末有一个
个人project
和考试
。project考察所有知识点的综合运用,需要自己认真研究编写,老师禁止一切抄袭和超纲的代码出现,一经发现直接零分。 - 期末考试考查基础知识的细节问题。虽然整体课程难度较大,但是老师能保证大部分同学能得B,不用担心挂科问题。
- 选修慎选。
Java对数据分析帮助不是很大,但是对于想做产品经理的同学,基础知识学的比较扎实有利于和程序员之间的沟通,对于想从事Java编程的同学,本课学的比较基础,需要课外继续精进。
课程评论(2023版)
如果不喜欢纯商科课程,那我非常推荐Java!
- 老师是LAU MAN KIT,香港人,口音非常港式,不过可以习惯。课间可以粤语或者普通话交流。给分非常不错,拿A是很有可能的。
- 这门课会非常详尽地讲Java的基础语法,从hello world到面向对象,会少量涉及一些数据结构与算法的内容,对已经学过Java的同学没有太大帮助,对想转码的同学,还有海量内容需要自己补充。平时上课写代码不准用IDE,只能Notepad++。
- 作业分为In-Class和take-home。In-Class比较简单,不过还是有很多同学下课后留堂写作业。后来老师大发慈悲,多给了一天,可以第二天再交In-Class。take-home会更有难度。总体来说,初学者还是要花很多功夫来学的。
- 有个人project,没有小组Project! 没有team work是本人选这门课的重要因素之一。我们个人project是实现用邻接表实现graph,会给一点点应用背景,但其实只是基本的数据结构。对非IT背景的同学来说,要花点时间理解。
- 考试是上机考,开卷,有选择题,有代码题。题量很大,有点小难,老师提前说明了绝对写不完,最终评分会scaled。(原话:if the highest score student get 50 from the test and you got 40, the highest one will be scaled to 100 and your score is 80)。所以不用担心,好好复习就行。
- 平时会不定期发一些bonus的题,比较难。可以不做,不影响最终得分。如果都做出来了,期末评分可以提升一个等级(例如,本来是B-,可以提升为B)。
——本愿寺显如 FIT
上课风格很简约,每句话都有用,没用的话一句不说,讲Java的基本语法和常用的library。老师讲课时快时慢,人非常有耐心,邮件回复非常快且解答详细。这门课也是0基础入门课,比Python更难一些,适合有编程基础的同学来刷分,上学期Python如果得分不错,就可以选这门课。这门课平时每周有作业,努力过就给满分,如果有错老师会帮你改错,但不会扣分。会有一个小的个人项目,不用写报告不用展示,交代码就可以。期末考试占50%,题量非常多,但老师根据排名和比例赋分,第一名为满分,作业交了的话排名靠后也不会挂。老师给Bonus很大方,一共有10分可以加在总分上,想拿高分也可以靠Bonus。
——Lay MIS
课程内容: 该课程是由一位香港老师(Dr. LAU MAN KIT)进行教授的,课程内容主要围绕Java语言基础以及一点GUI设计。内容与商业结合不多,更多的是讲纯粹的编程语言,教会你如何运用Java写一些简单的交互程序,并能够帮助你构建一个较为基础的编程思维,从而也能让零基础编程经验的同学看懂理解Java语言(也能够帮助Python语言的理解,因为Java比Python更为规范完整)。
课程难度: 对于没有学习过编程语言的同学来说难度较大,难点主要在Java编程的简洁性(封装函数等),逻辑性(算法板块比较抽象)等;但是对于本科有学过Java的同学来说课程较为基础。
考核方式: 除了日常的上课考勤,作业以及回答问题以外,最主要的考核在于个人项目+期末上机考试:
- 个人项目即整合本学期所有学习的内容进行一个项目编写。
- 上机考试(开卷)则由选择题以及编程题构成,题量相对较多,如果是没有编程经验的同学来说是做不完的(这个老师考前有明确说过),所以平时也要好好学,因为期末哪怕开卷也来不及翻。但是只要认真用心学,老师都是不会挂人的
- 本课还有一个Bonus板块,如果能够每个bonus都拿到,整个期末等级能够提升一个档次,例如从B到B+
就业帮助:该课能够帮助同学们在后期工作中理解产品的研发过程以及算法逻辑,尤其是对于有志于进入互联网行业的同学,但是如果想通过本课从文科岗位转研发岗等技术岗,课后还需要大量的练习与拓展学习。
——熊 MIS
如果没有编程基础可能需要多花精力自学的一门课。课程前半部分是讲ppt,后半节课lab,老师带着敲代码。lab的节奏有些快,需要课下自己多看多理解。有一个个人的project,大概200-300行代码,认真学可以写出来。期末考试题量比较大,一般都很难全部做完,如果编译error给0分(老师说的)。但是亲测由于按比例赋分,所以分数不会给得太低,整体还是值得一学。
——Peggy MIS