Почему VB.NET 9 не имеет автоматических свойств, таких как C # 3? - PullRequest
11 голосов
/ 23 сентября 2008

Если бы у вас была небольшая приятная функция, которая позволяла бы быстрее писать код, такой как Automatic Properties, очень хорошо подходил бы к мантре VB.NET?

Примерно так будет работать идеально:

Public Property FirstName() As String
    Get
    Set
End Property

ОБНОВЛЕНИЕ: VB.NET 10 (поставляется с Visual Studio 2010 и .NET 4.0) будет иметь автоматические свойства. Вот ссылка, которая показывает небольшую информацию о функции: http://geekswithblogs.net/DarrenFieldhouse/archive/2008/12/01/new-features-in-vb.net-10-.net-4.0.aspx

В VB.NET 10 автоматические свойства будут определены следующим образом:

Public Property CustomerID As Integer

Ответы [ 7 ]

6 голосов
/ 23 сентября 2008

Одной из причин задержки многих функций в VB является то, что структура разработки сильно отличается от C #, и, кроме того, что часто больше внимания уделяется деталям. Похоже, то же самое и в этом случае, как предполагает сообщение Пола Вика по данному вопросу. Это прискорбно, потому что во многих случаях это означает задержку (автоматические свойства, методы итератора, многострочные лямбды и многие другие), но с другой стороны, разработчики VB обычно получают гораздо более зрелую функцию в долгосрочной перспективе (глядя на обсуждение, это будет особенно верно для методов итератора).

Итак, короткая история: VB 10 (надеюсь!) Увидит автоматические свойства.

5 голосов
/ 27 сентября 2008

В vb.net это было не так сложно, так как Visual Studio автоматически создаст для вас 90% кода скелета свойства, тогда как в C # вам приходилось все это печатать.

3 голосов
/ 23 сентября 2008

Если вы хотите сделать свойства немного быстрее, попробуйте фрагменты кода. Тип: Имущество и просто после ввода "y" нажмите клавишу Tab: -).

Я понимаю, что это не отвечает на конкретный вопрос, но дает вам то, что предоставила команда VB ...

2 голосов
/ 05 января 2009

Я знаю, что этот пост старый, так что вы, возможно, уже знаете, но VB получает Auto Properties в следующей версии VS.

На основе ответа на обратную связь и Channel9 .

1 голос
/ 23 сентября 2008

Нет особой причины на самом деле. Всегда было так, что даже когда VB.NET и C # рекламируются как одинаково мощные (и, честно говоря, они являются ), их синтаксисы и некоторые структуры иногда отличаются. У вас есть две разные команды разработчиков, работающие над языками, так что это то, что вы можете ожидать.

1 голос
/ 23 сентября 2008

C # и VB.NET точно не соответствуют новым функциям в своих первых версиях. Обычно к следующей версии C # догоняет некоторые функции VB.NET и наоборот. Я вроде как буквальный XML из VB.NET, и надеюсь, что они добавят это в C #.

0 голосов
/ 27 марта 2010

автоматические свойства не нужны в vb уступка, которую дает использование автоматического свойства, заключается в том, что вы не можете изменить Get и Set.

Если вам это не нужно, просто сделайте общедоступным поле данных.

VB обладает автоматическими свойствами в течение многих лет. Они просто назвали их как-то еще.

...