云原生集成開(kāi)發(fā)環(huán)境——TitanIDE
通過(guò)網(wǎng)頁(yè)在任何地方更安全、更高效地編碼2023-02-28
828
原文作者:kaiyun開(kāi)云創(chuàng)新技術(shù)總監(jiān) 鄧冰寒
概述
上一期在使用 Ubuntu 20.04 作為基礎(chǔ)鏡像而定制的 WeTTY 成功的在 TitanIDE 運(yùn)行起來(lái)了 ,非常適合程序員使用。能作為云原生 Terminal 的候選項(xiàng)目有 WeTTY、GoTTY、ttyd。接下來(lái),我將在這三者中選擇最合適的作為 TitanIDE 的常用開(kāi)發(fā)工具。
如果您對(duì)本文所講的上下文不了解,請(qǐng)拉到本文底部,閱讀上期相關(guān)文章。
為什么需要云原生 Terminal ?
在 TitanIDE 集成云原生 Terminal ,就是為了給程序員提供更加高效的開(kāi)發(fā)工具,概括來(lái)說(shuō)有以下幾方面的目的。
首先,雖然 VS Code 和 Jetbrains 的全家桶都集成了 Terminal,但是,在很多場(chǎng)景下需要全屏的體驗(yàn),就猶如在 Mac 的 iTerm 一樣有極佳的使用體驗(yàn)。在 TitanIDE 上,我們也希望擁有一樣的使用體驗(yàn),快速啟動(dòng)一個(gè)輕量的 Terminal。
其次,在開(kāi)發(fā)、運(yùn)維過(guò)程中,經(jīng)常需要遠(yuǎn)程連接服務(wù)器,對(duì)于 MacOS 和 Linux 用戶(hù)來(lái)說(shuō),有原生的 Termianl 可以使用,但是絕大多數(shù)程序員還是使用 Windows,然后通過(guò) XShell 等應(yīng)用來(lái)連接遠(yuǎn)程服務(wù)器,如果能在瀏覽器快速的使用具有 Linux 原生體驗(yàn)的云原生 Termianl,豈不是給程序員帶來(lái)極大的方便和效率的提高。
除此以外,我們通過(guò)獨(dú)立的 Terminal 來(lái)啟動(dòng) NeoVim,可媲美一般的 IDE,實(shí)現(xiàn)代碼編寫(xiě)、搜索、調(diào)試等。如下圖,我們先留個(gè)記號(hào),后面我會(huì)專(zhuān)門(mén)針對(duì) NeoVim 寫(xiě)一篇文章,敬請(qǐng)期待。
選擇最合適的云原生 Terminal
在 TitanIDE 集成云原生 Terminal 有幾方面的因素考量:其一是為了增強(qiáng)程序員的使用體驗(yàn),有相當(dāng)數(shù)量的程序員習(xí)慣了使用 Terminal,我們把開(kāi)發(fā)環(huán)境搬到云端后,在不改變程序員的使用習(xí)慣的情況下,最大限度地降低程序員的學(xué)習(xí)成本;其二是為了擴(kuò)增出更多的應(yīng)用場(chǎng)景,比如通過(guò) NeoVim 定制自己的 IDE,在本地 Terminal 已經(jīng)應(yīng)用很廣泛了,在云端能否延續(xù)呢?我在本系列文章會(huì)有相關(guān)的分享。眼下需要選擇一款最合適的云原生 Terminal。下面就對(duì) WeTTY、GoTTY、ttyd 做個(gè)橫向比較。
以上三款都通過(guò) TitanIDE 的 TemplateMaker 制作成了模板鏡像,并通過(guò)試用,最后在 WeTTY 和 ttyd 之間做選擇,GoTTY 的自定義設(shè)置比較弱,需要投入更多的時(shí)間去解決字體設(shè)置等問(wèn)題,暫時(shí)放棄。WeTTY 和 ttyd 都已經(jīng)制作成了 TitanIDE 的模板,如果已經(jīng)下載安裝 TitanIDE 的用戶(hù),可以直接下載模板進(jìn)行安裝使用,請(qǐng)點(diǎn)擊下方鏈接免費(fèi)下載TitanIDE。以上提到的模板制作源碼也同步上傳到 GitHub 和 Gitee,有需要的同學(xué)可以克隆下來(lái),添加自己需要的命令行工具。
后記
最近,ChatGPT 異常火爆,各行各業(yè)的人都在談?wù)?ChatGPT, 以上是個(gè)人對(duì) WeTTY、GoTTY、ttyd 做的橫向比較,那 ChatGPT 是怎么看的?請(qǐng)看我在 TitanIDE 和 ChatGPT 的對(duì)話(huà):
上一篇:云端IDE系列教程8:TitanIDE 與 DBeaver 的愛(ài)情故事
下一篇:云端IDE系列教程6:解決 WeTTY 在 Ubuntu 非 root 用戶(hù)不能運(yùn)行的問(wèn)題