第一篇:Java面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱
Java面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)大綱
Object-Oriented Programming with Java Syllabus
課程名稱 課程類別 建設(shè)單位/教研室 前后課程 適用專業(yè)、層次 Java面向?qū)ο蟪绦蛟O(shè)課程英文名Object-Oriented Programming with Java 計(jì) 稱 專業(yè)必修課 學(xué)分/學(xué)時(shí) 4.0/42+42 計(jì)算機(jī)系/軟件工程教研室 考核方式 考試 C語(yǔ)言程序設(shè)計(jì)
軟件工程、計(jì)算機(jī)科學(xué)與技術(shù)、網(wǎng)絡(luò)工程
Upon completion of this course, students should master the basic knowledge of Java language, understand and grasp the basic object-oriented programming design ideas and skillfully use Java language to write, compile and debug programs.These would lay a good foundation for students on independently finish the work of program development with Java in the future.教學(xué)目的
The emphasis: 1.The origin of Java, Why should we learn Java language, Java cross-platform principle analysis(JVM)and Java Environment variable configuration.2.Data and Expressions: including Character Strings, Variables and Assignment, Primitive Data Types, Expressions, Data Conversion, Interactive Programs.3.Oriented object programming ideas: including Class, Object, Variables, Methods, Encapsulation, Inheritance, Polymorphism, Interface and so on.4.Java statements: including conditionals and loops statements.5.Arrays: Declaring and using one-dimensional arrays and two-dimensional arrays.6.Exceptions: including exception handling, uncaught exceptions, and try-catch statement and so on.7.GUI: including event handling and graphics user interface.The difficulty:
Object-oriented concept and idea, establishing application model and algorithm of description, the algorithm optimization of program and so on.教材和主要參考資料: Text and references Text :
John Lewis “Java程序設(shè)計(jì)教程(第六版)英文版” 電子工業(yè)出版社 ISBN-978-7-121-08808-7 References:
1.《Java編程思想(英文版 第3版)》,(美)Bruce Eckel編,機(jī)械工業(yè)出版社出版社; 2.Java程序設(shè)計(jì)基礎(chǔ)》,(美)Gary J.Bronson編, 趙德奎 林仕平譯,北京大學(xué)出版社。
3.Cay S.Horstmann, Gary Cornell.Java 2核心技術(shù) 卷I:基礎(chǔ)知識(shí).機(jī)械工業(yè)出版社, 2001.4.Cay S.Horstmann, Gary Cornell.Java 2核心技術(shù) 卷II:高級(jí)特性.機(jī)械工業(yè)出版社, 2001.教學(xué)內(nèi)容 學(xué)時(shí) 基本要求
按章、節(jié)具體列出
教學(xué)內(nèi)容 Topic 具體列出教學(xué)的基本要求,如了解、理解、掌握及應(yīng)用等。
By the end of chapter ,students should understand Chapter 1 Introduction
Chapter 2 Data and ExpressionsChapter 3 Using Classes and Objects Chapter 4 Writing Classes 3+3 To be able to have a fundamental understanding of software role in a computer system.? To know components of a computer ? To understand how those components interact ? To grasp how computers store and manipulate information ? To know how computers are connected into networks to share information.? To profile programming and programming languages ? To profile an introduction to Java ? To grasp object-oriented concepts 3+6 Explore some of the basic types of data used in a Java program and the use of expressions to perform calculations.? To understand character strings, concatenation, and escape sequences.? To grasp the declaration and use of variables.? To be familiar with Java primitive data types.? To understand expressions and operator precedence.? To grasp the syntax and processing of expressions.? To understand the types of data conversions and the mechanisms for
accomplishing them.? To know how to create interactive programs.? To understand the basic graphic concepts and the techniques for drawing
shapes.? To know the concept of a Java applet.4+4 Use the predefined classes in the Java class library that are provided to us to make the process of writing programs easier.? To grasp the creation of objects and the use of object reference variables.? To be familiar with the services provided by the String class.? To know how the java standard class library is organized into packages.? To be familiar with the services provided by the Random and Math class.? To grasp ways to format output using the NumberFormat and DecimalFormat
classes.? To be familiar with enumerated types.? To understand wrapper classes and the concept of autoboxing.? To understand components and containers used in graphics user interfaces.? To know a label component and the use of images.6+6 We've been using predefined classes.Now we will learn to write our own classes to define objects.? To grasp the structure and content of a class definition.? To understand the concept of object state using instance data.? To know the effect of visibility modifiers on methods and data.? To grasp the structure of a method definition, including parameters and return
values.? To grasp the structure and purpose of a constructor.? To grasp the creation of graphical objects.? To understand the concepts needed to create an interactive graphical user
interface.Chapter 5 Conditionals and Loops
Chapter 6 OBJECT-ORIENTED DESIGN
Chapter 7 Arrays
Chapter 8 Inheritance ? To know some basic GUI components and events.4+4 Now we will examine programming statements that allow us to make decisions and repeat processing steps in a loop.? To know the flow of control through a method.? To understand Boolean expressions that can be used to make decisions.? To grasp to perform basic decision making using if and switch statements.? To understand issues pertaining to the comparison of certain types of data.? To grasp familiarly to execute statements repetitively using while, do, and for
loops.? To understand the concept of an iterator object and use one to read a text file.? To know how to draw with the aid of conditionals and loops.? To know more GUI components and events.4+4 Now we can extend our discussion of the design of classes and objects ? To know key issues related to the design of object-oriented software.? To techniques for identifying the classes and objects needed in a program.? To understand the relationships among classes.? To understand the effect on the static modifier on methods and data.? To grasp the creation of a formal object interface.? Further grasp the definition of enumerated type classes.? To grasp issues related to the design of methods, including method
overloading.? To know issues related to the design of graphics user interface, including
layout managers.6+3 Arrays are objects that help us organize large amounts of information ? Define and use arrays for basic data organization.? To know bounds checking and techniques for managing capacity.? To learn to compare the issues related to arrays as objects and arrays of
objects.? To grasp the use of command-line arguments.? To grasp the syntax and use of variable-length parameter lists.? To be familiar with the creation and use of multidimensional arrays.? To be familiar with the ArrayList class and its generic parameter.? To know more mouse and keyboard events.6+6 Inheritance is a fundamental object-oriented design technique used to create and organize reusable classes.? To know the derivation of new classes from existing ones.? To understand the concept and purpose of method overriding.? To grasp the design of class hierarchies.? To grasp the issue of visibility as it relates to inheritance.? To have the ability to derive on interface from another.? To grasp object-oriented design in the context of inheritance.? To know the inheritance structure for GUI components.? To explore the creation of listeners by extending adaptor classes.Chapter 9 Polymorphism 3+3 Chapter 10 Exceptions 3+3 有關(guān)說(shuō)明:
擬稿(簽名):謝彥麒 Polymorphism is an object-oriented concept that allows us to create versatile software designs ? To understand polymorphism and explore its benefits.? To understand the concept of dynamic binding.? To grasp to use inheritance relationships to create polymorphic references.? To grasp to use interfaces to create polymorphic references.? To grasp sorting and searching using polymorphic implementations.? To be familiar with object-oriented design in the context of polymorphism.? To know the processing of events as an example of polymorphism.? To know more GUI components.Exception handling is an important aspect of object-oriented design ? To know the purpose of exceptions.? To know exception messages and the call stack trace.?
To be familiar with the usage of the try-catch statement for handling exception.? To understand the concept of exception propagation.?
To be familiar with the exception class hierarchy in the Java standard class library.? To be familiar with I/O exception and the ability to write text files.? To know how to create GUI using mnemonics and tool tips.?
To know additional GUI components and containers.核稿(簽名): 審批(簽名): 年 月 日
第二篇:JAVA面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱
《JAVA面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱
Oriented object Programming in JAVA 編號(hào): 08065121
適用專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)、網(wǎng)絡(luò)工程 學(xué)時(shí)數(shù):32 學(xué)分?jǐn)?shù):2 執(zhí)筆者:田小玲 編寫日期:2009年11月
一、課程的性質(zhì)和目的
本課程是為計(jì)算機(jī)科學(xué)與技術(shù)以及網(wǎng)絡(luò)工程專業(yè)本科生開設(shè)的專業(yè)選修課,是一門面向?qū)ο蟮木幊陶Z(yǔ)言,通過(guò)本課程的學(xué)習(xí),培養(yǎng)和提高學(xué)生面向?qū)ο蟪绦蛟O(shè)計(jì)的能力和Java語(yǔ)言在web開發(fā)中的應(yīng)用能力。
二、課程教學(xué)內(nèi)容
第一章 面向?qū)ο筌浖_發(fā)概述(2學(xué)時(shí))1.內(nèi)容
面向?qū)ο髥?wèn)題求解的提出、面向?qū)ο髥?wèn)題求解的概述、對(duì)象、類與實(shí)體、對(duì)象的屬性與相互關(guān)系、面向?qū)ο蟮能浖_發(fā)過(guò)程、面向?qū)ο蟪绦蛟O(shè)計(jì)方法的優(yōu)點(diǎn)、開發(fā)環(huán)境設(shè)置及開發(fā)工具簡(jiǎn)介。
2.要求
(1)了解:面向?qū)ο筌浖_發(fā)概述,面向?qū)ο蟮能浖_發(fā)過(guò)程及面向?qū)ο蟪绦蛟O(shè)計(jì) 方法的優(yōu)點(diǎn)。
(2)掌握:對(duì)象的屬性與相互關(guān)系,對(duì)象、類與實(shí)體的基本概念。(3)熟練掌握:開發(fā)環(huán)境設(shè)置及開發(fā)工具簡(jiǎn)介(補(bǔ)充)。3.重點(diǎn)
對(duì)象、類與實(shí)體的基本概念。
4.難點(diǎn)
面向?qū)ο蟪绦蛟O(shè)計(jì)方法的理解。第二章 Java概述(2學(xué)時(shí))1.內(nèi)容
Java語(yǔ)言的特點(diǎn)、Java虛擬機(jī)及垃圾回收機(jī)制、JDK目錄結(jié)構(gòu)、Java 的API結(jié)構(gòu)及Java程序結(jié)構(gòu)、第一個(gè)Java Application程序、第一個(gè)Java Applet程序、圖形界面的輸入輸出、字符界面的輸入輸出。
2.要求
(1)了解:Java語(yǔ)言的發(fā)展歷史及特點(diǎn),Java Application程序及Java Applet程 序,圖形界面的輸入輸出,字符界面的輸入輸出。
(2)掌握:Java語(yǔ)言實(shí)現(xiàn)機(jī)制(補(bǔ)充),Java體系結(jié)構(gòu)(補(bǔ)充)。(3)熟練掌握:Java Application程序的結(jié)構(gòu)。3.重點(diǎn)
Java Application程序的結(jié)構(gòu)。
4.難點(diǎn)
Java語(yǔ)言實(shí)現(xiàn)機(jī)制。
第三章 Java語(yǔ)言基礎(chǔ)(2學(xué)時(shí))1.內(nèi)容
數(shù)據(jù)類型、變量與常量、表達(dá)式、流程控制語(yǔ)句。2.要求
(1)了解:java語(yǔ)言的發(fā)展。
(2)掌握:數(shù)據(jù)類型、變量與常量的定義及使用。(3)熟練掌握:表達(dá)式的使用,流程控制語(yǔ)句。3.重點(diǎn)
表達(dá)式的使用,流程控制語(yǔ)句。
4.難點(diǎn)
流程控制語(yǔ)句的運(yùn)用。
第四章 抽象、封裝與類(6學(xué)時(shí))
1.內(nèi)容
抽象與封裝、Java的類、類的修飾符、域、方法、訪問(wèn)控制符。2.要求
(1)了解:抽象、封裝概念,系統(tǒng)定義的類。
(2)掌握:類的修飾符(abstract和final),域(包括靜態(tài)域、靜態(tài)初始化器、最終域和易失域),方法(包括抽象方法、靜態(tài)方法、最終方法)。
(3)熟練掌握:用戶程序自定義類及創(chuàng)建對(duì)象與定義構(gòu)造函數(shù),訪問(wèn)控制符(包括public、缺省訪問(wèn)控制符、private、protected)的運(yùn)用。
3.重點(diǎn)
自定義類、創(chuàng)建對(duì)象與定義構(gòu)造函數(shù)。
4.難點(diǎn)
四種訪問(wèn)控制符的運(yùn)用。第五章 繼承與多態(tài)(4學(xué)時(shí))1.內(nèi)容
Java的繼承、多態(tài)、Java的重載、構(gòu)造函數(shù)的繼承與重載、包及接口的概念。2.要求
(1)了解:繼承及多態(tài)的概念,Java接口的概念。(2)掌握:Java的方法重載,包的創(chuàng)建及引用。(3)熟練掌握:構(gòu)造函數(shù)的繼承與重載。
3.重點(diǎn)
方法的重載、類的繼承。4.難點(diǎn)
屬性的隱藏、方法的覆蓋。第六章 工具類與算法(2學(xué)時(shí))
1.內(nèi)容
語(yǔ)言基礎(chǔ)類庫(kù)(包括Object類、數(shù)據(jù)類型類、Math類及System類)、Applet類與Applet小程序、數(shù)組。
2.要求
(1)了解:Applet類與Applet小程序。(2)掌握:Java語(yǔ)言基礎(chǔ)類庫(kù)。(3)熟練掌握:數(shù)組的聲明及初始化。3.重點(diǎn)
數(shù)組的聲明及初始化、數(shù)組的應(yīng)用。4.難點(diǎn)
編寫Applet小程序。
第七章 圖形用戶界面的設(shè)計(jì)與實(shí)現(xiàn)(8學(xué)時(shí))
1.內(nèi)容
圖形用戶界面概述、GUI標(biāo)準(zhǔn)組件概述及布局設(shè)計(jì)、Java的事件處理機(jī)制。2.要求
(1)了解:圖形界面組件之間的層次關(guān)系、容器的概念和作用。(2)掌握:圖形用戶界面程序的基本結(jié)構(gòu)。(3)熟練掌握:事件監(jiān)聽機(jī)制。3.重點(diǎn)
圖形用戶界面程序的基本結(jié)構(gòu)。4.難點(diǎn)
Java的事件處理機(jī)制。
第八章 Java高級(jí)編程(6學(xué)時(shí))
1.內(nèi)容
異常處理、Java多線程機(jī)制、Swing GUI 組件、流式輸入輸出與文件處理、用Java實(shí)現(xiàn)底層網(wǎng)絡(luò)通信、Java程序?qū)W(wǎng)上資源的訪問(wèn)。
2.要求
(1)了解:例外的概念、Java中線程的基本概念、Java的線程類與Runnable接口及如何在程序中實(shí)現(xiàn)多線程、Java輸入輸出類庫(kù)及文件的處理與隨機(jī)訪問(wèn)、使用Java實(shí)現(xiàn)底層網(wǎng)絡(luò)通信、Java程序?qū)W(wǎng)上資源的訪問(wèn)。
3(2)掌握:例外處理機(jī)制。
(3)熟練掌握:Swing GUI組件的運(yùn)用。3.重點(diǎn)
例外處理機(jī)制、Swing GUI組件的創(chuàng)建。
4.難點(diǎn)
自定義異常類。
三、課程教學(xué)的基本要求
課程教學(xué)的基本要求包含三項(xiàng):上機(jī)環(huán)節(jié)、作業(yè)要求、考試方式。1.上機(jī)環(huán)節(jié)
根據(jù)課堂講授的理論,并結(jié)合上機(jī)操作讓學(xué)生及時(shí)掌握每章節(jié)所學(xué)的知識(shí),通過(guò)實(shí)操可加深學(xué)生對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)的思想及Java程序設(shè)計(jì)的領(lǐng)會(huì)。
2.作業(yè)要求
(1)作業(yè)要求:獨(dú)立思考完成、書寫工整、按時(shí)交(2)作業(yè)量:每次課均布置作業(yè),作業(yè)量約2~3題(3)總作業(yè)量:約30~40道題 3.考試方式
(1)考試方式:閉卷筆試(2)評(píng)定成績(jī)要求:
總成績(jī)=平時(shí)成績(jī)×30%+考試成績(jī)×70%
四、本課程與其它課程的聯(lián)系與分工
1.前期課程:
程序設(shè)計(jì)基礎(chǔ)、計(jì)算機(jī)網(wǎng)絡(luò)、C語(yǔ)言程序設(shè)計(jì)、C++程序設(shè)計(jì) 2.后續(xù)課程:
軟件工程、Web應(yīng)用程序開發(fā)
五、建議教材與教學(xué)參考書
[1] 印旻.《Java語(yǔ)言與面向?qū)ο蟪绦蛟O(shè)計(jì)》,清華大學(xué)出版社 [2] 於東軍,楊靜宇.《Java程序設(shè)計(jì)與應(yīng)用開發(fā)》,清華大學(xué)出版社 [3] 辛運(yùn)幃.《Java程序設(shè)計(jì)》,清華大學(xué)出版社 [4] 姜?jiǎng)?《Java語(yǔ)言程序設(shè)計(jì)》,人民郵電出版社 [5] 閻菲.《Java程序設(shè)計(jì)教程》,中國(guó)水利水電出版社
第三篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
課程名稱:信息內(nèi)容安全 課程代碼:042504 總 學(xué) 時(shí):64 學(xué)
分:2
課程類型:專業(yè)必修課 適用專業(yè): 信息安全專業(yè) 制 訂 人:徐雪飛 審 定 人:肖
文 制訂日期:2015年3月
《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
一、課程性質(zhì)、目的和任務(wù)
C#語(yǔ)言是.NET平臺(tái)上的核心開發(fā)語(yǔ)言,具有簡(jiǎn)單易學(xué)、類型安全、完全面向?qū)ο蟮忍匦裕且婚T面向現(xiàn)代軟件工程的主流程序設(shè)計(jì)語(yǔ)言。本課程系統(tǒng)地介紹C#語(yǔ)言的結(jié)構(gòu)化設(shè)計(jì)、面向?qū)ο蟆⒎盒汀⑸虡I(yè)開發(fā)等功能要素,使學(xué)生在掌握程序設(shè)計(jì)的基本方法和技巧,培養(yǎng)利用計(jì)算機(jī)解決實(shí)際問(wèn)題的能力,以滿足專業(yè)課應(yīng)用和繼續(xù)學(xué)習(xí)的需要。
二、教學(xué)基本要求
通過(guò)學(xué)習(xí)本課程,要求學(xué)生能夠熟悉C#語(yǔ)言的語(yǔ)法和類型系統(tǒng),掌握面向?qū)ο蟪绦蛟O(shè)計(jì)和泛型程序設(shè)計(jì)的基本方法,并具有商業(yè)應(yīng)用開發(fā)的基本能力,能靈活地使用C#語(yǔ)言及Visual Studio.NET開發(fā)環(huán)境解決一般性編程問(wèn)題。
三、教學(xué)內(nèi)容
1、緒論(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1).NET技術(shù)和框架結(jié)構(gòu)簡(jiǎn)介(2)C#語(yǔ)言概貌
(3)面向?qū)ο蟮幕靖拍?/p>
教學(xué)目的:使學(xué)生對(duì).NET平臺(tái)和C#有一個(gè)綜合性的了解。
2、C#語(yǔ)法基礎(chǔ)(教學(xué)6學(xué)時(shí),上機(jī)4學(xué)時(shí))
教學(xué)內(nèi)容:(1)數(shù)據(jù)類型(2)值和方法(3)表達(dá)式(4)控制語(yǔ)句
教學(xué)目的:使學(xué)生基本掌握C#語(yǔ)言的類型系統(tǒng)和基本語(yǔ)法結(jié)構(gòu)。
3、類和繼承(教學(xué)4學(xué)時(shí),上機(jī)4學(xué)時(shí))
教學(xué)內(nèi)容:
(1)類的數(shù)據(jù)成員和各種函數(shù)成員(2)繼承和多態(tài)(3).NET常用類型(4)接口與實(shí)現(xiàn)
教學(xué)目的:使學(xué)生進(jìn)一步掌握類型的定義和使用方法,掌握.NET類庫(kù)中一些典型類的用法;深入理解繼承和多態(tài)性的概念,從而掌握面向?qū)ο筌浖芍赜眯缘年P(guān)鍵技術(shù)。
4、Windows窗體界面(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1)Windows Form編程技術(shù)(2)WPF編程技術(shù)
(3)繪圖、動(dòng)畫和媒體 教學(xué)目的:使學(xué)生掌握Windows程序界面設(shè)計(jì)的基本要素,能夠使用Windows Form和WPF編程技術(shù)開發(fā)交互式圖形界面應(yīng)用程序。
5、泛型(教學(xué)4學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1)泛型的定義與使用(2)元組和可空類型的用法(3)泛型集合與循環(huán)遍歷
(4)匿名方法和Lambda表達(dá)式
教學(xué)目的:使學(xué)生掌握泛型程序設(shè)計(jì)的基本概念,能夠利用類型抽象和操作抽象開發(fā)出高可適的軟件程序。
6、異常處理(教學(xué)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)C#異常處理結(jié)構(gòu)
(2)主動(dòng)引發(fā)異常和自定義異常
教學(xué)目的:使學(xué)生能夠通過(guò)異常處理來(lái)提高程序可靠性。
7、文件操作(教學(xué)1學(xué)時(shí),上機(jī)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)驅(qū)動(dòng)器、目錄和文件(2)文件流和數(shù)據(jù)流
教學(xué)目的:使學(xué)生掌握在C#程序中進(jìn)行磁盤文件存取的基本技術(shù)。
8、數(shù)據(jù)庫(kù)訪問(wèn)(教學(xué)2學(xué)時(shí),上機(jī)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)ADO.NET聯(lián)機(jī)數(shù)據(jù)訪問(wèn)(2)ADO.NET脫機(jī)數(shù)據(jù)訪問(wèn)
教學(xué)目的:使學(xué)生掌握C#程序中進(jìn)行數(shù)據(jù)庫(kù)存取的基本技術(shù)。
9、綜合練習(xí)(教學(xué)2學(xué)時(shí),上機(jī)8學(xué)時(shí))教學(xué)內(nèi)容:
(1)進(jìn)程和線程
(2)ASP.NET網(wǎng)絡(luò)程序設(shè)計(jì)
(3)采用案例驅(qū)動(dòng)的方式,綜合運(yùn)用C#編程技術(shù)開發(fā)較為完整的軟件程序。教學(xué)目的:提高學(xué)生軟件設(shè)計(jì)的綜合能力。
五、教學(xué)方法與手段
講授法、討論法、多媒體教學(xué)、實(shí)驗(yàn)教學(xué)。
六、考核方式
考試成績(jī)占70%,平時(shí)成績(jī)占30%。閉卷考試。
七、推薦教材和教學(xué)參考書
教
材:《C#程序設(shè)計(jì)基礎(chǔ)》第3版,鄭宇軍,石海鶴,王衛(wèi)紅,清華大學(xué)出版社,2014年。參考書:
1、《C#應(yīng)用開發(fā)與實(shí)踐》,曾憲權(quán)、李梅蓮 等,清華大學(xué)出版社,2015年
2、《C#編程實(shí)戰(zhàn)寶典》,付強(qiáng)、丁寧 等,清華大學(xué)出版社,2014年。
第四篇:面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)大綱
面向?qū)ο蟪绦蛟O(shè)計(jì)(專業(yè)限選課)Object-Oriented Programming 【課程編號(hào)】XZ26175 【學(xué)分?jǐn)?shù)】3 【學(xué)時(shí)數(shù)】60=38+22
【課程類別】專業(yè)限選 【編寫日期】2010.3.30 【先修課程】C語(yǔ)言程序設(shè)計(jì)、計(jì)算機(jī)應(yīng)用基礎(chǔ)
【適用專業(yè)】通信工程
一、教學(xué)目的、任務(wù)
通過(guò)學(xué)習(xí),使學(xué)生深刻理解和領(lǐng)會(huì)面向?qū)ο蟮幕舅枷牒突咎卣鳎莆彰嫦驅(qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言C++語(yǔ)言的基本概念、基本語(yǔ)法以及面向?qū)ο蟪绦蛟O(shè)計(jì)的基本方法;使學(xué)生養(yǎng)成面向?qū)ο蟮木幊趟季S習(xí)慣。
二、課程教學(xué)的基本要求
1.理解面向?qū)ο蟮幕靖拍詈褪褂妹嫦驅(qū)ο蠹夹g(shù)進(jìn)行程序設(shè)計(jì)的基本思想 2.能比較熟練地用C++語(yǔ)言進(jìn)行一般面向?qū)ο蟮某绦蛟O(shè)計(jì)
3.初步掌握面向?qū)ο缶幊汰h(huán)境Visual C++的使用
三、教學(xué)內(nèi)容和學(xué)時(shí)分配(2 + 5 + 14 + 9 + 12 + 7 + 6 + 5 = 60)第一章 面向?qū)ο蟪绦蛟O(shè)計(jì)概述 2 學(xué)時(shí)(課堂講授學(xué)時(shí)2)主要內(nèi)容:
1.什么是面向?qū)ο蟪绦蛟O(shè)計(jì) 2.對(duì)象與類 3.封裝 4.繼承性 5.多態(tài)性
6.面向?qū)ο蟪绦蛟O(shè)計(jì)的語(yǔ)言 教學(xué)要求:
了解什么是面向?qū)ο蟪绦蛟O(shè)計(jì);掌握對(duì)象和類的基本概念;理解面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征。其它教學(xué)環(huán)節(jié):
安排課外了解面向?qū)ο蟪绦蛟O(shè)計(jì)方面的基本概念。第二章 C++概述 5學(xué)時(shí)(課堂講授學(xué)時(shí)2+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:
1.C++的起源和特點(diǎn) 2.C++源程序的構(gòu)成
3.C++在非面向?qū)ο蠓矫娴囊恍┨匦?教學(xué)要求:
cin和cout的使用;new和delete的運(yùn)算符的使用;函數(shù)的重載;帶缺省參數(shù)的函數(shù);引用; VC++的使用。其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)1: C++程序設(shè)計(jì)基礎(chǔ)練習(xí)。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.掌握C++程序的基本格式和規(guī)范,學(xué)會(huì)編寫簡(jiǎn)單的C++程序。2.掌握C++程序結(jié)構(gòu)的特點(diǎn)。
3.熟悉C++程序基本的輸入輸出操作。
4.掌握C++數(shù)據(jù)類型常量和變量以及修飾符的使用方法。5.熟悉作用域運(yùn)算符的功能和基本使用方法。6.掌握C++內(nèi)存的動(dòng)態(tài)分配和釋放方法。7.理解引用的概念,掌握引用的使用方法。
第三章 類和對(duì)象 14學(xué)時(shí)(課堂講授學(xué)時(shí)8+課程實(shí)驗(yàn)學(xué)時(shí)6)主要內(nèi)容:
1.類與對(duì)象的基本概念 2.構(gòu)造函數(shù)與析構(gòu)函數(shù) 3.對(duì)象數(shù)組與對(duì)象指針 4.向函數(shù)傳遞對(duì)象 5.靜態(tài)成員 6.友元
7.類對(duì)象作為成員 8.常類型 教學(xué)要求:
類的聲明;對(duì)象定義;對(duì)象的成員的訪問(wèn)。訪問(wèn)屬性的理解和運(yùn)用;構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義;對(duì)象數(shù)組的定義和使用;this的指針的理解和使用;類的成員類型為其他類時(shí)如何理解和使用;靜態(tài)成員的理解和運(yùn)用。提供友元機(jī)制的目的;友元聲明方法;提供常類型機(jī)制的目的;各種不同的常類型運(yùn)作方式。其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)2:類和對(duì)象。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.掌握類、類的數(shù)據(jù)成員、類的成員函數(shù)的定義方式。2.理解類成員的訪問(wèn)控制方式。
3.掌握對(duì)象的定義和操作對(duì)象的方法。
4.理解構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義與執(zhí)行過(guò)程。5.掌握重載構(gòu)造函數(shù)的方法。6.了解拷貝構(gòu)造函數(shù)的方法。實(shí)驗(yàn)3:對(duì)象數(shù)組和對(duì)象指針。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.掌握對(duì)象數(shù)組的定義和使用方法。
2.理解對(duì)象指針的概念,學(xué)會(huì)用指針引用對(duì)象。3.了解this指針的工作方式。
4.掌握靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)的基本使用方法。5.理解友元與友元函數(shù)的作用,掌握其使用方法。
第四章 派生類和繼承 9學(xué)時(shí)(課堂講授學(xué)時(shí)6+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:
1.派生類的概念
2.派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù) 3.基類成員的訪問(wèn) 4.多重繼承 5.賦值兼容規(guī)則 教學(xué)要求:
基類和派生類的基本概念;繼承成員的訪問(wèn)規(guī)則;派生類構(gòu)造函數(shù)和析構(gòu)函數(shù)的運(yùn)行規(guī)則;多重繼承的基本概念;多重繼承中同名二義性如何消除;引入虛基類的目的;繼承類和派生類之間相互賦值規(guī)則用。
其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)4:派生類與繼承。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.理解類的繼承的概念,能夠定義和使用類的繼承關(guān)系。2.掌握派生類的聲明和定義方法。
3.掌握公有派生和私有派生的訪問(wèn)特性。4.學(xué)習(xí)虛基類在解決問(wèn)題中的作用。
第五章 多態(tài)性 12學(xué)時(shí)(課堂講授學(xué)時(shí)8+課程實(shí)驗(yàn)學(xué)時(shí)4)主要內(nèi)容:
1.編譯時(shí)的多態(tài)性與運(yùn)行時(shí)的多態(tài)性 2.函數(shù)重載 3.運(yùn)算符重載 4.類型轉(zhuǎn)換 5.虛函數(shù) 教學(xué)要求:
多態(tài)的基本概念;實(shí)現(xiàn)運(yùn)算符重載的方法(成員函數(shù));實(shí)現(xiàn)運(yùn)算符重載的方法(友元函數(shù));靜態(tài)聯(lián)編和動(dòng)態(tài)聯(lián)編的基本概念;虛函數(shù)的作用;虛函數(shù)的運(yùn)用。其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)5:虛函數(shù)和多態(tài)性。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.理解編譯時(shí)的多態(tài)性和運(yùn)行時(shí)的多態(tài)性。2.掌握運(yùn)算符重載的基本方法。3.掌握虛函數(shù)的定義和使用方法。
第六章 模板 7學(xué)時(shí)(課堂講授學(xué)時(shí)4+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:
1.模板的概念
2.函數(shù)模板與模板函數(shù) 3.類模板和模板類 教學(xué)要求:
模板的基本概念;為什么要使用模板;函數(shù)模板和模板函數(shù)的基本概念;函數(shù)模板的聲明和使用;類模板和模板類的基本概念。其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)6:函數(shù)模板與類模板。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.掌握函數(shù)模板及其聲明方法。2.掌握模板函數(shù)及其生成方法。3.學(xué)習(xí)類模板的聲明與使用方法。
第七章 C++的I/O流類庫(kù) 6學(xué)時(shí)(課堂講授學(xué)時(shí)3+課程實(shí)驗(yàn)學(xué)時(shí)3)主要內(nèi)容:
1.C++建立類類庫(kù)的目的 2.預(yù)定義類型的輸入輸出
3.用戶自定義類型的輸入和輸出 教學(xué)要求:
掌握在各種情況下的<<和>>運(yùn)算符的重載。其它教學(xué)環(huán)節(jié):
實(shí)驗(yàn)7:I/O流類庫(kù)。實(shí)驗(yàn)?zāi)康暮鸵螅?/p>
1.掌握流及流類庫(kù)的作用。
2.掌握流類庫(kù)中常用的類及其成員函數(shù)的使用方法。3.掌握重載“<<”和“>>”的方法。
4.掌握控制輸出寬度的函數(shù)width和setw。
5.掌握函數(shù)setosflags和resetiosflags設(shè)置和恢復(fù)對(duì)齊方式、精度、大小寫等。
研究教學(xué)內(nèi)容 5學(xué)時(shí)(課程講解和討論學(xué)時(shí))
程序綜合設(shè)計(jì):按照面向?qū)ο蟪绦蜷_發(fā)的原則和方法,利用一個(gè)實(shí)例來(lái)講解面向?qū)ο蟪绦蛟O(shè)計(jì)的整個(gè)過(guò)程,然后要求學(xué)生根據(jù)自己的開發(fā)經(jīng)驗(yàn)進(jìn)行分組討論,從而幫助學(xué)生進(jìn)一步理解和熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)方法。
四、教學(xué)重點(diǎn)、難點(diǎn)及教學(xué)方法
重點(diǎn):類和對(duì)象的基本概念;對(duì)象定義;對(duì)象的成員的訪問(wèn)。訪問(wèn)屬性的理解和運(yùn)用;構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義;對(duì)象數(shù)組的定義和使用;this的指針的理解和使用。基類和派生類的基本概念;繼承成員的訪問(wèn)規(guī)則;派生類構(gòu)造函數(shù)和析構(gòu)函數(shù)的運(yùn)行規(guī)則。多態(tài)的基本概念;函數(shù)的重載。
難點(diǎn):多重繼承;虛函數(shù);模板。
教學(xué)方法:課堂授課采用多媒體教學(xué)和分組討論的方法,實(shí)驗(yàn)采用任務(wù)驅(qū)動(dòng)方式。通過(guò)未來(lái)愿景描述和學(xué)以致用的方法來(lái)提高學(xué)生的學(xué)習(xí)興趣,通過(guò)分組交流和師生積極互動(dòng)的方式提高學(xué)生學(xué)習(xí)本門課程的學(xué)習(xí)能力。
五、考核方式及成績(jī)?cè)u(píng)定方式:考試
六、教材及參考書目
推薦教材:
[1] 《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》,陳維興,林小茶,清華大學(xué)出版社,第2版,2004 參考書:
[1] 《C++面向?qū)ο蟪绦蛟O(shè)計(jì)習(xí)題解析與上機(jī)指導(dǎo)》,陳維興,清華大學(xué)出版社,2003 [2] 《C++程序設(shè)計(jì)基礎(chǔ)》,周靄如,電子工業(yè)出版社,2003 [3] 《C++語(yǔ)言程序設(shè)計(jì)》,鄭莉,清華大學(xué)出版社,2005 修(制)訂人: 審核人:
2010年 3 月30
日
第五篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
課程名稱:面向?qū)ο蟪绦蛟O(shè)計(jì) 英文名稱:Object Oriented Programming)學(xué)分:2 總學(xué)時(shí):36 實(shí)驗(yàn)(上機(jī))學(xué)時(shí): 8 開課專業(yè):電子商務(wù)專業(yè)
一、本課程的性質(zhì)、目的和培養(yǎng)目標(biāo)
面向?qū)ο蟪绦蛟O(shè)計(jì)是電子商務(wù)專業(yè)的限定選修課程。面向?qū)ο蟪绦蛟O(shè)計(jì)是當(dāng)今最為流行的程序設(shè)計(jì)方法,本課程以C++語(yǔ)言為核心,全面概述面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和基本技術(shù)。主要內(nèi)容包括:理解和掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想和技術(shù),掌握C++中的引用和函數(shù)重載、類與對(duì)象、靜態(tài)成員與友元、運(yùn)算符重載、繼承與派生類、多態(tài)與虛函數(shù)等重要概念和技術(shù)。通過(guò)教學(xué)要求學(xué)生基本掌握面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,認(rèn)識(shí)C++是如何支持面向?qū)ο蟪绦蛟O(shè)計(jì)的,培養(yǎng)、訓(xùn)練學(xué)生運(yùn)用面向?qū)ο蠹夹g(shù)進(jìn)行程序設(shè)計(jì)的能力。
二、預(yù)修課程
計(jì)算機(jī)語(yǔ)言與程序設(shè)計(jì)
三、課程內(nèi)容及學(xué)時(shí)分配
第一章 從C語(yǔ)言到C++語(yǔ)言
1.C++語(yǔ)言出現(xiàn)的歷史背景(OOP思想概述)2.C++中的注釋、常量和輸入輸出 3.C++中的變量定義與作用域 4.C++中的函數(shù) 5.C++中的指針與引用
本章學(xué)時(shí)數(shù):4,本章習(xí)題數(shù):4 第二章 類與對(duì)象 1.類 2.對(duì)象
3.構(gòu)造函數(shù)和析構(gòu)函數(shù) 4.對(duì)象及其應(yīng)用 5.對(duì)象的生存期 6.再論程序結(jié)構(gòu) 7.面向?qū)ο蟪绦蛟O(shè)計(jì)
本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第三章 靜態(tài)成員與友元 1.拷貝構(gòu)造函數(shù) 2.靜態(tài)數(shù)據(jù)成員 3.靜態(tài)成員函數(shù) 4.友元函數(shù)
本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第四章 運(yùn)算符重載 1.運(yùn)算符重載的概念 2.運(yùn)算符重載舉例
本章學(xué)時(shí)數(shù):4,本章習(xí)題數(shù):4 第五章 繼承與多態(tài) 1.繼承的概念 2.單繼承 3.多態(tài)與虛函數(shù)
4.類的分解(類的層次設(shè)計(jì))5.抽象類與純虛函數(shù)
本章學(xué)時(shí)數(shù):6,本章習(xí)題數(shù):6 第六章 I/O流庫(kù)簡(jiǎn)介 1.C++流庫(kù)的結(jié)構(gòu) 2.輸入與輸出 3.格式控制 4.文件
本章學(xué)時(shí)數(shù):2,本章習(xí)題數(shù):2
四、實(shí)驗(yàn)(上機(jī))內(nèi)容和建議學(xué)時(shí)分配 實(shí)驗(yàn)1(4學(xué)時(shí))
要求:定義類,該類至少應(yīng)包括靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù),要求通過(guò)本實(shí)驗(yàn)掌握定義類的基本方法。實(shí)驗(yàn)2(4學(xué)時(shí))
要求:通過(guò)本實(shí)驗(yàn)掌握函數(shù)重載、友元函數(shù)、繼承、虛函數(shù)等的基本使用方法。
五、教材和參考書目
1.《C++語(yǔ)言基礎(chǔ)教程》,呂鳳翥編著,清華大學(xué)出版社,1999 2.《C++程序設(shè)計(jì)教程》,錢
能主編,清華大學(xué)出版社,1999 3.《The C++ Programming Language》(Third Edition),Bjarne Stroustrup,Addison-Wesley,1997
六、課外學(xué)習(xí)要求
要求課前預(yù)習(xí)下一次課的講課內(nèi)容,課后復(fù)習(xí)本次課的講課內(nèi)容并通過(guò)相應(yīng)的作業(yè)加以消化。
七、考核方式
本課程采用閉卷書面考試方式為主,其中期終考試占80%,期中10%,平時(shí)作業(yè)、上機(jī)及出勤率10%。