Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.fds-net.ru/showflat.php?Number=8769330&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Wed Apr 13 01:07:20 2016
Кодировка: Windows-1251
Стремления (огни) которые применяются в программировании - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Development (Archive)

Страницы: 0 | 20 | 40 | 60 | показать все
DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      07.07.2009 12:59
 

26. новое делай снаружи, старое интегрируй внутрь

DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      07.07.2009 13:05
 

Quote:

26. новое делай снаружи, старое интегрируй внутрь




26 а) чем большим количеством что-то используется, тем более оно ядернее и интегрируемее должно быть (и наоборот)


Shurik

Рег.: 27.09.2003
Сообщений: 13646
Рейтинг: 787
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      07.07.2009 14:52
 

Quote:

26. новое делай снаружи, старое интегрируй внутрь



интересно, когда новое переходит в старое? :)



not fluffing up the experience with features that will ultimately cause you a headache
unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: Стремления (огни) которые применяются в программировании [re: Shurik]
      07.07.2009 15:04
 

Очевидно когда начинает считаться тем, что "внутри" :smirk:

DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: Shurik]
      07.07.2009 16:40
 

Quote:

интересно, когда новое переходит в старое?




Quote:


чем большим количеством что-то используется, тем более оно ядернее и интегрируемее должно быть (и наоборот)






error302

Рег.: 11.09.2008
Сообщений: 85
Рейтинг: 146
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      09.07.2009 00:20
3

YAGNI - You Ain't Gonna Need It.

DWIM - Do What I Mean.

DST - Do Simple Things и DTSTTCPW - Do The Simplest Thing That Could Possibly Work.

Вообще, рекомендую последний сайт.

DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: error302]
      09.07.2009 02:27
 

Quote:

YAGNI - You Ain't Gonna Need It.

DWIM - Do What I Mean.

DST - Do Simple Things и DTSTTCPW - Do The Simplest Thing That Could Possibly Work.




у меня пока получается, что yagni, dst и dtsttcpw - это фактически все одно и тоже
Quote:


Анти-Огни
1. Предварительное усложнение без четкого ответа "зачем?" корень всех зол (YAGNI, DST - Do Simple Things и DTSTTCPW - Do The Simplest Thing That Could Possibly Work)
 а) premature optimization is the root of all evil
 b) любую проблему можно решить путем введения дополнительного абстрактного слоя (кроме проблемы слишком большого количества абстрактных слоев).





а dwim - это часть согласованности
Quote:


20. Согласованность (говоря A, говори и B)
   a) полнота (код, по возможности, должен уметь обрабатывать все варианты входной информации)
   b) Principle of least astonishment
   c) DWIM





unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      09.07.2009 02:37
 

Кстати, с сегодняшнего дня я с тобой согласен в том, что SRP необязателен :smirk:, более важно четко описывать все responsibilites.

DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: DarkGray]
      09.07.2009 04:46
 

перед огнями появилось вот такое введение

Quote:


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

такая формулировка цели приводит нас к следующим требованиям на код:
требования:
1. Код должен решать поставленную задачу
  a) правильно
  b) быстро
  с) с минимальными затратами ресурсов
  d) целиком
  * порядок именно такой (т.е. лучше правильно, чем быстро; лучше быстро, чем оптимально и т.д.)
3. Код должен легко использоваться
4. Код должен быть готовым к любым условиям использования
  а) Код должен легко повторно использоваться
  b) Код должен вести себя адекватно даже в непредвиденной ситуации
5. Код должен быстро разрабатываться
6. Код должен легко модифицироваться
  a) Код должен читаться (легко пониматься) человеком и компьютером
  b) Код должен быть достаточно формализован (должна оставаться возможность автоматического\автоматизированного рефакторинга)

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

огни
....





Shurik

Рег.: 27.09.2003
Сообщений: 13646
Рейтинг: 787
  Re: Стремления (огни) которые применяются в программировании [re: unkulunkulu]
      09.07.2009 13:11
 

Quote:

более важно четко описывать все responsibilites.



где описывать?



not fluffing up the experience with features that will ultimately cause you a headache
DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8951
  Re: Стремления (огни) которые применяются в программировании [re: Shurik]
      09.07.2009 13:17
 

Quote:

где описывать?




в названии, и списком методов.

ps
25. Название должно точно отражать содержимое (уже по названию должно быть понятно, что содержится внутри)

описывать где-то в другом месте противоречит
6.b) Код должен быть достаточно формализован (должна оставаться возможность автоматического\автоматизированного рефакторинга)

unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: Стремления (огни) которые применяются в программировании [re: Shurik]
      09.07.2009 13:19
 

Quote:

где описывать?


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

Страницы: 0 | 20 | 40 | 60 | показать все

Technical >> Development (Archive)

Дополнительная информация
0 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  DarkGray 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в