Что такое шаблон и почему мы его используем? Необходимость руководства по стилю кодирования

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

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

Например, юрист может дать вам контракт на пять страниц для подписания, но большая часть контракта является шаблоном, то есть он одинаков для всех, кто получает этот контракт, с изменением лишь нескольких строк здесь и там.

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

Например, в веб-разработке простой шаблон HTML будет выглядеть так:

Hello world! This is HTML5 Boilerplate.

Вы можете просмотреть весь репозиторий здесь:

h5bp / html5-шаблон

html5-template - профессиональный интерфейсный шаблон для создания быстрых, надежных и адаптируемых веб-приложений или сайтов. github.com

В 1890-х годах шаблон был фактически отлит или штампован из металла, готовый для печатного станка, и распространен среди газетных станков и фирм по всей территории Соединенных Штатов. До 1950-х годов тысячи газет получали и использовали такой шаблон от крупнейшего поставщика страны, Western Newspaper Union. Некоторые компании также рассылали пресс-релизы в качестве шаблонов, чтобы их нужно было распечатать в том виде, в каком они были написаны.

Большинство профессиональных веб-разработчиков создали набор ресурсов и фрагментов кода, которые они повторно используют в проектах для ускорения разработки. Есть несколько универсальных или почти универсальных шаблонов, общих для всех веб-сайтов. Вместо того, чтобы постоянно перестраивать их, большинство разработчиков начинают с копирования кода, который они использовали для аналогичного проекта, а затем начинают его изменять.

Некоторые разработчики осознают ценность этих шаблонных начальных шаблонов и находят время, чтобы сделать их более универсальными и опубликовать их в Интернете для использования другими.

Это не ограничивается только веб-разработкой. Он используется не только в AI / ML, поскольку растет число фреймворков и библиотек.

Необходимые характеристики шаблона для крупных проектов (готово к производству)

  • Хорошая и читаемая документация?
  • Структура кода с более глубоким уровнем абстракции
  • Соответствует надлежащему стандарту кодирования
  • Имеет инструмент CLI (для быстрого прототипирования и настройки)
  • Масштабируемость?
  • Простые инструменты тестирования
  • Необходимые модули API
  • Поддержка интернационализации и локализации?
  • Разделение кода
  • Код сервера и клиента для настройки
  • Правильная структура навигации и маршрутизации?

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

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

Прекрасным примером для этого может служить шаблон response.js:

реагировать-шаблон / реагировать-шаблон

react-cabinplate -: fire: хорошо масштабируемая основа, ориентированная на автономное использование, с лучшим опытом разработчика и фокусом… github.com

Шаблон для небольших проектов (строительные леса)

Этот тип шаблонов обычно является своего рода «стартовыми наборами» или в профессиональном смысле называется «строительные леса». Их основные целевые пользователи - новички-разработчики или новички.

Он ориентирован на быстрое прототипирование, создавая элементы, необходимые только для новых проектов. Они требуют меньшей функциональности и не масштабируются с течением времени и проекта.

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

Самый простой пример - это шаблон Facebook create-response-app:

facebookincubator / создать-реагировать-приложение

create-response-app - создание приложений React без конфигурации сборки. github.com

В чем разница между шаблоном и шаблоном?

Как ясно заявляет Иоахим Пенс, шаблон - это то, что вы копируете, вставляете и просто добавляете в документ. Чаще всего это встречается в контрактах, где язык используется и повторно используется, разъясняя такие вещи, как условия и предостережения.

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

В отличие от шаблонов, шаблоны адаптированы для конкретного использования. Проблема возникла у меня, когда студенты использовали шаблоны Word для своих резюме, и все они выглядели одинаково.

И шаблоны, и шаблоны могут сделать деловое письмо неестественным и искусственным, если их использовать неразумно.

Руководство по стилю для написания кода

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

Руководство по стилю описывает множество правил для написания кода, таких как отступы табуляции и пробелов, именование переменных и функций, написание необходимых комментариев, форматирование, структуры исходного файла, использование надлежащего метода структур данных, предотвращение подъема, определения области видимости, управляющих операторов и намного больше.

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

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

Вот некоторые общие споры, например: Вкладки против Пространства Священная война , выбор идеальной IDE для кода и так далее. Интересно то, что вы можете участвовать в этих дебатах, которые в основном происходят на Reddit . Вы также можете принять участие в некоторых вопросах и ответах по stackoverflow .

Для веб-разработчиков наиболее распространенным руководством по стилю для JS является руководство по стилю JavaScript от Airbnb. Это открытый исходный код, и каждый может внести свой вклад.

airbnb / javascript

javascript - Руководство по стилю JavaScript github.com

Если кто-то сомневается в том, зачем Javascript руководство по стилю, прочтите второй ответ на этот вопрос Харрисона Шоффа, программиста в Airbnb .

Зачем JavaScript нужно руководство по стилю? · Проблема №102 · airbnb / javascript

Одна из моих любимых частей в сообществе JavaScript - это то, что люди предпочитают писать его разными способами… github.com

Вот несколько руководств по стилю для некоторых из наиболее популярных сегодня языков:

Программа форматирования кода DotNet

Java: Google-Java-Format

Стандартный стиль Javascript (отличается от javascript airbnb)

PHP Coding Standards фикс г

Python: Google YAPF

Рубин: Рубокоп

Больше из Boilerplate: Concept for OOP

В объектно-ориентированных программах классы часто снабжены методами для получения и установки переменных экземпляра. Определения этих методов часто можно рассматривать как шаблонные.

Хотя код будет отличаться от одного класса к другому, он достаточно стереотипен по структуре, поэтому его лучше сгенерировать автоматически, чем написать вручную.

Например, в следующем Java-классе, представляющем домашнее животное, почти весь код является стандартным, за исключением деклараций Pet , name и owner :

public class Pet { private String name; private Person owner;
public Pet(String name, Person owner) { this.name = name; this.owner = owner; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public Person getOwner() { return owner; }
public void setOwner(Person owner) { this.owner = owner; }}

В настоящее время определение шаблонного кода становится все более глобальным во многих других языках программирования. Это происходит из ООП и гибридных языков, которые когда-то были процедурными, но теперь стали ООП. Теперь у них одна и та же цель - повторить код, который вы создаете с помощью модели / шаблона / класса / объекта, поэтому они приняли этот термин. Вы создаете шаблон, и единственное, что вы делаете для каждого экземпляра шаблона, - это индивидуальные параметры.

Это то, что мы называем шаблоном. Вы просто повторно используете код, из которого вы создали шаблон, но с другими параметрами.

Boilerplate как API

Поскольку вы просто повторно используете код шаблона с другими параметрами, это означает, что мы могли бы создать многоразовые API, для которых потребуется только изменение входных и выходных данных.

Вывод

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

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

Мы будем благодарны за любые отзывы! Hustle On!