Стоит ли стандартизировать язык сценариев в группе разработчиков?
На работе мы пишем небольшое или умеренное количество сценариев, чтобы помочь нам в нормальном развитии. У нас есть некоторые люди, которые более удобны в Python, некоторые в Perl, некоторые в PHP и т.д....
Иногда я думаю, что лучше всего позволить людям работать на языке, который им удобнее всего. Это может означать, что иногда люди могут лучше выполнять сценарий (поскольку они знают больше трюков на одном языке). Это также может привести к сокращению времени разработки на сценарий.
В других случаях я думаю, что нам больше всего пригодится стандартизация, чтобы было больше общих библиотек и чтобы мы не попали в ситуацию "я не могу работать над этим скриптом, потому что я не знаю python".
Вы думаете, что мы должны стандартизировать или позволить людям выбирать для каждого сценария, который они пишут?
8 ответов
Я был бы склонен позволить людям выбирать и нанимать людей, которым удобно изучать новые вещи. Хорошему разработчику достаточно легко освоить практически любой язык. А для небольших сценариев, где оригинальный автор не далеко, это еще проще.
Вторая часть вышесказанного, конечно, сложная. Но в итоге вы получите более гибкую, более знающую команду.
Я бы выступил за стандартизацию на нескольких языках. "Ты должен использовать либо Python, либо Perl, либо Ruby. Ни Rexx, ни PHP, ни NewBatch, ни что-либо другое, потому что твои братья должны быть в состоянии читать твои сочинения без излишнего отчаяния или обрезания их шкур".
Поскольку эти языки используются для написания сценариев, я согласен с другими комментаторами в том, что их следует оставить для devteam, и в большинстве случаев допускаются разные языки.
Если язык используется для вашей основной кодовой базы, вам лучше стандартизировать его.
Если некоторые разработчики жалуются на сценарий, написанный не на их языке, предложите им изучить его, особенно если он один из широко распространенных, таких как Ruby, Perl и др.
Как и у всего есть плюсы и минусы.
Как разработчик, мне не нравится, когда меня ограничивают "официальные стандарты компании". Чаще всего эти правила имеют тенденцию ограничивать и душить.
Я думаю, что самое важное - всегда иметь в штате двух человек, которые могут читать и писать на языке сценариев, чтобы один человек мог уйти в отпуск или заболеть, не задерживая работы.
Для основных компонентов вашей системы, вероятно, лучше стандартизировать на одном языке - насколько мне больно это говорить.
Я думаю, что правильное место, чтобы задать этот вопрос, с вашей собственной командой.
Ваша команда должна сформировать консенсус относительно того, хотят ли они общей платформы или хотят ли они свободы выбора правильного инструмента для работы. Единственного лучшего ответа на этот вопрос не существует больше, чем единственного лучшего ответа на вопрос "какой язык сценариев лучший".
Конечно, у каждого подхода есть свои преимущества. Если каждый член команды может свободно выбирать свой собственный язык, он может быть более продуктивным, и ваш бизнес получит выгоду. С другой стороны, если кто-то пишет критический инструмент на языке, который он знает, и с ней что-то случается (болезнь, новая работа и т. Д.), Вы можете застрять с единственной точкой отказа, которую никто не знает, как исправить.
Мое мнение таково, что это как любая другая среда разработки. Вы стандартизируете на одном языке разработки? Зачем? То же самое должно быть верно для вашей среды сценариев. Мало того, что я склоняюсь к стандартизации на конкретном языке, я думаю, что вы должны стандартизировать все те же вещи, которые вы надеетесь сделать в своей среде программирования (соглашения об именах, стиль кодирования и т. Д.). Конечно, есть встречные аргументы, и иногда будут исключения, но, надеюсь, их будет мало и по уважительным причинам.
В каждом проекте все, что зарегистрировано, должно соответствовать правилу минимальной сложности.
Ваша команда однажды уйдет, и кто-то другой должен будет прийти и поддержать это. Пожалуйста, не заставляйте их изучать 5 языков, иначе они будут искать ваши имена в исходном коде, чтобы выследить вас.
Когда мы взялись за подобные хакерские проекты, мы в значительной степени посчитали, что создатели - дураки и смеялись над ними. Они не могли потрудиться изучать один язык сценариев???
Тем не менее, если вы не зарегистрируетесь - кого это волнует?
Нет.
Надеемся, что ваша среда разработки - это живое существо, которое меняется и культивируется. Новые способности (языки сценариев) должны быть в состоянии приспособиться, и старые места, которые не посещались годами, когда-нибудь будут избавлены от инструментов или пересмотрены время от времени, и будет проводиться оценка. Надеемся, что сценарии разработки - это незначительная часть разработки и автоматизации. Скорее всего, команда перейдет к набору стандартов (муравей, питон и т. Д.).