vscode 整理————開篇之力(一)


前言

作為一個開發為什么對一個vscode 這樣的工具進行整理呢,因為vscode 非常的常用,它包含很多編輯器共同有的特征,這些特征幫助我們了解其他編輯器。

這里可能就有人疑問了,我們需要去非常的關注去了解一個編輯器嘛,不應該去關系並發問題嗎。

對於這個問題現在的我是不疑惑的,現在動不動廣告就是什么什么技術怎么樣的,什么千萬級並發,什么大數據啊。

有一個東西叫做互聯網造詞,以前難道就沒有大數據嗎?難道已經就沒有人處理大數據嗎,也是有的,以前好像就叫數據處理吧,然后就開始造詞大量的進入ppt了。

同樣千萬級並發,一言不和就是千萬級並發的,給你一台一核一G並發一個看一下。數據並發不僅僅涉及到開發,還設計到運維和測試,他們能夠得出我們一台機器對於我們某個業務的承載量,需要多少機器,提升曲線是什么。

現在很多廣告,或者為了吸引眼球的標題,往往給人一種設計了一款千萬級的應用,只差一個程序員的感覺。

其實個人覺得代碼的優化空間並不大,只有寫的不過分的話,主要還是業務設計的優化空間大,復雜業務可以拆分成多個簡單的業務,那么這些業務如果能拆分開負載到不同機器上,那么可以橫向擴展來滿足需求是比較好的,橫向擴展上升也是有曲線的。還有一個是數據庫設計問題。

並發問題同樣看的是業務的復雜性,比如說解壓業務,並發上萬就很了不起了。那你要是說log業務,那么復雜度比較低,那么就是比較好處理的了。

似乎有點偏離主題了,前面提及的這些僅僅是為了說明一下或許不是那些聽起來高大上的能幫助自己更好的工作,或許是一些我們不是那么關心的事情。

正文

vscode 是一款免費開源的輕量級編輯器,為什么說其輕量呢?因為其沒有針對某一門語言進行設計,所以安裝狀態,它是輕量的,我們需要安裝我們所需要的插件,然后啟用,那么輕松就能獲取intelisentse,debug 和git 倉庫支持。

vscode 基於electron 進行開發,那么electron 是跨平台的,所以vscode 也是跨平台的。

elecrtron 接觸過一段時間,感覺可以替換一下展示類的桌面開發,因為其開發效率還是很高的,然后生態還是可以的。當時還開發過能夠提示開發效率的工具。

https://www.electronjs.org/ 這是electron 地址,更新比較快把,2018年的時候還是5版本,現在都14或者15了。文檔也不錯,當然有一些坑了,大部分可以看源碼解決一下,如果真的是bug,那么就要思考一下是否拉一個分支,該一下用上去了。

electron 開源地址: https://github.com/electron/electron

monaco editor 是vscode 的核心組件,是基於瀏覽器的代碼編輯器。那么知道這個有什么用呢? 因為monaco editor 是開源的,我們也可以基於這個編輯器,制作相應的工具。可能有人說了vscode 不就行嗎?

為啥還要開發工具呢?因為有的公司的是允許外人開發的,公司提供開發環境,在該環境下用戶允許的代碼,才能在該公司的平台上完美運行。

同樣vscode 擁有利用LSP提供了諸多語言的自動補全、定義跳轉、代碼格式化等於變成語言相關的問題。

同樣vscode 體用debug adapter protocol 協議來提供對諸多語言的支持。

那么vscode解決了語言開發問題,語言調試問題,同樣一個還差一個終端工具,這個終端工具就是Xterm.js。

Xterm.js 支持業界主流的瀏覽器,包括Chrome、Edge、FireBox和Safari。Xterms.js 可以與Electron開發的應用進行無縫集成。

xterm.js github 地址:https://github.com/xtermjs/xterm.js,有興趣可以看一下。

vscode 是用typescript開發的,tyepscript和c# 的語法非常像,這是為什么,畢竟是同一個設計師————anders,所以作為c# 開發者開發typescript幾乎只要過一遍語法就好,當然了同樣需要一些js或者nodejs的基礎。

知道了vscode 的一些開發組件或者一些思想,那么自己也能開發一些小工具。

下一節,介紹一些vscode的主要功能,或者編輯器的主要功能和用法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM