课程简介

《Java程序设计》课程是使用Java语言进行应用程序设计的课程,针对各专业的大学本科生开设。课程的主要目标有三: 一、掌握Java语言的语法,能够较为深入理解Java语言机制,掌握Java语言面向对象的特点。 二、掌握JavaSE中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用。三、能够编写有一定规模的应用程序,养成良好的编程习惯,会使用重构、设计模式、单元测试、日志、质量管理工具提高代码的质量。 对于学过“计算机基础、计算概论或C语言的学生”尤为适用。

课程大纲


第1章  Java语言与面向对象的程序设计
第2  简单的Java程序
第3  数据运算、流控制和数组
第4  类、包和接口
第5  深入理解Java语言
第6  异常处理
第7 工具类及常用算法
第8  Java的多线程
第9  流、文件及基于文本的应用
第10  图形用户界面
第11  网络、多媒体和数据库编程
第12  如何提高代码质量



课程说明

《Java程序设计》是北京大学信息科学技术学院的选修课程。
      选修该课的同学一般已经具有了C语言程序设计的基础。本课程是在已有的基础上让学习者能够以Java语言编写具有一定规模、综合性的应用程序。对后面的操作系统、编译原理等课程来说,该课程是一个承上启下的课程。
      从课时内容而言,主要有三部分:
      第一部分是Java语言部分,包括Java概述,简单的Java程序,变量、语句、数组,类、包、接口,深入理解Java语言,异常处理等。这部分内容的目的是掌握Java语言的语法,能够较为深入理解Java语言机制,掌握Java语言面向对象的特点。
      第二部分是Java的类库及应用,包括工具类及常用算法、多线程、流、文件及基于文本的应用、图形用户界面、网络、多媒体和数据库编程等,这部分的目标是掌握JavaSE中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用。
     第三部分是关于如何写出出高质量的代码,包括集成开发环境的使用,单元测试、日志、质量管理工具的使用,掌握重构和设计模式,这部分的目标是综合应用本课程的知识,能够编写有一定规模的应用程序,养成良好的编程习惯,能够编写高代码的质量。
     课程一方面重视语言的基础和原理,另一方面注意实际编程能力的培养。
     课程有一些小的作业,在课程结束还要求开发有一定工作量、有中等难度的项目。


常见问题


1. Java是什么样的语言?
答:Java语言是一门用途广泛的、面向对象的语言。Java语言可以编写桌面应用、手机应用及企业应用。Java简洁优雅,易于学习。

2. 本课程系统吗?
答:会的。本课程要讲Java语言,对语言的一些机制会详细讲解,所以具有系统性。

3. 本课程实用吗?
答:实用。本课程要讲Java语言在文本、文件、窗体界面、图形、数据库、多线程、并行编程方面的应用。还会讲到编好代码的经验与技巧,包括面向对象的思想、软件工程中常用的方法。课程中有很多的趣的示例哟。

4. 主要讲桌面应用还是手机应用?
答:本课程要讲桌面应用。由于受课时的限制,本课程不讲手机应用,不过,除了界面不同,在文件、图形、数据库、多线程、并行编程方面手机应用与桌面应用是一样的。

5. 本课程难学吗?
答:本课程会循序渐进地讲解,对于大部分同学来说,是可以做到的。针对基础较弱的同学,我们会补充一些基础材料;针对基础很好的同学,我们也会提供一些深入的材料(不作为考试要求)。

6. 本课程会大量使用poj吗?
答:本课程在基本知识阶段会使用PoJ(在线自动判分)这种方式来提交作业,但是后面的程序要求综合应用、要求使用良好的设计模式、养成良好的编程习惯,这些不是POJ所能判断的,所以不太会使用POJ。我们会更多地使用“作业互评”的方式让大家互相学习、互相借鉴。

7. 我可以取得证书吗?
答: 是的,达到要求后将得到北京大学主讲教师签署的完成课程学习的证书。

8. 讲这门课的大仕老师如何啊?
答:传说中的大仕老师,平易近人。看他的照片,不帅;听他的声音,不亮;看来,他只剩下一个办法:将课讲好!


参考资料

拓展阅读

其他

主讲教师

唐大仕   讲师

唐大仕,博士,北京大学信息科学技术学院教师,在程序设计方面有多年的项目开发经验和教学经验,任教育部计算机教指委分委专家组成员。出版的教材包括《Java程序设计》(曾获第六届全国高校出版社优秀畅销书奖)《C#程序设计教程》《VB程序设计》《Visual C++.NET程序设计》等。在北京大学开设多门程序设计课程,课程内容以系统知识与实践应用相结合,注重培养对知识体系的深入理解,在与实际工作生活相结合的应用实践中分析问题、解决问题的能力。讲授过程以循序渐进为特色,善于启发。课堂风格轻快幽默。

课程助教

  • dyc

  • 林凤绿

  • stormier

相关课程推荐

  • 正在进行
    计算机辅助翻译原理与实践
    本课程适用于翻译硕士专业研究生、外语专业高年级本科生、翻译工作者以及外语爱好者等。现代语言服务行业要求从业人员必须具有利用计算机及网络来使用各类技术辅助工具帮助其工作的能力,而不是仅仅学会几款狭义的计算机辅助翻译软件。
  • 正在进行
    数据结构与算法(下)
    计算机是现代社会中用于解决问题的重要工具。利用计算机解决实际问题需要将问题抽象,并对数据进行操作,最后通过计算机程序求解问题。而本门课程主要内容就是对以上内容进行研究。 该课程并未正式开课,报名后仅提供前三周课程视频预览,开课信息敬请持续关注。
  • 正在进行
    算法初步
    这是关于计算机算法的入门课程。适合受过高中程度的教育,希望对计算机算法相关话题有比较专业的了解,但还没系统学习的学习者。这里提供的完整内容(包括总共400分钟讲课视频,80道习题和一套包含15个题的试卷),既可以作为大学非计算机专业的选修课材料,也可以用于大学面向学有余力的高中生开设的AP(先修)课程。 课程概述 在概述了算法是什么、算法的描述、算法的分析和算法的类型等四个方面的要点之后,课程选择了10个有代表性的问题进行算法求解的讨论。采用问题导入,算法思路,算法描述和算法分析的基本框架,展现了计算机科学中常用的算法思维内涵。同时,对有些问题,通过强调一题多解的过程,体现了丰富的算法设计思想。 课程目标 通过本课程的学习,预期学习者将获得关于算法世界的一个多维度、有深度的视野,通过熟悉10个典型的问题求解过程,领会丰富多彩的算法思想和算法作为一门学问所关心的要点。学完了本课程,能比较专业地与他人讨论算法问题。

恭喜,报名成功

进入学习中心

恭喜,报名成功

确定

请进入开课界面预览

确定

X

请去您的邮箱验证

还没收到验证邮件?

1. 试试去广告邮件、垃圾邮件目录看看

2. 再次发送验证邮件

对不起,班次容量已满

请报名下一班次

知道了~!

对不起,您没有操作权限

知道了~!