Являются ли инструменты регулярных выражений (например, RegexBuddy) хорошей идеей? - PullRequest
11 голосов
/ 23 октября 2008

Один из моих разработчиков начал использовать RegexBuddy для помощи в интерпретации устаревшего кода, который я полностью понимаю и поддерживаю. Меня беспокоит использование инструмента регулярных выражений для написания нового кода. Я на самом деле не рекомендовал использовать его для нового кода в моей команде. На ум приходят две цитаты:

Некоторые люди, сталкиваясь с проблема, подумай "Я знаю, я буду использовать регулярные выражения. "Теперь у них есть две проблемы. - Джейми Завински

И

Отладка в два раза сложнее, чем писать код в первую очередь. Поэтому, если вы напишите код как умно, насколько это возможно, вы, по определение, недостаточно умное для отладки ит. - Брайан Керниган

Мои опасения (соответственно :)

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

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

Должен ли я поощрять или не поощрять использование инструментов регулярных выражений, особенно в отношении создания нового кода? Оправданы ли мои опасения? Или я параноик?

Ответы [ 11 ]

0 голосов
/ 23 октября 2008

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

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

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