自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux 開發(fā)的五大必備工具舉例

系統(tǒng) Linux
Linux 已經(jīng)成為工作、娛樂和個(gè)人生活等多個(gè)領(lǐng)域的支柱,人們已經(jīng)越來越離不開它。在 Linux 的幫助下,技術(shù)的變革速度超出了人們的想象,Linux 開發(fā)的速度也以指數(shù)規(guī)模增長。因此,越來越多的開發(fā)者也不斷地加入開源和學(xué)習(xí) Linux 開發(fā)地潮流當(dāng)中。

Linux 已經(jīng)成為工作、娛樂和個(gè)人生活等多個(gè)領(lǐng)域的支柱,人們已經(jīng)越來越離不開它。在 Linux 的幫助下,技術(shù)的變革速度超出了人們的想象,Linux 開發(fā)的速度也以指數(shù)規(guī)模增長。因此,越來越多的開發(fā)者也不斷地加入開源和學(xué)習(xí) Linux 開發(fā)地潮流當(dāng)中。在這個(gè)過程之中,合適的工具是必不可少的,可喜的是,隨著 Linux 的發(fā)展,大量適用于 Linux 的開發(fā)工具也不斷成熟。甚至可以說,這樣的工具已經(jīng)多得有點(diǎn)驚人。

為了選擇更合適自己的開發(fā)工具,縮小選擇范圍是很必要的。但是這篇文章并不會(huì)要求你必須使用某個(gè)工具,而只是縮小到五個(gè)工具類別,然后對(duì)每個(gè)類別提供一個(gè)例子。然而,對(duì)于大多數(shù)類別,都會(huì)有不止一種選擇。下面我們來看一下。

[[247609]]

容器

放眼于現(xiàn)實(shí),現(xiàn)在已經(jīng)是容器的時(shí)代了。容器既及其容易部署,又可以方便地構(gòu)建開發(fā)環(huán)境。如果你針對(duì)的是特定的平臺(tái)的開發(fā),將開發(fā)流程所需要的各種工具都創(chuàng)建到容器映像中是一種很好的方法,只要使用這一個(gè)容器映像,就能夠快速啟動(dòng)大量運(yùn)行所需服務(wù)的實(shí)例。

一個(gè)使用容器的***范例是使用Docker,使用容器(或 Docker)有這些好處:

 

  • 開發(fā)環(huán)境保持一致
  • 部署后即可運(yùn)行
  • 易于跨平臺(tái)部署
  • Docker 映像適用于多種開發(fā)環(huán)境和語言
  • 部署單個(gè)容器或容器集群都并不繁瑣

通過Docker Hub,幾乎可以找到適用于任何平臺(tái)、任何開發(fā)環(huán)境、任何服務(wù)器、任何服務(wù)的映像,幾乎可以滿足任何一種需求。使用 Docker Hub 中的映像,就相當(dāng)于免除了搭建開發(fā)環(huán)境的步驟,可以直接開始開發(fā)應(yīng)用程序、服務(wù)器、API 或服務(wù)。

Docker 在所有 Linux 平臺(tái)上都很容易安裝,例如可以通過終端輸入以下命令在 Ubuntu 上安裝 Docker:

sudo apt-get install docker.io

Docker 安裝完畢后,就可以從 Docker 倉庫中拉取映像,然后開始開發(fā)和部署了(如下圖)。

圖 1: Docker 鏡像準(zhǔn)備部署

版本控制工具

如果你正在開發(fā)一個(gè)大型項(xiàng)目,又或者參與團(tuán)隊(duì)開發(fā),版本控制工具是必不可少的,它可以用于記錄代碼變更、提交代碼以及合并代碼。如果沒有這樣的工具,項(xiàng)目幾乎無法妥善管理。在 Linux 系統(tǒng)上,Git 和 GitHub 的易用性和流行程度是其它版本控制工具無法比擬的。如果你對(duì) Git 和 GitHub 還不太熟悉,可以簡單理解為 Git 是在本地計(jì)算機(jī)上安裝的版本控制系統(tǒng),而 GitHub 則是用于上傳和管理項(xiàng)目的遠(yuǎn)程存儲(chǔ)庫。 Git 可以安裝在大多數(shù)的 Linux 發(fā)行版上。例如在基于 Debian 的系統(tǒng)上,只需要通過以下這一條簡單的命令就可以安裝:

  1. sudo apt-get install git 

安裝完畢后,就可以使用 Git 來實(shí)施版本控制了(如下圖)。

圖 2:Git 已經(jīng)安裝,可以用于很多重要任務(wù)

Github 會(huì)要求用戶創(chuàng)建一個(gè)帳戶。用戶可以免費(fèi)使用 GitHub 來管理非商用項(xiàng)目,當(dāng)然也可以使用 GitHub 的付費(fèi)模式(更多相關(guān)信息,可以參閱價(jià)格矩陣)。

文本編輯器

如果沒有文本編輯器,在 Linux 上開發(fā)將會(huì)變得異常艱難。當(dāng)然,文本編輯器之間孰優(yōu)孰劣,具體還是要取決于開發(fā)者的需求。對(duì)于文本編輯器,有人可能會(huì)使用 vim、emacs 或 nano,也有人會(huì)使用帶有 GUI 的編輯器。但由于重點(diǎn)在于開發(fā),我們需要的是一種能夠滿足開發(fā)人員需求的工具。不過我首先要說,vim 對(duì)于開發(fā)人員來說確實(shí)是一個(gè)利器,但前提是要對(duì) vim 非常熟悉,在這種前提下,vim 能夠滿足你的所有需求,甚至還能給你更好的體驗(yàn)。然而,對(duì)于一些開發(fā)者(尤其是剛開始接觸 Linux 的新手)來說,這不僅難以幫助他們快速達(dá)成需求,甚至還會(huì)是一個(gè)需要逾越的障礙??紤]到這篇文章的目標(biāo)是幫助 Linux 的新手(而不僅僅是為各種編輯器的死忠粉宣傳他們擁護(hù)的編輯器),我更傾向于使用 GUI 編輯器。

就文本編輯器而論,選擇Bluefish一般不會(huì)有錯(cuò)。 Bluefish 可以從大部分軟件庫中安裝,它支持項(xiàng)目管理、遠(yuǎn)程文件多線程操作、搜索和替換、遞歸打開文件、側(cè)邊欄、集成 make/lint/weblint/xmllint、***制撤銷/重做、在線拼寫檢查、自動(dòng)恢復(fù)、全屏編輯、語法高亮(如下圖)、多種語言等等。

圖 3:運(yùn)行在 Ubuntu 18.04 上的 Bluefish

IDE

集成開發(fā)環(huán)境Integrated Development Environment(IDE)是包含一整套全面的工具、可以實(shí)現(xiàn)一站式功能的開發(fā)環(huán)境。 開發(fā)者除了可以使用 IDE 編寫代碼,還可以編寫文檔和構(gòu)建軟件。在 Linux 上也有很多適用的 IDE,其中Geany就包含在標(biāo)準(zhǔn)軟件庫中,它對(duì)用戶非常友好,功能也相當(dāng)強(qiáng)大。 Geany 具有語法高亮、代碼折疊、自動(dòng)完成,構(gòu)建代碼片段、自動(dòng)關(guān)閉 XML 和 HTML 標(biāo)簽、調(diào)用提示、支持多種文件類型、符號(hào)列表、代碼導(dǎo)航、構(gòu)建編譯,簡單的項(xiàng)目管理和內(nèi)置的插件系統(tǒng)等強(qiáng)大功能。

Geany 也能在系統(tǒng)上輕松安裝,例如執(zhí)行以下命令在基于 Debian 的 Linux 發(fā)行版上安裝 Geany:

sudo apt-get install geany

安裝完畢后,就可以快速上手這個(gè)易用且強(qiáng)大的 IDE 了(如下圖)。

圖 4:Geany 可以作為你的 IDE

文本比較工具

有時(shí)候會(huì)需要比較兩個(gè)文件的內(nèi)容來找到它們之間的不同之處,它們可能是同一文件的兩個(gè)不同副本(有一個(gè)經(jīng)過編譯,而另一個(gè)沒有)。這種情況下,你肯定不想要憑借肉眼來找出差異,而是想要使用像Meld這樣的工具。 Meld 是針對(duì)開發(fā)者的文本比較和合并工具,可以使用 Meld 來發(fā)現(xiàn)兩個(gè)文件之間的差異。雖然你可以使用命令行中的文本比較工具,但就效率而論,Meld 無疑更為優(yōu)秀。

Meld 可以打開兩個(gè)文件進(jìn)行比較,并突出顯示文件之間的差異之處。 Meld 還允許用戶從兩個(gè)文件的其中一方合并差異(下圖顯示了 Meld 同時(shí)打開兩個(gè)文件)。

圖 5: 以簡單差異的模式比較兩個(gè)文件

Meld 也可以通過大多數(shù)標(biāo)準(zhǔn)的軟件庫安裝,在基于 Debian 的系統(tǒng)上,執(zhí)行以下命令就可以安裝:

sudo apt-get install meld

高效地工作

以上提到的五個(gè)工具除了幫助你完成工作,而且有助于提高效率。盡管適用于 Linux 開發(fā)者的工具有很多,但對(duì)于以上幾個(gè)類別,你***分別使用一個(gè)對(duì)應(yīng)的工具。

責(zé)任編輯:武曉燕 來源: 搜狐
相關(guān)推薦

2021-03-17 08:36:28

XDR終端安全網(wǎng)絡(luò)安全

2010-03-25 10:51:59

Google Chro

2017-03-20 09:58:43

網(wǎng)絡(luò)數(shù)據(jù)分析工具

2023-09-04 12:04:09

CISO優(yōu)化企業(yè)

2013-11-28 09:23:33

監(jiān)控系統(tǒng)系統(tǒng)部署監(jiān)控

2015-07-16 09:56:58

Web開發(fā)程序員技巧

2018-06-10 11:17:49

2019-09-25 09:09:48

Linux內(nèi)核CPU

2010-11-05 13:23:44

Linux網(wǎng)絡(luò)監(jiān)控

2009-03-05 09:21:04

敏捷開發(fā)XP開源

2013-01-21 09:38:47

交換機(jī)交換技術(shù)網(wǎng)絡(luò)設(shè)備

2014-05-12 11:07:43

虛擬機(jī)性能虛擬機(jī)

2019-06-04 10:40:07

2021-04-10 15:34:09

LinuxLinux好處

2010-06-08 18:31:36

UML建模工具

2024-02-06 08:00:00

JavaScriptAI大語言模型

2010-10-26 10:30:44

2015-01-06 13:42:45

跨平臺(tái)開發(fā)APP工具

2009-03-11 20:25:13

Linux下載工具強(qiáng)力推薦

2010-07-01 10:55:58

UML建模工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)