我對於Linux 當作工作系統真是愛不釋手。
最近一個專案需要做系統開發,我要架構後端應用與前端網頁規劃。
前端已經先用Flutter Web拉好,並測試完WebSocket通訊功能。
後端要開始使用第一次學的NodeJs。
目的是使用NodeJs進行與產品的Modbus通訊以及把相關資訊轉存SqLite,並且提供WebSocket服務來做web 網頁的即時資料來源。
早期我工作環境就是桌機的windows,產線Cam端則是搭配linux(ubuntu)來做使用。
Windows有各式各樣的軟體環境,圖形化介面。知名的許多工商業應用程式都只能在Windows系統上跑。
可是偏偏之前公司的Cam作業軟體是在Linux上頭,所以我也第一次學習了許多Linux上系統操作的知識。
像是Perl,TCL等的Script 語言。
或是下終端機指令掛載硬碟磁碟,修改網路設定等之類基本的事情。
這種工作型態對於隨時拿來查找更改文字類的東西,非常方便上手。
因為效能的關係想更好,所以本來也想使用C++來做一些小工具程序讓現場人員做使用。
可是實際應用以後發現,要寫的東西太多。Perl簡單兩三行的東西,C++要各種嚴謹應對。宣告沒寫好,NULL或是例外沒處理好,都很麻煩。(當時的我還沒有再寫C#,沒有OO的概念)然後compile又是另外一個問題,總之各種搞我之後我就放棄了。
但我從Linux寫的程式,距今各種改版升級以後,其實都還能夠使用。
雖然都是終端機介面的小程序,但是隨手寫來很簡單,應對上又能快速解決使用者需求。重點還持久有效。(可惜我現在忘得差不多了,程式設計師就是這樣,我更嚴重屬於金魚腦)
不會像說ANDROID或是FLUTTER專案我寫個程序用個Library,你一個系統更新就把我原本使用的FUNC廢棄,我永遠要維護就對了。(真感謝你讓我永遠有工作可以做)
但現在要我把筆電也改成在上面作業是不可能的了。
C# Winform對於寫各種東西的圖形介面我已經很上手,況且公司打卡請假或是登入寫報表都有自己的軟體。這些軟體或作業系統我也沒辦法有置喙的權利,就算了。
直到現在要把準系統架構部屬在產品上,我又有機會可以好好玩這個系統。
Linux , 我又回來了,請多指教 !