Я программист .NET. Какие конкретные применения Python и / или Ruby для этого сделают меня более продуктивным? - PullRequest
4 голосов
/ 30 августа 2009

Я вспоминаю, когда впервые читал Pragmatic Programmer, что они предложили использовать языки сценариев, чтобы сделать вас более продуктивным программистом.

Я в затруднительном положении, применяя это на практике.

Я хочу знать, каким образом использование Python или Ruby может сделать меня более продуктивным .NET-разработчиком.

Один конкретный способ для ответа, и еще лучше, если вы скажете, могу ли я использовать для него Python или Ruby или Оба .

См. Стандартный формат ниже.

Ответы [ 8 ]

5 голосов
/ 30 августа 2009

IronPython / IronRuby

IronPython в действии лучше объяснит это (и как именно лучше использовать IronPython), что может быть учтено в SO-ответе. Я предвзято - я был техническим рецензентом и другом одного из авторов - но объективно считаю, что это отличная книга. (Пока не знаю, будет ли IronRuby одарен такой же замечательной книгой).

Поскольку вы хотите "один конкретный способ на ответ" (несовместимый с SO, который STRONGLY не рекомендует плакату, публикующему 25 различных ответов, если у них есть 25 "конкретных способов", чтобы указать ...! -): создание прототипа для изучения какой-то конкретной сборки или коллекции, с которой вы не знакомы (чтобы проверить, правильно ли вы поняли их документы и как выполнять определенные задачи), является на порядок более продуктивным в IronPython. чем в C #, поскольку вы можете исследовать в интерактивном режиме и компиляция происходит мгновенно и по мере необходимости. (Не пробовал IronRuby, но я предполагаю, что он может работать примерно эквивалентно и по скорости).

4 голосов
/ 30 августа 2009

Меньше кода

Я думаю, что продуктивность - это прямой результат того, насколько хорошо вы владеете конкретным языком. Тем не менее, краткость такого языка, как Python, может сэкономить время на выполнение определенных задач.

Если я сравню, сколько кода мне нужно написать для простых административных сценариев (например, очистка старых файлов), по сравнению с .NET-кодом, то получится определенный прирост производительности. (Плюс это веселее, что также помогает выполнять работу)

2 голосов
/ 30 августа 2009

Встраивание скриптового движка

Использование IronPython для скриптового движка внутри вашего .NET-приложения. Например, позволяя конечным пользователям вашего приложения изменять настраиваемые детали с помощью полного языка, такого как Python.

Возможным примером может быть предоставление пользовательской логики конечным пользователям для механизма рабочего процесса.

2 голосов
/ 30 августа 2009

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

Добавьте функциональность к вашим объектам на лету.

Mix в модулях.

Передайте кусок кода вокруг.

Узнайте, как сделать больше с меньшим кодом : ruby -e "puts 'hello world'"

C # может делать некоторые из этих вещей, но свежий взгляд может сделать вас на шаг ближе к автоматизации вашего завтрака.

2 голосов
/ 30 августа 2009

Расширенная обработка текста

Традиционные сильные стороны awk и perl. Вы можете просто собрать кучу регулярных выражений, чтобы создать простую систему интеллектуального анализа данных на ходу.

1 голос
/ 30 августа 2009

Обработка полученной электронной почты

Python имеет встроенную поддержку POP3 и IMAP, чего нет в стандартной среде .NET. Полезно для автоматизации задач, запускаемых по электронной почте.

1 голос
/ 30 августа 2009

Кроссплатформенный

По сравнению с .NET простой скрипт Python легче переносить на другие платформы, такие как Linux. Хотя можно добиться того же с помощью Mono, проще запустить файл скрипта Python на разных платформах.

1 голос
/ 30 августа 2009

Быстрое прототипирование - оба

В простейших случаях запуск интерпретатора Python и написание одной или двух строк намного быстрее, чем создание нового проекта в Visual Studio.

И вы можете использовать рубин для. Или Луа, или Эвел Перл, что угодно. Дело в неявной печати и легком весе.

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