Будете ли вы разрабатывать на VB, а затем конвертировать свой код в C #, чтобы вся ваша команда использовала один язык? - PullRequest
2 голосов
/ 26 января 2009

Я не рассматриваю это - я доволен C # и VB, но эксперт ни в одном. Но некоторые в моей команде выразили намерение сделать это, так как мы переходим к C # в качестве стандарта.

Ответы [ 12 ]

11 голосов
/ 26 января 2009

Ада нет. Просто абсолютная трата времени.

Я бы использовал VB поверх C # (или C # поверх VB), только если бы язык включал функции, которых не было в других.

Например, сделать вызовы с поздней привязкой к объектам взаимодействия COM намного проще в VB, чем в C # (хотя это изменится в C # 4.0).

При этом я буду придерживаться языка, который использует ваша команда, или того, что вы предпочитаете (если это вариант).

5 голосов
/ 26 января 2009

Звучит как рецепт катастрофы или, по крайней мере, бесчисленных моментов WTF без реальных выгод.

.net Сборки совместимы независимо от языка (в конце концов, это все IL в конце), поэтому от этого нет никакой выгоды.

4 голосов
/ 26 января 2009

Мне будет комфортно в C #, что не должно занять слишком много времени. Писать в VB, а затем конвертировать - пустая трата времени, IMO.

Кроме того, что происходит, когда им нужно прочитать какой-нибудь код C #, если они не чувствуют себя комфортно в языке?

3 голосов
/ 26 января 2009

Я бы этого не делал. Я бы начал использовать C #.

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

Есть и другие соображения, не упомянутые. В частности, если вы конвертируете свой VB-код в C # с помощью автоматизированного программного обеспечения, вы можете рассчитывать на многочисленные проблемы с конвертацией. Не позволяйте никому завлекать вас в ложное чувство уверенности в отношении объема работы, которую влечет за собой преобразование: VB.NET и C # находятся дальше друг от друга, чем вы думаете. Преобразование с одного языка на другой внесет большой объем работы в ваше расписание и, возможно, перезапишет части вашего кода неожиданным образом.

Возьми это у того, кто это сделал.

Если у вас нет действительно веской причины для переноса существующего кода на C #, вероятно, гораздо более выгодно оставить его на этом языке и просто написать новый код на C #. Кроме того, если ваши разработчики не совсем довольны переходом на новый язык, вам, возможно, придется столкнуться с дискомфортом, который могут испытывать некоторые из них. Соглашаемся мы с этим или нет, некоторые сотрудники могут так сильно к этому относиться, что уйдут, что приведет к значительным затратам, когда вам придется их заменить.

Только мои два цента.

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

Проще перейти от намерения программиста к источнику на любом языке, чем перейти с одного на другой.

Вы должны использовать язык, который вы намереваетесь использовать.

1 голос
/ 26 января 2009

Как огромный поклонник VB *, я бы сказал, что это очень плохая идея. Если используется C #, напишите на C #.

На самом деле .NET позволяет легко смешивать несколько языков в одном проекте, если он разделен на несколько сборок. Априори ничего не говорит против этой практики. Однако, как только один язык станет стандартом в проекте, все разработчики должны придерживаться его.

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

1 голос
/ 26 января 2009

Я был бы против такого подхода.

Если намерение перейти на C # в качестве стандарта, зачем ждать, чтобы начать его использовать? Я также считаю, что слишком легко представить, что преобразование никогда не происходит. Когда приходит время сокращения и выбор между преобразованием и добавлением / исправлением функций, то преобразование, вероятно, будет первым.

В том смысле, что это проблема людей. Почему переход на C # в первую очередь? Вы уверены, что все на борту с этим стандартом?

0 голосов
/ 26 января 2009

Нет. НЕТ! Просто ... скажи ... нет.

Мой начальник предложил это в какой-то момент, потому что многие инженеры (заметьте ... инженеры-строители, НЕ программисты) знали VB6 и были довольны VB, но он хотел использовать C # в качестве стандарта.

Я сразу хотел уложить его, чтобы придать ему смысла, однако я сдержался и спокойно обсудил с ним варианты. Я наконец смог убедить его в том, что, хотя .NET - это .NET - VB.NET с кусочками VB6, которые пользователи обязательно будут использовать для «простоты кодирования», НЕ то же самое, что C # .NET.

Есть достаточно различий, что - по крайней мере для нас - кривая изучения C # стоила времени вместо кривой кодирования перехода с одного языка .NET на другой.

0 голосов
/ 26 января 2009

Я предпочитаю C #, но если большинство разработчиков - ребята из VB.NET, почему вы переходите на C #? Это будет кривой обучения без повышения производительности. Также я предполагаю, что большинство из них - люди из VB.NET, если не очень хорошо, то у вас в руках огромный пиар-кошмар.

Подход, который мы используем, заключается в том, что ребята из VB.NET разрабатывают в VB.NET, а ребята из C # - в C #. Нам повезло, что у нас есть четко определенные модули, которые могут взаимодействовать на уровне IL без каких-либо проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...