簡體   English   中英

移動到 ASP.NET - VB 還是 C#?

[英]Moving to ASP.NET - VB or C#?

我們有一個大型 ASP 經典代碼庫,但我希望在 ASP.NET 中進行未來的開發(並且可能在未來移植到我們所擁有的)。 語言的自然選擇似乎是 VB(現有代碼是 VBScript),但我是不是太草率了? 從長遠來看,語言的選擇甚至會產生影響嗎?

花時間的是learning.Net(框架)。

具體語言無關緊要,更多的是品味問題。 我通常建議嘗試使用兩種語言(以及您可能喜歡的任何其他語言)的一些游戲項目,然后決定您更喜歡哪一種(或更成功!)

首先,不要為了它而移植某些東西。 如果它工作正常並且移植它沒有什么好處,那就別管它,並繼續在 VBScript 中進行錯誤修復和小的增強。如果有足夠的理由移動東西,那么就在那一點上做,但你會好得多如果您預先進行端口操作,請先熟悉 web 應用程序的 .Net 版本,而不是嘗試即時學習。 在“干凈”的環境中學習 PostBack 和 ViewState 等新概念要容易得多。

也有更少的 scope 可以打破你在移植東西時的舊思維方式(只是讓它按照舊的方式工作,而不是在需要的地方重新設計)。

從長遠來看,最終並沒有太大的區別,這主要是感性的和個人品味的問題,但我建議先學習 C#,因為不熟悉會強調你正在學習新東西的事實。 希望這會幫助您學習以自然的 .Net 方式做事,而不是主要是程序化的 VB(腳本)方式。 你在學習的同時也在努力忘卻。 熟悉某些關鍵字會對您不利。

在一些帖子中呼應其他好處,並添加一些我自己的好處:

  • 未來潛在收益:C# 由於認知差異,開發人員的身價普遍高於VB.Net 開發人員。
  • 大多數開源 .Net 代碼都是 C#,而且它的質量通常(盡管不總是)往往更高。
  • inte.net C# 上的問答和示例比 VB.Net 多。 在我發布這篇文章時,Stack OverFlow 上有1572個標記為 C# 的帖子,只有185個標記為 VB.Net。
  • C# OO 關鍵字相當標准,它更容易閱讀其他 OO 語言代碼。 VB.Net 關閉並無緣無故地重命名事物,例如抽象(C#、C++、Java 等...)與MustInherit (僅限 VB.Net)。
  • 人們普遍認為,一旦您熟悉這兩種語言,與 VB.Net 代碼相比,直觀地解析 C# 代碼要容易得多
  • 你不會被 C# 的人“看不起”,並且可以幫助取笑 VB.Net 的人(如果你願意 - 這種文化存在......)

一旦您在 C# 中初步了解了它,那么轉向 VB.Net 應該比反過來要容易得多。 投資於你自己的未來。

當我從 ASP3 遷移到 ASP.NET 時,我最終選擇使用 C# 而不是 VB.NET。

我寫了很多年的基礎知識(MS-BAsic、GW-Basic、Quick-Basic、Visual Basic、VBScript),使用 VB.NET 非常困難,因為我總是嘗試像以前使用 VB6 或 VBScript 那樣寫東西。

所以 C# 對我來說是一個更好的選擇:我的習慣並沒有拖慢我的速度。

此外,C# 是一種新語言(此時),而新的 VB.NET 關鍵字給了他 Cobol 的味道:)

另外,不要忘記您可以在一個項目中混合搭配!

我會選擇具有您最熟悉的語法的語言,因為它們在功能上幾乎沒有區別,盡管有人說 VB 和 c# 開發人員之間存在文化差異。 另一種選擇是兩者都學習,我認為遷移到 .net 的最大障礙是學習龐大的 .net 框架,您應該能夠相當快地掌握實際的語言語法。

重要的是學習 .NET。不是特定的語言,因為 C# 或 VB 只改變語法。 在 .NET 環境中它們背后的邏輯是相同的。

您可以在 C# 或 VB.NET 中執行相同的操作。最終將選擇哪個更容易移植。

請記住,您不應該(恕我直言)將 ASP 直接移植到 ASP.NET,因為您會失去 .NET 中的大部分功能,無論如何這將包括相當多的重寫。 所以我會用 go 和 C# 因為我認為它不那么冗長並且更容易編寫和閱讀。

.NET 實際上是關於框架和基礎 class 庫的。 VB 或 C# - 正如克里斯提到的那樣,實際上只是語法上的差異。

因為你已經完成了 VBScript 遷移到 VB.NET 更自然 - 你可以學習新的語法,然后移動到框架和 BCL,當你熟悉那些你可以學習 C# 語法時,雙語總是好的.

2sontek:VB 中還有一些功能在 C# 中不受支持 - 讓我們不要在那里使用 go。 80%(或更多)的開發人員只使用 20% 的功能,差異非常小——他們肯定不適合這 20%

我在這兩個方面都進行了開發,但我更喜歡 C#。

你可以用兩種語言做大部分事情,我當然不會在 c# 中重新編寫任何 vb 項目。

However with C#: New language features generally come to c# first of all eg lamda expressions in linq You can write code in c# C# will force you to be neater C# developers get paid on average more and most larger projects will only be c# C# has similar語法和 function 名稱為 javascript .net 社區對 vb 開發人員有些勢利

區別不大,但有一些區別(本質上主要是語法上的)。 如果您的舊站點是 VBScript,則 go 和 VB.NET 可能更容易。

C# 3.5 中有一些功能在 Visual Basic 中不受支持,但語言選擇始終是團隊的偏好,也是你們覺得最有效率的地方。

根據經驗,最簡單的方法是 go 與您當前的技能組合。 如果這是在 vb6/vbscript 等中,我會首先查看 vb.net。它還取決於任何項目時間表和交付日期。 vb.net你會更快上手。如果你有時間我會認真考慮c#,如果只是為了讓你在尋找新牧場時在開發市場上有更強的立足點。

您可能還想查看 C#。

VB.Net 和 C# 都非常適合創建 web 應用程序,這實際上取決於您的需求。

例如 C# 非常適合事件,VB.Net 非常適合 XML。

我會說 go,你的開發人員覺得更舒服。

我最近在看一個網站,該網站列出了基於技術的英國平均工資。 現在找不到鏈接(典型),但我記得 C# 的平均工資比 VB.NET 的平均工資高 5000 英鎊左右。

如果你不打算同時學習這兩者(而且真的沒有理由不學習,因為它們之間唯一真正的區別是語法)我會選擇 go 換成 C#。

.net 或 c# 取決於您將如何解決問題以及如何讓您更有創意。 但我認為很快 .net 將被刪除,c# 將成為唯一可以在 asp 中使用的語言。 我開始學習 .net 概念,然后在我將語言更改為 c# 以獲取 asp.net mvc,所以我建議您必須將 go 更改為 c#,因為它將來對您有更多幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM