第一篇:山東大學軟件學院面向對象方法考試口述精簡版
教務系統的用例圖(UML+代碼)
電梯運行狀態圖
門的(有把手/無把手)裝潢模式(模式+類圖+代碼)時鐘(鐘表/數字)同上
網頁下載(http/ftp)的兩種下載方式用什么模式實現 同上
interator模式(迭代器模式)一個容器 作用是裝載以及迭代的方式取出所有數據
第二篇:面向對象程序設計教學大綱-計算機科學與軟件學院
面向對象技術
Technology of Object-Oriented Programming 課程編號:30420032 學分數:2 開課單位:計算機技術與自動化學院
課內總時數:40 任課教師姓名及職稱:陳勇副教授、柯永振講師、劉坤良講師 開課學期:第2學期 教學方式:講授
一、教學要求及目的:
理解面向對象的基本思想、基本概念;掌握面向對象程序設計語言的基本結構、各種語法成分的作用、語法結構及運用方式;掌握面向對象程序設計的方法和技巧;能比較熟練地用C#語言進行一般面向對象的程序分析、設計,提高編寫和調試應用程序的能力。
二、課程的主要內容
1.面向對象方法的歷史與現狀
面向對象技術的發展歷史,主要的面向對象語言介紹。
2..Net Framework概述.Net Framework基本框架,.Net Framework的優點,以及開發平臺。3.C#概述
C#的起源和特點,C#源程序的基本構成,C#中非面向對象方面的—些程序特性。4.C#中類和對象
類與對象的基本概念,構造函數,方法與屬性,參數傳遞,靜態成員。5.派生、繼承、多態性
數據的抽象與封裝,派生類的概念,派生類的構造函數,C#中多重繼承的處理方法,虛方法的實現,抽象類,重載的實現,接口的實現,代理的實現。6. 基于Windows 與Web的應用程序開發
開發Windows,Web應用程序的基本框架。7.Web Service實現
使用XML的Web Service實現。8.面向對象技術實踐
根據所掌握的面向對象技術,分析一個具體案例,利用C#實現其功能。
三、課程教材及主要參考書
1.C#面向對象程序設計,黃聰明,科學出版社,2004年 2.C#程序設計,田原,清華大學出版社,2005 3.C#高級編程,李敏波,清華大學出版社,2005(第3版).4.C#程序設計教程,余安萍,電子工業出版社,2002 5.面向對象的分析與設計,(美)Grady Booch著,機械工業出版社,2005年
6.C#范例解析,朱沭紅,電子工業出版社,2002 7.Visual C#程序設計基礎教程,邵鵬鳴,清華大學出版社,2005.四、預修課程
C語言程序設計、數據結構、程序設計方法學
五、適用專業、范圍
計算機應用技術專業、計算機軟件與理論專業
第三篇:面向對象程序設計教學大綱-計算機科學與軟件學院
人工智能原理及應用
Artificial Intelligence Principles and Applications
課程編號:30420082 學分數:2 開課單位:計算機技術與自動化學院
課內總時數:40 任課教師姓名及職稱:劉文菊副教授、郭景講師
開課學期: 第2學期 教學方式:講授
一、教學要求及目的
人工智能是研究智能信息處理技術、開發具有智能特性的各類應用系統的核心技術。通過本課程的學習,要求學生了解人工智能的基本概念和原理,掌握常用的知識表示、邏輯推理和問題求解的方法,熟悉人工智能的發展學派和主要理論。為智能信息分析和構建專家系統、智能決策支持系統等各類智能系統奠定基礎,并培養學生提高解決復雜問題的能力。
二、課程的主要內容
1.人工智能概述
人工智能的概念; 人工智能的產生和發展; 人工智能的內容和特點; 人工智能的研究和應用領域。2.知識表示方法
知識表示的概念;
謂詞邏輯表示法; 產生式表示法; 語義網絡表示法; 框架表示法; 面向對象表示法。3.推理方法
推理的基本概念;
確定性推理:推理方法及其分類、推理的控制策略、推理的邏輯基礎; 不確定性推理:確定性因子法、主觀Bayes法、證據理論、模糊推理。4.問題求解與搜索方法
狀態空間搜索,狀態圖問題求解; 與或樹搜索,與或樹問題求解;
博弈樹搜索,極大極小過程,?-?剪枝法。5.機器學習
機器學習的概念; 機械學習; 基于經驗的學習; 基于事例的學習; 基于類比的學習; 基于神經網絡的學習。6.人工智能應用--專家系統
專家系統的概念; 專家系統的結構;
專家系統的應用與發展概況; 產生式系統 專家系統設計舉例。
7.人工智能的爭論與展望
關于人工智能的爭論; 人工智能對人類的影響; 對人工智能的展望。
三、課程教材及主要參考書
1.人工智能及其應用(第三版)研究生用書,蔡自興編著,清華大學出版社,2006年5月 2.人工智能技術導論,廉師友編著,西安電子科技大學出版社,2002年第1版 3.人工智能原理及其應用,王萬森編著,電子工業出版社,2000年9月
4.Artificial Intelligence A New Synthesis
Nils J.Nilsson
機械工業出版社 1999.9
四、預修課程
數理邏輯、離散數學、高級語言程序設計、數據結構與算法
五、適用專業、范圍
計算機應用技術專業、計算機軟件與理論專業
第四篇:《面向對象程序設計方法》課程教學大綱
《面向對象程序設計方法》課程教學大綱
(計算機科學與技術本科專業使用)
一、課程的地位、教學目的和基本要求
C++語言是一種高效實用的程序設計語言,既可進行過程化的程序設計,也可進行面向對象程序設計。本課程以介紹C++語言的基本語法為基礎逐步向學生滲透面向對象的程序設計思想,要求學生掌握類的封裝、數據隱藏、繼承及多態等特性,領會面向對象程序設計,掌握面向對象程序設計方法,培養一定的程序設計能力,為以后各專業課程的學習打下良好的程序設計基礎。
二、主要教學環節
1、理論教學 學時數:60 占全部學時數:75 %
2、實驗 學時數:20 占全部學時數:25 %
3、實訓 學時數:二周
三、課程內容 Ⅰ.理論部分
第一章 C++入門 2學時(1)教學目的、要求
本章要求學生掌握源程序的編輯、編譯、連接和執行。了解C++程序設計語言的發展過程以及支持環境。(2)重點與難點
本章的重點和難點是源程序的編輯、編譯、連接和執行。
第一節 從C到C++ 第二節 程序與語言 第三節 結構化程序設計 第四節 面向對象程序設計 第五節 程序開發過程 第六節 函數
第二章 基本數據類型與輸入輸出 2學時(1)教學目的、要求
本章要求學生掌握C++語言數據類型,變量及常量的聲明和賦值以及輸入輸出函數。了解I/O流及printf和scanf輸入輸出的作用。(2)重點與難點
本章的重點和難點是C++語言數據類型,變量及常量的聲明和賦值以及輸入輸出函數。
第一節 字符集與保留字 第二節 基本數據類型 第三節 變量定義 第四節 常量及常量定義 第五節 I/O流控制 第六節 Printf與scanf 第三章 表達式和語句 2學時(1)教學目的、要求
本章要求學生掌握C++各運算符與常用表達式內容,及if語句的應用。(2)重點與難點
C++各運算符與常用表達式內容,及if語句的應用。
第一節 表達式 第二節 算術運算和賦值 第三節 算術類型轉換 第四節 增量和減量 第五節 關系與邏輯運算 第六節 if語句 第七節 條件運算符 第八節 逗號表達式 第九節 求值次序與副作用
第四章 過程化語句 2學時(1)教學目的、要求
本章要求學生掌握switch,while, do…while, for結構的應用,了解描述算法和窮舉、迭代算法。(2)重點與難點
本章的重點和難點是循環型程序設計,即switch,while, do…while, for 2 結構的應用。
第一節 while 語句 第二節 do…..while 語句 第三節 for語句 第四節 switch 語句 第五節 switch 語句 第六節 過程應用: 求兀 第七節 過程應用: 判明素數 第八節 過程應用: 求積分
第五章 函數 2學時(1)教學目的、要求
本章要求學生掌握函數的概念、定義、調用機制,和遞歸、內聯、重載函數的概念,以及全局、局部變量。(2)重點與難點
本章的重點和難點是函數的概念、定義、調用機制,以及全局、局部變量。
第一節 函數概述 第二節 函數原型
第三節 全局變量和局部變量 第四節 函數調用機制 第五節 靜態局部變量 第六節 遞歸函數 第七節 內聯函數 第八節 重載函數 第九節 默認參數的函數
第六章 程序結構 2學時(1)教學目的、要求
本章要求學生掌握變量的存儲類型,作用域,可見性,生命期等概念。(2)重點與難點
本章的重點和難點是變量的存儲類型,作用域,可見性,生命期。
第一節 外部存儲類型 第二節 靜態存儲類型 第三節 作用域 第四節 可見性 第五節 生命期 第六節 頭文件 第七節 多文件結構 第八節 編譯預處理
第七章 數組 2學時(1)教學目的、要求
本章要求學生掌握數組的概念、元素的訪問,及數組的應用。(2)重點與難點
本章的重點和難點是數組元素的訪問,及數組的應用。
第一節 數組定義 第二節 訪問數組元素 第三節 初始化數組 第四節 向函數傳遞數組 第五節 二維數組 第六節 數組應用: 排序
第七節 數組應用: Josephus問題 第八節 數組應用: 矩陣乘法
第八章 指針 2學時(1)教學目的、要求
本章要求學生掌握指針的概念、運算,以及指針與數組和函數的應用。(2)重點與難點
本章的重點和難點是指針的運算,以及指針與數組和函數的關系及應用。
第一節 指針概念 第二節 指針運算 第三節 指針與數組 第四節 堆內存分配 第五節 const指針 第六節 指針與函數 第七節 字符指針 第八節 指針數組 第九節 命令行參數 第十節 函數指針
第九章 引用 2學時(1)教學目的、要求
本章要求學生掌握引用的概念、操作,以及引用作為函數參數的應用。(2)重點與難點
本章的重點和難點是引用的操作,以及引用作為函數參數的應用。
第一節 引用的概念 第二節 引用的操作 第三節 什么能被引用 第四節 用引用傳遞函數參數 第五節 返回多個值 第六節 用引用返回值 第七節 函數調用作為左值 第八節 用const限定引用 第九節 返回堆中變量的引用
第十章 結構 2學時(1)教學目的、要求
本章要求學生掌握結構體概念及其定義,結構體變量和結構體數組的引用,指向結構體變量和數組的指針。(2)重點與難點
本章的重點和難點是結構體數組的引用,指向結構體變量和數組的指針。
第一節 結構 第二節 結構與指針
第三節 結構與數組 第四節 傳遞結構參數 第五節 返回結構 第六節 鏈表結構 第七節 創建與遍歷鏈表 第八節 刪除鏈表結點 第九節 插入鏈表結點
第十節 結構應用: Josephus問題
第十一章 類 4學時(1)教學目的、要求
本章要求學生掌握類的概念、類的定義,及成員函數的調用。了解保護成員和軟件方法的發展必然。(2)重點與難點
本章的重點和難點是類的概念、類的定義,及成員函數的調用。
第一節 從結構到類 第二節 軟件方法的發展必然 第三節 定義成員函數 第四節 調用成員函數 第五節 保護成員 第六節 屏蔽類的內部實現 第七節 再論程序結構
第十二章 構造函數 6學時(1)教學目的、要求
本章要求學生掌握構造、析構函數的使用,以及構造類成員和構造對象的順序。了解重載和默認構造函數的概念(2)重點與難點
本章的重點和難點是構造、析構函數的使用,以及構造類成員和構造對象的順序。
第一節 類與對象
第二節 構造函數的需要性 第三節 構造函數的使用 第四節 析構函數
第五節 帶參數的構造函數 第六節 重載構造函數 第七節 默認構造函數 第八節 類成員初始化困惑 第九節 構造類成員 第十節 構造對象的順序
第十三章 面向對象程序設計 4學時(1)教學目的、要求
本章要求學生掌握結構化和面向對象方法的實現。了解程序效率和維護。(2)重點與難點
本章的重點和難點是結構化和面向對象方法的實現。
第一節 抽象 第二節 分類 第三節 設計和效率 第四節 討論Josephus問題 第五節 結構化方法 第六節 結構化方法的實現 第七節 第八節 第九節
面向對象方法 面向對象方法實現 程序維護
第十四章 堆與拷貝構造函數 6學時(1)教學目的、要求
本章要求學生掌握堆的概念,堆對象,拷貝構造函數及淺拷貝與深拷貝的應用。了解臨時和無名對象。(2)重點與難點
本章的重點和難點是堆的概念,堆對象,拷貝構造函數及淺拷貝與深拷貝的 7 應用。
第一節 關于堆
第二節 需要new和delete的原因 第三節 分配堆對象 第四節 拷貝構造函數 第五節 默認拷貝構造函數 第六節 淺拷貝與深拷貝 第七節 臨時對象 第八節 無名對象
第九節 構造函數用于類型轉換
第十五章 靜態成員與友員 2學時(1)教學目的、要求
本章要求學生掌握懂得怎樣聲明一個靜態數據成員,怎樣使用靜態成員函數以及靜態成員函數為什么與特定對象無關。(2)重點與難點
本章的重點和難點是靜態數據成員和靜態成員函數的使用,以及友元的概念。
第一節 靜態成員的需要性 第二節 靜態成員的使用 第三節 靜態數據成員 第四節 靜態成員函數 第五節 需要友員的原因 第六節 友員的使用
第十六章 繼承 8學時(1)教學目的、要求
本章要求學生掌握繼承的概念,工作方式,以及多態性和虛函數的概念。了解抽象類和類的冗余。(2)重點與難點
本章的重點和難點是繼承的概念,工作方式,以及多態性和虛函數的概念。
第一節 繼承的概念 第二節 繼承的工作方式 第三節 派生類的構造 第四節 繼承與組合 第五節 多態性
第六節 多態的思考方式 第七節 多態性如何工作 第八節 不恰當的虛函數 第九節 虛函數的限制 第十節 類的冗余
第十一節 克服冗余帶來的問題 第十二節 類的分解 第十三節 抽象類
第十四節 由抽象類派生具體類 第十五節 純虛函數的需要性
第十七章 多重繼承 6學時(1)教學目的、要求
本章要求學生掌握多繼承的概念,工作方式以及多繼承的構造順序和訪問控制。了解虛擬繼承、保護和私有繼承。(2)重點與難點
本章的重點和難點是多繼承的概念,工作方式以及多繼承的構造順序和訪問控制。
第一節 多繼承如何工作 第二節 繼承的模糊性 第三節 虛擬繼承
第四節 多繼承的構造順序 第五節 繼承的訪問控制 第六節 保護繼承與私有繼承
第十八章 運算符重載 4學時(1)教學目的、要求 本章要求學生掌握運算符重載的需要性和應用。了解增量運算符的重載。(2)重點與難點
本章的重點和難點是運算符重載的需要性和應用。
第一節 運算符重載的需要性 第二節 如何重載運算符 第三節 值返回與引用返回 第四節 運算符作成員函數 第五節 重載增量運算符 第六節 轉換運算符 第七節 賦值運算符
四、主要教科書和參考書
1、《C++程序設計教程》
2、《C++程序設計題解與上機指導》
3、《C++語言程序設計》
4、《C++語言與面向對象程序設計》
5、《C++語言程序設計》
錢能 錢能
潭浩強 鄭莉
呂鳳翥清華大學出版社
清華大學出版社 清華大學出版社 清華大學出版社
清華大學出版社
責任撰寫人:陳桂芬
第五篇:《面向對象程序設計方法》實驗教學大綱
《面向對象程序設計方法》實驗教學大綱
(計算機科學與技術本科專業使用)
一、教學目標
通過該實驗課,學生應在熟練掌握過程化程序設計方法的基礎上,領會面向對象程序設計及類的封裝、數據隱藏、繼承及多態等特性,逐步掌握面向對象程序設計方法,培養一定的程序設計能力,為以后各專業課程的學習打下良好的程序設計基礎。
二、實驗教學時數
三、實驗內容
實驗一 圖形打印
1、實驗目的:練習for循環
2、實驗技能培訓內容:打印幾種特殊圖形,如菱形和Z字形
3、主要儀器:計算機
4、實驗方法:上機編程
實驗二 判素數
1、實驗目的:練習函數
2、實驗技能培訓內容:判斷101-200之間有多少個素數,并輸出所有素數。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗三 遞歸函數練習
1、實驗目的:練習遞歸函數
2、實驗技能培訓內容:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少? 兔子的規律為數列1,1,2,3,5,8,13,21....3、主要儀器:計算機
4、實驗方法:上機編程
實驗四 數列排序
1、實驗目的:練習數組及幾種基本排序方法
2、實驗技能培訓內容:用選擇、插入、冒泡、快速等幾種基本的排序方法對數列進行排序。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗五 矩陣乘積
1、實驗目的:練習數組
20學時
2、實驗技能培訓內容:用數組存儲兩個矩陣,求兩個矩陣的乘積。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗六 設計時間日期類
1、實驗目的:掌握簡單類的設計方法
2、實驗技能培訓內容:構造一個TimeDate類,類中包含一個成員函數,用來在屏幕上顯示時間與日期(采用建立在標準庫time.h中的標準時間與日期來尋找與顯示日期)。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗七 設計計時類
1、實驗目的:掌握簡單類的設計方法
2、實驗技能培訓內容:建立Watch類,用來仿效秒表跟蹤消逝的時間。用構造函數將消逝時間的初值置為零。提供兩個成員函數Start()與Stop(),分別打開與關閉計時器。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗八 設計字符棧類
1、實驗目的:掌握簡單類的設計方法
2、實驗技能培訓內容:用Stack類,寫一個函數LoadStack(),用來返回已經將字母表(a-z)入棧的堆棧。在調用函數中,將這個堆棧賦值給另一個對象,并證明它包含字母表。可以改變堆棧的尺寸,以便它大得足以支持字母表。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗九 友元的使用方法
1、實驗目的:掌握友元的使用方法
2、實驗技能培訓內容:求兩數的平方差(友元函數說明)
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十 訪問權限
1、實驗目的:掌握類成員的各種訪問權限
2、實驗技能培訓內容:類成員的各種訪問權限
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十一 類的派生
1、實驗目的: 掌握類的派生
2、實驗技能培訓內容:給出基類AreaClass(形狀類),建立兩個派生類Box(方形類)與Isosceles(等腰三角形類),讓每個派生類包含一個函數Area(),分別用來返回方形與等腰三角形的面積。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十二 用類方法求解一元二次方程
1、實驗目的: 掌握類的派生
2、實驗技能培訓內容:實現一個Complex類和一個Real類。將Real類定義為Complex類的子類。然后設計一個求解一元二次實系數方程的根的類Root。
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十三 類繼承中的構造
1、實驗目的: 掌握類繼承中的構造
2、實驗技能培訓內容:類繼承中的構造方法
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十四 類繼承中的構造
1、實驗目的: 掌握類繼承中的構造
2、實驗技能培訓內容:類繼承中的構造方法
3、主要儀器:計算機
4、實驗方法:上機編程
實驗十五 大學生類
1、實驗目的: 掌握虛函數的使用
2、實驗技能培訓內容:設計一個大學的類系統,包括Student(學生),Professor(教師),Staff(職員)。另有一個類既作為學生又兼作助教的可作為派生類StudentStaff,它是由Student類和Staff類派生而來,另外定義一個父類DataRec作為上述類(子類)的基類。
3、主要儀器:計算機
4、實驗方法:上機編程
責任撰寫人:陳桂芬