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

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


咨詢
建站咨詢
