日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

哈工大软件构造2022笔记(持续更新----1)

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 哈工大软件构造2022笔记(持续更新----1) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Class 1

第0節的主要內容是講課程要求

實驗占35分,個人博客占5分,期末考試占60分(閉卷)


在cms中加入課程:鏈接在老師發的ppt里面有,這里就不展示了。

實驗要求:

在Java+Eclipse/IntelliJ IDEA+Git環境下進行,通過GitHub Classroom提交

在GitHub Classroom 里,作業deadline都設定為周日晚上23:55

TA:助教(teaching assistant)

Class2

第1節的內容主要是講軟件工程的要求和評價標準

軟件是什么?

在百度上的解釋是這樣的:

軟件(中國大陸及香港用語,臺灣稱作軟體,英文:software)是一系列按照特定順序組織的計算機數據和指令的集合。

簡單來說,我們可以通過下面這張圖進行說明:

軟件是用戶和硬件之間進行交互的部分,相比起硬件來說,它更加靠近用戶層。

軟件系統的基礎是它所處的硬件基礎和技術環境。

?多維軟件視角

?我們評價軟件可以從以下幾個維度來看:

? ? ? ? 1.Build-time View

? ? ? ? ? ? ? ? (1)? ?Build-time, moment, and code-level view

? ? ? ? ? ? ? ? (2) Build-time, period, and code-level view ?

? ? ? ? ? ? ? ? (3)?Build-time, moment, and component-level view

? ? ? ? ? ? ? ? (4) Build-time, period, and component-level view

?????? 2.Run-time View

? ? ? ? ? ? ? ? ??(5)? ?Run-time, moment, and code-level view

? ? ? ? ? ? ? ? ??(6)? ?Run-time, period and code-level view

??????????????????(7)? ?Run-time, moment, and component-level view

? ? ? ? ? ? ? ? ??(8)? ?Run-time, period, and component-level view

上面這幾個視角只是提供一種思維,就是在程序構建的各個階段,各個層次都需要注意相關的問題。不是說需要將上面的內容完全記住,只是了解即可。

軟件系統的質量標準

?可以從以下十個層面進行解釋:
1.正確性(Correctness)

????????按照事先的“規約”執行(滿足需求)

2.魯棒性(Robustness)

? ? ? ? 軟件能夠良好地應對異常情況

3.擴展性(Extendibility)

? ? ? ? 如果對程序的規約有所變化,程序應該能夠良好地處理

4.可復用性(Reusability)

? ? ? ? 避免“重復造輪子”,已經完成的任務可以在其他合適的地方使用(比如java中的庫)

5.兼容性(Compatibility

? ? ? ? 使得不同的軟件系統之間能夠良好地集成

6.性能(Efficiency)

? ? ? ? 使得軟件運行效率較高(前提是保證正確性)

7.可移植性(Portability)

? ? ? ? 軟件能夠在不同技術環境(硬件環境、操作系統)之間遷移

8.易用性(Ease of use

? ? ? ? 用戶能夠輕松地使用軟件(希望以后設計者能夠加強這方面,作者已經被各種復雜的軟件折磨多年了)

9.功能性(Functionality)

? ? ? ? 軟件能夠擁有更多、更加強大的功能

10.及時性(Timeliness)

? ? ? ? 軟件能夠及時迎合市場的需要

軟件構造的五個關鍵質量目標

?1.可理解性(Understandability

? ? ? ? ?代碼風格良好(注釋、變量命名、代碼布局等等)

? ? ? ? ?項目架構清晰

2.可復用性(Reusability

? ? ? ? 簡單來說就是已經完成的任務不必再次完成,而是可以復用之前的結果

? ? ? ? 實現手段包括:接口與實現分類、繼承、重載、重寫等等

3.可維護性和適應性(Maintainability and Adaptability)

? ? ? ? 就是指軟件能夠根據需求被修改、糾正、更新的能力

? ? ? ? 實現手段包括:模塊化設計、OO設計模式等

4.魯棒性(Robustness

? ? ? ? 魯棒性大家應該已經很熟悉了,這里不多介紹

? ? ? ? 實現手段包括:異常處理機制、防御性編程等

?5.效率(Performance)

? ? ? ? 提高軟件性能和效率

? ? ? ? 實現手段包括:代碼優化、空間復雜性、時間復雜性控制等等

總結

以上是生活随笔為你收集整理的哈工大软件构造2022笔记(持续更新----1)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。