Тематические статьи →

Принцип программирования KISS — keep it simple stupid (делайте вещи проще)

Боль­шая часть про­грамм­ных систем необос­но­вано пере­гру­жена прак­ти­че­ски ненуж­ными функ­ци­я­ми, что ухуд­шает удоб­ство их исполь­зо­ва­ние конеч­ными поль­зо­ва­те­ля­ми, а также услож­няет их под­держку и раз­ви­тие раз­ра­бот­чи­ка­ми. Сле­до­ва­ние прин­ципу «KISS» поз­во­ляет раз­ра­ба­ты­вать реше­ния, кото­рые про­сты в исполь­зо­ва­нии и в сопровождении.

KISS — это принцип про­ек­ти­ро­ва­ния и про­грам­ми­ро­ва­ния, при кото­ром про­стота системы декла­ри­ру­ется в каче­стве основ­ной цели или цен­но­сти. Есть два вари­анта рас­шиф­ровки аббре­ви­а­ту­ры: «keep it simple, stupid» и более кор­рект­ный «keep it short and simple».

В про­ек­ти­ро­ва­нии сле­до­ва­ние прин­ципу KISS выра­жа­ется в том, что:

  • не имеет смысла реа­ли­зо­вы­вать допол­ни­тель­ные функ­ции, кото­рые не будут исполь­зо­ваться вовсе или их исполь­зо­ва­ние крайне мало­ве­ро­ят­но, как пра­ви­ло, боль­шин­ству поль­зо­ва­те­лей доста­точно базо­вого функ­ци­о­на­ла, а услож­не­ние только вре­дит удоб­ству при­ло­же­ния;
  • не стоит пере­гру­жать интер­фейс теми опци­я­ми, кото­рые не будут нужны боль­шин­ству поль­зо­ва­те­лей, гораздо проще преду­смот­реть для них отдель­ный «рас­ши­рен­ный» интер­фейс (или вовсе отка­заться от дан­ного функ­ци­о­нала);
  • бес­смыс­ленно делать реа­ли­за­цию слож­ной биз­нес-логи­ки, кото­рая учи­ты­вает абсо­лютно все воз­мож­ные вари­анты пове­де­ния систе­мы, поль­зо­ва­теля и окру­жа­ю­щей сре­ды, — во-пер­вых, это про­сто невоз­мож­но, а во-вто­рых, такая фана­тич­ность застав­ляет соби­рать «звез­долёт», что чаще всего ирра­ци­о­нально с ком­мер­че­ской точки зре­ния.

В про­грам­ми­ро­ва­нии сле­до­ва­ние прин­ципу KISS можно опи­сать так:

  • не имеет смысла бес­пре­дельно уве­ли­чи­вать уро­вень абстрак­ции, надо уметь вовремя оста­но­вить­ся;
  • бес­смыс­ленно закла­ды­вать в про­ект избы­точ­ные функ­ции «про запас», кото­рые может быть когда-нибудь кому-либо пона­до­бятся (тут ско­рее правильнее под­ход согласно прин­ципу YAGNI);
  • не стоит под­клю­чать огром­ную биб­лио­те­ку, если вам от неё нужна лишь пара функ­ций;
  • деком­по­зи­ция чего-то слож­ного на про­стые состав­ля­ю­щие — это архи­тек­турно вер­ный под­ход (тут KISS пере­кли­ка­ется с DRY);
  • абсо­лют­ная мате­ма­ти­че­ская точ­ность или пре­дель­ная дета­ли­за­ция нужны не все­гда — боль­шин­ство систем созда­ются не для запуска кос­ми­че­ских шатт­лов, дан­ные можно и нужно обра­ба­ты­вать с той точ­ностью, кото­рая доста­точна для каче­ственного реше­ния зада­чи, а дета­ли­за­цию выда­вать в нуж­ном поль­зо­ва­телю объ­ё­ме, а не в мак­си­мально воз­мож­ном объёме.

Поделитесь с друзьями:


Информация о публикации:

Материал опубликован в 2014 году. Эта статья о веб-разработке, про фронтенд-разработку и про бэкенд-разработку. При пере­пуб­ли­ка­ции обя­за­тельно ука­за­ние пер­во­ис­точ­ника в виде гипер­тек­сто­вой ссылки на сайт web-creator.ru

Воспользуйтесь нашими
знаниями и опытом

Отправьте нам сообщение при помощи формы. Или напишите на e-mail s@web-creator.ru

Мы максимально оперативно ответим Вам по электронной почте или перезвоним.

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

Либо просто позвоните нам по номеру: +7 495 215-1501

Мы работаем по будним дням с 10 до 19 часов.

Комплексные услуги

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