新聞中心
在科研領(lǐng)域,計算機軟件的應(yīng)用無處不在。但是,一些研究者因為自身并非畢業(yè)于計算機相關(guān)學科,所以有時不得不將大量的時間花費在自學軟件工程上。對于有些想要提升自身編碼與軟件開發(fā)水平的研究者來說,合適的學習資料至關(guān)重要。本文介紹的這本開源書籍就是為這類研究者「量身打造」的。

創(chuàng)新互聯(lián)-云計算及IDC服務(wù)提供商,涵蓋公有云、IDC機房租用、成都聯(lián)通服務(wù)器托管、等保安全、私有云建設(shè)等企業(yè)級互聯(lián)網(wǎng)基礎(chǔ)服務(wù),溝通電話:028-86922220
目前,軟件對于研究而言至關(guān)重要。這意味著研究人員需要了解如何創(chuàng)建、檢查、使用和共享程序。但是,大多數(shù)編程指南側(cè)重于開發(fā)商業(yè)應(yīng)用,而不探索那些尚未得到解答的問題。而在本文介紹這本開源書籍《Research Software Engineering with Python》中,作者旨在向讀者展示如何做到這一點,無論作為個人還是團隊成員。
- 書籍地址:https://merely-useful.github.io/py-rse/
- GitHub 項目地址:https://github.com/merely-useful/py-rse
作者認為,每位研究人員都應(yīng)該了解如何編寫能夠重復(fù)清理和分析數(shù)據(jù)的短程序,以及如何使用版本控制來跟蹤自己做的事情。但正如一些天文學家致力于設(shè)計望遠鏡一樣,一些研究人員專注于構(gòu)建使研究成為可能的軟件。從事這項工作的人被稱為研究軟件工程師(research software engineer),他們主要構(gòu)建其他研究人員依賴的專用軟件。在本書中,作者通過幫助讀者為自己編寫代碼以及創(chuàng)建有助于整個領(lǐng)域進步的工具,為研究軟件工程這一角色做好準備。
據(jù)書籍主頁介紹,本書既可以作為大學層次的課程材料,也可以用于讀者自學。俄勒岡大學助理教授 Grant McDermott 兩次轉(zhuǎn)推了該書籍,表示大多數(shù)研究人員將大量的時間花費在了自學軟件工程上,這本書籍指南可以使研究人員在這方面做得更好。這本書還提供了軟件工程方面的最佳實踐,非常值得向?qū)W生推薦。
本書的目標讀者是那些使用 Python 進行數(shù)據(jù)分析、但又想將自身編碼與軟件開發(fā)提升至更高水平的研究者。讀者沒有必要非常精通 Python,但應(yīng)該已經(jīng)習慣了從文檔中讀取數(shù)據(jù)以及編寫循環(huán)體、條件語句和函數(shù)。此外,就書籍內(nèi)容而言,本書并不只是簡單地提供一些關(guān)于好的編碼實踐的參考資料,而側(cè)重于創(chuàng)建軟件包以解決實際的研究問題。
書籍目錄
本書共有 15 章,涵蓋了使用 Unix shell 管理數(shù)據(jù)和代碼、使用 Python 構(gòu)建命令行工具、使用 Git 和 GitHub 跟蹤和分享工作、配置程序、測試軟件、創(chuàng)建以標準方式安裝的 Python 包等諸多方面。以下只列舉了前 5 章的具體內(nèi)容,其他章節(jié)內(nèi)容可參考原書籍。
第 1 章:入門指南
- 項目結(jié)構(gòu)
- 下載數(shù)據(jù)
- 安裝軟件
第 2 章:Unix shell 的基礎(chǔ)知識
- 文件和目錄
- 移動
- 創(chuàng)建新文件和目錄
- 移動文件和目錄
- 復(fù)制文件和目錄
- 刪除文件和目錄
- 通配符
- 閱讀手冊
第 3 章:使用 Unix shell 創(chuàng)建工具
- 組合命令
- Pipe 如何運行
- 在多個文件中重復(fù)命令
- 變量命名
- 重做
- 自動創(chuàng)建新文件名
第 4 章:使用 Unix shell 進一步探索
- 創(chuàng)建新命令
- 使腳本功能性更強
- 將交互式轉(zhuǎn)化為腳本
- 在文件中查找
- 查找文件
- 配置 Shell 腳本
第 5 章:使用 Python 構(gòu)建命令行工具
- 程序與模塊
- 處理命令行選項
- 文檔
- 詞頻計算
- 管道
- 位置和可選參數(shù)
- 結(jié)果理序
- 編寫自己的模塊、
- 繪圖
- ……
主要作者介紹
Damien Irving,分別于 2009 年和 2016 年取得墨爾本大學的學士和博士學位。雖然目前主要從事海洋溫度與鹽度變化的檢測與歸因研究,但對科學計算與開放科學具有濃烈的興趣。業(yè)余時間擔任學習網(wǎng)站 Software Carpentry 的講師。注:Software Carpentry 網(wǎng)站專為科學家和工程師提供在計算技能方面的速成課程。
個人主頁地址:https://people.csiro.au/I/D/Damien-Irving
Greg Wilson,本科畢業(yè)于加拿大女王大學,之后在愛丁堡大學取得了人工智能碩士與計算機科學博士學位。在其豐富的職業(yè)履歷中,他曾擔任企業(yè)軟件開發(fā)者、獨立咨詢顧問、高級軟件工程師、大學助理教授、數(shù)據(jù)科學家、專業(yè)教育家等。此外,他還是學習網(wǎng)站 Software Carpentry 和開源軟件架構(gòu)(The Architecture of Open Source Applications)的聯(lián)合創(chuàng)始人。
個人主頁:https://third-bit.com/
文章題目:提升編碼水平,這本Python軟件工程開源書籍為研究人員量身打造
文章位置:http://m.fisionsoft.com.cn/article/coijhcs.html


咨詢
建站咨詢
