程式設計師為什麼要用 Linux 環境程式設計,用 Windows 不可以嗎?

時間 2021-05-06 03:37:29

1樓:

單純從後端開發的角度來說,linux真是方便太多了,各種配套工具一應俱全,但是吧,日常辦公又離不開windows。

所以,虛擬機器它不香麼,我現在就是虛擬機器裡跑manjaro + i3 基本占用不了多少資源,每天備份一下建立乙個快照,就不怕機器給搞壞了,虛擬機器直接匯出,就可以在其他電腦上直接搭一套開發環境,多方便。

開發環境本來要的就是穩定,arch雖然很好用,難保哪天就滾掛了,每次大更新之前,來個快照,即使掛了,也能立馬恢復到之前的狀態,不耽誤工作。

下班或者划水的時候,直接掛起虛擬機器,用的時候在恢復各種軟體工作狀態和之前一樣,基本和mac一樣了,下班合上蓋子,上班直接開啟就能工作,這不香麼,有那時間折騰,不如去leetcode上刷兩道題

2樓:jun4rui

說真的,乙個程式設計師老是用自己熟悉的玩意,怎麼配當乙個真正的程式設計師?工作的時候順便就把Linux掌握了,怎麼看都是一箭雙鵰的便宜好事。

不是不可以用Windows,而是你一看就是個沒天賦沒探索欲的二三流程式設計師。

3樓:天堂的隔壁

不知道是大家沒有注意到,還是這個問題本身有點引戰所有有點帶偏了。

這個問題的標題是,為什麼要用Linux,但問題的內容卻是關於ide的。

現在伺服器windows也多了,比如用myeclipse、eclipse之類的IDE程式設計,真的有區別嗎,需要刻意到Linux下程式設計嗎?

也就是說這個問題可能是題主覺得用ide編譯挺好,為什麼被要求在Linux上用Makefile,mvn,gradle等用命令列來編譯。

那原因很簡單,就是CI/CD。軟體需要隨時自動化的完成編譯,測試,不需要人來干預,不會出錯,不會偷懶。這種模式下命令行會好的多,而這些命令列顯然在服務區上做更方便。

ide對人友好,但人不願意反覆做這件事,而且反覆做可能會出錯。這也是為什麼現代ide除了支援在ide裡編譯也都會支援命令列的編譯方式。

當然,這些事Windows上並不是不能做,而是主流的(注意這裡的主流並不是說數量的,自己感覺)伺服器都會用Linux,而正好很多數軟體又追求並且支援跨平台的編譯,所有這些平台就順理成章的在Linux上進行編譯了。

4樓:光速蝸牛

沒乙個答到點子上的,就乙個原因,開發出來的程式是跑在linux上的,就這麼簡單。

換行符都不一樣有時候調個玄學bug真能調死人的

5樓:人類

題目是偽命題程式設計師並不都要用linux環境程式設計

我記得全球的統計資料開發環境作業系統佔比第一是windows

具體到國內公司我知道的好像就小公尺用linux台式電腦吧其他公司要麼win mac可選要麼直接mac

6樓:

這裡說的「Linux環境」應該指的是本地PC系統,如果目標平台是伺服器(比如DL)的話顯然並沒有多少必要直接用Linux桌面。在Windows上Xshell+WinSCP+VSCode Remote遠端上Linux伺服器的開發效率和體驗已經非常好了

7樓:寬泛科技

用win當然可以。因為不管你以後去找工作。或者是上學習班。

大多數的地方還是要用 win 的。(我倒是見過那些號稱全蘋果開發的公司,裡面蘋果裝 win 的也有的是)盡可能的快速的把環境部署出來,然後進入開發。這樣你的時間能多一點。

畢竟要從頭開始,調整好一台順手的 linux 系統,是相當花費時間的。

Linux 的使用體驗不是開箱即用的,需要大量的文件閱讀,以及 troubleshooting 。因為 Linux 追求的是可變性,每個人可以按照自己的喜好需求去改設定甚至原始碼,最終得到乙個(只有)自己最舒適的環境。程式設計師用 Linux 的很多,因為已經會程式設計所以邊際成本不高。

同時為了開發,需要各種各樣高度可定製的環境。

能不能不要這麼麻煩?能, Ubuntu/mint 之類的入門 Linux 。商業公司這麼大的家業也是很多產品掙的,開發什麼軟體就用什麼系統,別給自己設限,不用指定只用哪個。

伺服器定製:Kuanfans|寬泛科技 - 專注於計算機視覺和深度學習計算的資訊化解決方案服務商

8樓:SIR劉

搞科研的最注重的就是安全性,眾所周知,WINDOWS的安全性有多差即便是不斷的更新,不斷的出補丁,使用者始終是被威脅著,為什麼?

普及程度高,導致了黑客對WINDOWS的窺視而由於LINUX的低廉,也就是免費,安全效能都要高與WINDOWS說LINUX安全性不高的100%沒用過它

還有LINUX免費不代表沒有安全性,免費和安全性沒有任何關係

9樓:sss

unix社群開發者一枚... (也不是多厲害那種)個人部落格

https://paleknight.tk我覺得全憑個人喜好和實際開發情況,不存在鄙視鏈這種(反正我遇到的比較厲害的從來沒有瞧不起win的情況),我自己偶爾也用win,不然linux上你拿頭打遊戲。

雖然我不歧視win使用者,但win 10確實是我用的體驗最差的windows版本(我的電腦驅動只支援win10,沒辦法回滾...)

不知道為啥部落格在知乎裡打不開得到瀏覽器打卡....

10樓:不說

我用linux的一大原因是linux遊戲少,不會像在windows下那樣容易分心。

還有linux也比windows快得多,流暢得多,用起來舒服。

第三,linux是免費的,而windows是要錢的,雖說可以用盜版,但畢竟有道德和法律的問題。

11樓:機械人DENNIS

選開發的系統環境主要有三點因素需要考慮:

看部署平台是什麼環境,如果產品是部署在linux上的,你最好選擇linux開發環境,這樣可移植工作就少了。當然這個也看實際情況,比如遊戲開發,windows端開發效率很高,省下的時間做移植工作也是可以的,當然前提是可移植!

公司要求限制,那就沒得選,服從組織安排,啥也別bb。

自己的技術棧:在寬鬆的開發條件下,按照自己的能力選擇。在不失一般性情況下,linux技術棧要比windows技術棧喜人,注意不僅是喜別人,更重要的是喜自己。

12樓:BuG

我覺得是因為大部分公司的伺服器是Linux的吧,畢竟免費,用windows的話,買伺服器版本的windows應該就要花很多錢吧。既然大部分公司的伺服器是Linux,那程式設計師開發環境也用Linux最好咯,不然部署的時候會多很多麻煩,影響效率。

13樓:TheBadZhang

因為,現在的應用大多數都是聯網的,需要和伺服器一起工作的,前端就是幾個拖拖控制項,呼叫函式的地方,具體函式怎麼定義的,都是在伺服器上,所以。。。你們大概是windows伺服器?

14樓:鵝城老實人孫守義

我也想用Windows啊,用著多舒服。

奈何學校的伺服器是Linux的,連圖形介面都沒有,如果想白嫖把自己賣了都買不起的顯示卡和CPU,就只有在學校的伺服器上跑程式。

所以我一般在本地Windows上把程式寫得七七八八了,然後發到伺服器Linux上debug。

15樓:

本身你這個問題就是錯誤的

首先並不是所有的程式設計師都用Linux來程式設計。本來就挺大一部分的程式設計師用windows。像我用到Linux程式設計的時候,只有極少的情況,一般是涉及偏硬體開發,還有網路安全時候才用

還有一種情況就是WIndows系統對硬體要求過大,在一些小型的嵌入設裝置上,或者一些比較陳舊的裝置上,才會用到Linux系統,事實上能用Windows還是會盡量用Windows。

16樓:

那反過來問怎麼樣,「程式設計師為什麼要用 windows 環境程式設計,用 linux 不可以嗎?」

這東西,和吃飯用刀叉還是筷子有什麼區別?你喜歡什麼就用什麼,別人沒必要和你一樣是吧

17樓:darenzai

因為伺服器上大多數都是Linux系統,所以直接在Linux上寫不光可以熟悉Linux,還能防止專案在Windows上跑的起來,在Linux上就報一堆錯誤。

18樓:灰色青

先發表一下觀點,當然是可以的。沒有最好的環境,只有最適合的環境。

window可能更多的是偏向做業務開發(前端,客戶端,傳統後台等等),不必關心服務化,高併發等複雜的場景。對系統底層關心不大。

大部分伺服器都是linux為主,window雖然也有,但是更多是傳統行業。就別提window下的docker,本人就是專門搞docker的,window雖然幾年前已經支援,但是現在主流k8s基本不使用window。

由於經常操作伺服器,linux和mac我都用過(window自從當年裝docker 2天都還沒裝上就放棄了),現在用黑蘋果,linux太折騰,一年一重灌,還是搞虛擬機器吧(比如把python2解除安裝了,yum命令直接就掛了,依賴管理真的太複雜,當然也可以說我技術水平有限)。而且很多專用軟體缺少,所以還是選了蘋果,同為unix系統,大多數命令還是相同的,很多專業的還是不一樣的(比如iptables,cgroup什麼,你就沒法在上面搞吧),同時支援的軟體多,系統穩定。窮的可以跟我一樣裝黑蘋果

總結,有錢買蘋果,沒錢黑蘋果,蘋果萬能

19樓:

當你命令列用慣了

你會發現

cmd 現在叫做 powershell 很難使用第三方 cmder 啥的總感覺差點啥

除此之外

好像沒什麼嚴重問題了

20樓:「已登出」

主要是命令列,windows下啟動,執行命令列,超級慢又難用。

node專案npm start一下,同樣的專案我的air啟動的都比我的i7台式電腦快很多,linux下同樣很快。

git更是重災區,對比起來真的很慢,在我公司電腦上更是慢的離譜。

真的一點都不想用windows。

21樓:argv

怎麼說呢,從我來說,一開始單純是為裝逼。後來就成了需求,尤其體會到分布式的好處之後。

windows簡單嗎?簡單。gui不管怎麼說都比命令列要上手難度低。

好用嗎?不一定,看領域吧。你做嵌入式,用windows肯定是自己找罪受,就像做圖形非要用linux一樣。

就像vb一樣,視覺化程式設計簡單嗎?簡單。但是你給我用vb寫個驅動出來我看看。

22樓:狗尾草的小確幸

並不是所有程式設計師都用linux程式設計啊,還是Windows用得比較多。

不過工作中的技術選型會優先考慮linux,比如遠端登入linux主機,改改host都很方便。

我認識的程式設計師平時上網,遊戲,看電影還是用Windows.

Linux作業系統是基於UNIX作業系統發展而來的一種轉殖系統,它誕生於1991 年的10 月5 日(這是第一次正式向外公布的時間)。以後借助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類作業系統,並且使用人數還在迅猛增長。

為什麼有些程式設計師要用 Linux 環境而非 macOS 環境程式設計?

海東喵 除了搞 Linux GUI 的還在用 Linux 環境程式設計,其他的基本都在 Windows 平台開發。用 MacOS 是因為 iOS 只能用 Xcode 生成和除錯。不用怎麼測試有沒有bug啊! win是最好的linux發行版。所以尋根求源。mac當然可以,但是大一統的介面不適應,都是從...

為什麼Linux程式設計師不用IDE而要用很不方便的gdb除錯程式?

也對GDB不熟,之前用過,現在也是剛用,就納悶你們多檔案跳轉的時候咋辦?比如我斷點在b檔案,但是a檔案呼叫的b檔案,我想回去看a檔案裡面如何呼叫的咋辦?而且檔案多了,感覺好費勁。 繁星雨夜 麻煩推薦乙個 在通過網路連線的嵌入式開發板上進行程式除錯 不用 gdb的更好替代方案 工作這麼忙,哪有時間浪費...

為什麼某些程式設計師要用mac?

馬爾克斯 鍵程短,比如command s。螢幕解析度高。可以低著頭開發,看單位的1920 1080的顯示器脖子疼。類unix系統,不用像windows配來配去,命令列安裝就好了。桌面整潔。 波羅丁的菠蘿 1.沒有各種亂七八糟的廣告,別跟我說怎麼怎麼解除安裝,真的心累了2.螢幕好,每天都要看十來個小時...