YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: 建構完整的程式開發環境 使用開源軟體

建構完整的程式開發環境使用開源軟體

紀俊男 和群資訊有限公司 總經理

Page 2: 建構完整的程式開發環境 使用開源軟體

自我介紹資訊工程系 資訊科學所 生物資訊所

博士候選人

11

11

33

展望電腦業務主任

西基電腦遊戲工程師

趨勢科技全球技術支援部協理

33

各大補習班電腦講師

22

筌寶電子軟體部經理

11

和群資訊總經理

55

中研院資訊所軟體工程師

Page 3: 建構完整的程式開發環境 使用開源軟體

完整的程式開發環境有哪些工具?

Page 4: 建構完整的程式開發環境 使用開源軟體

軟體專案開發流程

需求 設計

實作

編寫編寫閱讀與理解

閱讀與理解

版本管控版本管控 編譯編譯 文件

生成文件生成

測試除錯與瑕疵管理

專案管理 與 協同運作

Page 5: 建構完整的程式開發環境 使用開源軟體

關於開源軟體

Page 6: 建構完整的程式開發環境 使用開源軟體

歷史

1984 : GNU Free Software ( Richard Stallman )

1998 : “ Open Source” ( Eric Raymond )

Page 7: 建構完整的程式開發環境 使用開源軟體

授權方式( Licensing )

商用軟體 自由 / 開源軟體

Public DomainPublic Domain

XFree86 / BSD / ApacheXFree86 / BSD / Apache

CopyleftCopyleft

GPL

LGPL

CommercialCommercial

SharewareShareware

Page 8: 建構完整的程式開發環境 使用開源軟體

自由軟體鑄造場 授權精靈

http://swan.iis.sinica.edu.tw/LicenseWizard/index.htm

Page 9: 建構完整的程式開發環境 使用開源軟體

何處下載開源軟體

SourceForge.net

FreshMeat.net

of.openfoundry.org

Page 10: 建構完整的程式開發環境 使用開源軟體

開源作業系統

Page 11: 建構完整的程式開發環境 使用開源軟體

首選: Linux

首選

Linux

Page 12: 建構完整的程式開發環境 使用開源軟體

推薦的 Linux 流通版本

Ubuntu

Fedora

Page 13: 建構完整的程式開發環境 使用開源軟體

Shopping Software for Free

Synaptic Package Manager(Ubuntu)

Page 14: 建構完整的程式開發環境 使用開源軟體

專案管理工具

Page 15: 建構完整的程式開發環境 使用開源軟體

作為「研究記錄」之用 過往的一個小記錄可能是大發現 專利申請、訴訟之用

作為「團隊溝通」之用 團隊間有很多事是無法用猜的 只有指導教授與學生,也是團隊

學術研究需要專案管理嗎?

Page 16: 建構完整的程式開發環境 使用開源軟體

推薦的專案管理工具

Trac Project• Apache + PHP + MySQL = Wiki & Bug Tracker• Wiki :輕鬆構築網頁,資料對內對外共享。• Bug Tracker :記錄軟體需求與缺陷。

Open Foundry•馬上可用!• 提供六大功能。

Page 17: 建構完整的程式開發環境 使用開源軟體

需求分析與設計工具

Page 18: 建構完整的程式開發環境 使用開源軟體

Mind Mapper

FreeMind•樸實無華,但簡單好用。•初用會看不上眼,但用久了會喜歡。

XMind•功能齊全,介面華麗。•很逼近最受歡迎的商業軟體 Mind Manager 。

Page 19: 建構完整的程式開發環境 使用開源軟體

使用 FreeMind 做需求分析

Page 20: 建構完整的程式開發環境 使用開源軟體

Pencil for Firefox

Page 21: 建構完整的程式開發環境 使用開源軟體

原始碼編輯工具

Page 22: 建構完整的程式開發環境 使用開源軟體

程式魔人的選擇

vi / vim

emacs

Page 23: 建構完整的程式開發環境 使用開源軟體

一般人的建議選擇

Page 24: 建構完整的程式開發環境 使用開源軟體

原始碼分析與瀏覽工具

Page 25: 建構完整的程式開發環境 使用開源軟體

何謂「原始碼分析」工具Reference Analysis Flow Analysis

Page 26: 建構完整的程式開發環境 使用開源軟體

建議軟體: Source Navigator

Page 27: 建構完整的程式開發環境 使用開源軟體

更多軟體哪裡找

Eclipse Marketplace: http://marketplace.eclipse.org

Page 28: 建構完整的程式開發環境 使用開源軟體

版本控制軟體

Page 29: 建構完整的程式開發環境 使用開源軟體

何謂「版本控制」

原始版本

差異 1

差異 2

差異 1-1

Page 30: 建構完整的程式開發環境 使用開源軟體

為何需要「版本控制」

John Mary

1 2

3 4

John 的修改消失不見

John Lucy

Page 31: 建構完整的程式開發環境 使用開源軟體

常見的版本控制軟體

Subversion

CVS

Git

五大缺點

Subclipse

EGit

Page 32: 建構完整的程式開發環境 使用開源軟體

推薦的版本控制軟體

Page 33: 建構完整的程式開發環境 使用開源軟體

編譯器與其它建構工具

Page 34: 建構完整的程式開發環境 使用開源軟體

推薦的編譯器

C / C++

Java SDK

Page 35: 建構完整的程式開發環境 使用開源軟體

文件生成工具

Page 36: 建構完整的程式開發環境 使用開源軟體

推薦文件生成工具

Page 37: 建構完整的程式開發環境 使用開源軟體

Doxygen 運作原理

/** 多列註解*/

/// 單列註解

Page 38: 建構完整的程式開發環境 使用開源軟體

Doxygen 生成結果

Page 39: 建構完整的程式開發環境 使用開源軟體

測試工具

Page 40: 建構完整的程式開發環境 使用開源軟體

為何要測試

讓你可以「亂搞」,但不致於「搞亂」。

Page 41: 建構完整的程式開發環境 使用開源軟體

測試的種類

Page 42: 建構完整的程式開發環境 使用開源軟體

推薦的測試工具

C / C++

Java

Page 43: 建構完整的程式開發環境 使用開源軟體

除錯與軟體瑕疵管理

Page 44: 建構完整的程式開發環境 使用開源軟體

推薦的除錯工具 & 瑕疵管理工具

Eclipse 內建除錯工具

瑕疵管理: Trac 或 OSSF

Page 45: 建構完整的程式開發環境 使用開源軟體

結論

Page 46: 建構完整的程式開發環境 使用開源軟體

Linux Linux + Java VM

Source Navigator Eclipse

JUnit / CUTE Doxygen GCC / JDK

Subversion / Git

FreeMind / XMind

• ------• ---• ---

• ------• ---• ---

• ------• ---• ---

QC

Trac / OSSF

Page 47: 建構完整的程式開發環境 使用開源軟體

Q & A


Related Documents