2015-12-12 2 views
1

Что такое код котельной, и почему он называется так? Пример для Android:Что такое код котельной? почему его следует избегать?

onCreate(Bundle saveInstance){ 
    setcontentView(R.layout.m); 

    findViewById(R.id.f1); 
    findViewById(R.id.f2); 
    findViewById(R.id.f3); 
    findViewById(R.id.f4); 
} 

Какие еще примеры есть? Почему мы должны избегать кода котельной?

ответ

1

Код котла - это повторяющийся код, который необходимо включить во многие места. Истоки хорошо объяснены wikipedia article on the subject:

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

Есть несколько проблем с шаблонным кодом:

  1. Это ошибки. Ваш пример может быть прямым, но не все экземпляры шаблонов. В случаях, когда код включает в себя немного больше логики, есть больше возможностей для ошибок (= ошибок). Особенно, если эти блоки просто копируются с места на место, но требуют некоторых изменений для работы.
  2. Более того - если вам когда-либо понадобится изменить эту логику, это гораздо сложнее, поскольку вам нужно пройти несколько мест, чтобы сделать это.
  3. Это занимает экран realestate и внимание. Больше кода для чтения означает, что вам нужно больше вещей, чтобы попытаться понять часть кода, который вы читаете. Код котловой плиты просто добавляет еще одно отвлечение.
  4. Он занимает фактическое пространство в финальном (обычно скомпилированном) продукте. Что бы вы предпочли? 1 МБ JAR-файл или 10 МБ один?
Смежные вопросы