iT邦幫忙

2021 iThome 鐵人賽

DAY 3
1

我在接觸寫程式後沒多久(大約半年)就開始接觸後端,一開始什麼都看不懂,當時公司裡的前輩雖然願意回答問題,但他偏向直接丟需求給我要我完成,因此我後來因進度落後壓力太大,常常回到家後繼續加班到半夜1、2點(當然沒有加班費),這讓我當時非常害怕自己是不是沒有這方面的才能......如今回頭看真的還是很佩服自己在這麼負面的情緒下撐下來了XDDD
我接觸過的有Java、PHP、VB6、VB.NET、ASP Classic、C#,其中Java跟PHP因當時的IDE輸Visual Studio(當時是VS2012)太多了,所以我後來都是用VS開發,因此我只針對我熟的.NET家族的來評論推薦度,給新手一點方向

程式語言

首先先介紹微軟的程式語言

Visual Basic.NET

推薦度:★☆☆☆☆

簡稱VB.NET,請不要簡稱VB,會讓人以為你在說VB6
通常你現在如果還有接觸到VB.NET的專案,通常都是舊網站的維護案,而且應該都是WebForm的專案,雖然VB.NET不是只能寫Web的後端,也能寫Windows的桌面應用,但VB.NET真的慢慢衰退了,而且跟C#比起來,他的未來性真的比較......另外有人說他的寫法跟C#差不多,稍微變化一下就可以,但其實在某些地方其實你會發現他們還是很不一樣的,以下舉例兩種語言的字串陣列宣告
VB.NET :

Dim catArray As String() = New String(10) {}
Dim length As Integer = catArray.Length

C# :

string[] catArray = new string[10];
var length = catArray.Length;

兩個程式的length(陣列長度)結果會不一樣,C#版的會是10,但VB.NET的會是11,因為VB.NET的陣列宣告是宣告最後一個元素的索引是多少(光這個差異就會讓你抓Bug抓一整天)

Visual Basic 6

推薦度:☆☆☆☆☆

簡稱VB6,後面的6是他的最後一個版本,不過你不用知道沒關係,因為完全不推薦,只是因為上面有講到所以才順便介紹一下,當你遇到還有公司還在寫這個,請你馬上開啟人力銀行履歷,不要浪費生命在上面了,他除了能寫Windows桌面應用程式外什麼平台都跨不了,IDE還要去找非常舊版的才能使用,還在使用的公司少,學會了對履歷的加分效果十分有限(PS:除非你覺得你待的公司你能一直待到退休,到你退休前都不會倒,也不會資遣你,那你就可以不用擔心,你可以靠這個幾乎用不到的技術吃飯吃一輩子)。

C#

推薦度:★★★★★

唸做C Charp,不是C hashtag,這是筆者最常使用的程式語言,除了.NET Framework跟.NET Core,以及未來的.NET 5的新技術都會是用這語言為主流來支援(當然VB.NET也是可以,但絕對不會是主流),他也可以結合Xamarin技術開發iOS跟Andriod的APP,是跨平台能力相當優秀的語言,而且微軟一直持續更新,優化C#的寫法以及新增許多語法糖(方便的寫法),而我們寫成是最重要的就是網路上的資源,當你使用C#想解決什麼問題時,只要善用關鍵字大部分都找的到答案(最快的就是先去MSDN跟Stack Overflow找答案)

ASP Classic

推薦度:☆☆☆☆☆

全名Active Server Pages (ASP),也叫Classic ASP或ASP Classic,但不管叫什麼都沒關係,因為也完全不推薦,當你遇到還有公司還在寫這個,請你也馬上開啟人力銀行履歷,不要浪費生命在上面了,當然你如果已經腳麻了跑不動了也沒關係,也許你在你的舒適圈內也過得很開心,但對於新手我是完全不推薦學這個的,程式沒有前後分離、DEBUG麻煩(與C#、VB.NET比較),而且也沒什麼公司還在用了(部分傳產或製造業的老舊系統還是會有)。
特別提醒ASP Classic與ASP.NET是完全不一樣的技術,請勿混淆。(之後會介紹兩者的區別)
另外,如果你真的很不幸的接到了這類型的專案,這邊還是有推薦的教學資源:
https://riptutorial.com/asp-classic

最後總結:C#>>VB.NET>>ASP Classic=VB6
下一篇我會在介紹.NET Framework、.NET Core


上一篇
Day 2. 關於前端
下一篇
Day 4. 關於.NET後端(2)
系列文
新手成為軟體工程師的技能樹點法&心路歷程 11
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
照燒
iT邦新手 4 級 ‧ 2022-07-06 10:07:00

C#也越來越不樂觀,可以說學生可以用,工作要避免使用
有好多程式跑nodejs或flutter去開發跨平台都遠比Xamarin好用
比如說Xamarin還要額外的XAML學習成本
而且沒有nodejs生出來各種框架所用的js輕鬆而有彈性
C#最有價值的是他有不少新概念都會率先推出,算是可以當作實驗場

我要留言

立即登入留言