Я пишу часть программного обеспечения, которое требует создания многих почти идентичных блоков кода, которые только варьируются по нескольким местоположениям, которые должны быть заменены уникальным значением для каждого определенного экземпляра.
У меня есть шаблон для блока кода, выписанного, а также список значений, которые должны быть каналом в шаблон. Как я могу автоматизировать это с фактическим написанием большего количества кода, чтобы сделать это? Какие-либо текстовые редакторы имеют этот вид функциональности? Я думаю, что функция слияния MS Word работала бы, но я буду скорее держать свой исходный код отдельно от Word. Это просто чувствует себя неправильным. Я просто загрузил Блокнот ++, но ничто действительно не выскакивает во мне. Также это - проект C# в Visual Studio поэтому, если бы я могу сделать это в Visual Studio, которая была бы еще лучше.
В ответ на предложения относительно дублирования функциональности я действительно нет. Блок кода, который я копирую, ниже. Это - неуниверсальный класс, который происходит из a. Я должен создать большое количество этих неуниверсальных версий класса, которые связаны с определенными типами. Я имею
[ComponentDescription("Document XXXXXX", "Returns the XXXXXX objects from the document")]
[DataContract]
public class DocumentXXXXXXCollection : DocumentElements<XXXXXX>
{
}
почти идентичные блоки кода, которые только варьируются по нескольким местоположениям
Я думал бы о Подпрограммах, Функциях или Подклассах с унаследованными методами.
У меня есть шаблон для блока кода, выписанного, а также список значений, которые должны быть каналом в шаблон.
IDE, такие как Eclipse имеют поддержку шаблонов, но они ожидают, что Вы предоставите отсутствующие значения
Как я могу автоматизировать это с фактическим написанием большего количества кода, чтобы сделать это?
Проблема, если Вы - программист, написание кода для замены значениями в шаблоны часто является относительно легким решением. Я нахожу, что Perl очень подходит для многих видов текстового управления.
Например: http://template-toolkit.org/
Вы уверены способ, которым Вы пишете, что Ваша программа является действительно лучшим способом? Этот вид дублирования кода редко требуется и почти всегда неэффективный и трата ресурсов. Разве Вы не можете придумать способ снова использовать тот же блок кода, передающий его дополнительные параметры или что-то, вместо того, чтобы писать тот же код много раз?