原创 軟件構造課程——git基本命令~個性化總結

雖然現在網上git命令已經爛大街了,但是平時用來交作業的過程中,常常因爲個人習慣性操作造成的個性化失誤,還是有必要總結一下解決方案滴! 下面先回顧一下基本操作: 1.首先,初始化本地倉庫,主要有2種方式獲得本地倉庫: git in

原创 程序人生-Hello’s P2P

程序人生-Hello’s P2P 摘 要 本文通過hello程序從編寫源程序被編譯、彙編、鏈接、運行,從外部存儲設備,經過I/O橋,進入到內存,各級cache,最後在I/O中輸出,最後被回收的過程描述,詮釋了hello,簡單卻複

原创 PPT製作學習記錄

區分頁面動畫效果與對象的動畫效果: 1.PPT整頁翻頁動畫效果的設置: 首先選擇切換,選中某張PPT,再點擊切換動畫,再選擇想要的翻頁效果。如下圖 2.對於某一頁中的某個對象設置動畫,則選中某頁中需要設置動畫效果的對象,再選擇菜

原创 將Map根據鍵值進行排序

使用TreeMap和Comparator TreeSet的使用類似,但注意TreeMap返回的鍵值集合是有序的。 看下面鏈接有更詳細的介紹(包括按照鍵值、value排序的) https://www.cnblogs.com/ltb6

原创 軟件構造——Java中的型變與泛型

型變:當子類型關係出現在更加複雜類型中時,新類型中有着怎樣的類型關係? 如: Cat是Animal的子類,那麼List 和List有什麼關係? 型變有如下三種情況: Covariant(協變): 保持子類型關係List是List

原创 軟件構造筆記——3.5 Equality in ADT and OOP

一、ADT的等價性主要通過三種方式定義: 1.AF: R → A某數據結構所映射的抽象值相同, 即 AF(a)=AF(b) 2.a與b等價,倘若a與b在同一個等價類中(a與b滿足某自反,對稱,傳遞關係) 3.從觀察角度對兩個對象的

原创 python元組與列表

元組 元組是包含多個元素的類型,元素可以是不同類型,元素之間用逗號分割。 例如:t1 = 123,456, “hello” 元組可以是空的,t2=() 元組包含一個元素時:t3=123, 元組外側可以使用括號,也可以不使用 一個

原创 軟件構造筆記——第一章 軟件構建的質量目標

1.內部質量和外部質量的區別: 最重要的是外部質量,因爲它是用戶直接可以感受到的;而對其起着決定性作用的是內部質量。 2.正確性和健壯性:取決於規格說明。 符合規格說明的即爲正確,異常即爲規格說明沒有涉及的部分,而錯誤是不符合規格

原创 軟件構造——3.1不可變ADT與snapshot

注意結合的順序 double a = (double)2/3; // a = 0.6666… Data是可變數據類型,LocalDataTime是不可變數據類型 對變量賦值是在改變變量的指向,指向不同的值. 改變可變變量的內容時,

原创 軟件構造筆記——Logger的使用總結

這裏使用的是java.util.logging: Logger 1.首先獲得一個Logger對象 Logger myLogger = Logger.getLogger("com.mycompany.myapp"); 2.設置

原创 軟件構造——3.4類圖、重寫與重載

工廠方法:在一定程度上,用接口聲明的對象需要調用某種具體實現類的構造器,而這些構造器在接口的spec中沒有說明,就需要使用者瞭解代碼內部的結構,瞭解有那些構造器,這從一定程度上破壞了抽象性。這就需要在接口中使用靜態工廠方法。 ti

原创 c++字符串操作

c++中有字符串類型的數據:string 獲取某一位置的字符串:str.at(i) 或者str[i] 截取字符串str.substr(begin,end); 最大整形數long long:9223372036854775807 最

原创 軟件構造筆記——2.1 軟件開發模型與軟件配置管理

這裏,將Software Development Lifecycle 簡寫爲SDCL,將Software Configuration Management簡寫爲SCM。 1.軟件開發的目標是活力與較長的生命週期。 2.傳統設計模式

原创 軟件構造——實驗4之debug

體會:下面debug的過程其實主要是通過eclipse中的靜態檢查和斷點的單步調試實現的。只要根據期望輸出與實際輸出定位好bug的大致位置,然後仔細查看代碼,判斷問題可能出現的位置,縮小範圍後,再進行單步調試,根據程序不合邏輯之處

原创 軟件構造筆記——5.1各層次的複用與外部表現

根據複用的層次不同,有多種類型的劃分。 Design patterns基於設計模式的複用:體現在抽象和具體對象的交互上; Component-based development:基於組件層面的複用 Application fram