Single responsibility principle. Практическое применение

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

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

Пример. Допустим, есть класс-клиент к внешнему API и у него есть парочка приватных методов, которые строят URL в соответствии с текущем состоянием сбора данных. Перед нами становится задача протестировать алгоритм построения URL, но методы в классе клиента приватные, а приватные методы тестировать нельзя. Публичными им быть не положено. Значит нам нужно вывести логику построения URL в отдельный класс и теперь мы можем протестировать его публичный метод. Красиво и понятно!

Список средних заработных плат в США в 2014 году

  • Уборщик — 2058 USD
  • Уход за домашними животными — 2256 USD
  • Садовник / Фермер / Рыбак — 2319 ​​USD
  • Няня — 2434 USD
  • Парикмахер / Сотрудник салона красоты — 3033 USD
  • Администратор / Секретарь — 3104 USD
  • Колл-Центр — 3446 USD
  • Обслуживание клиентов в сфере моды — 3532 USD
  • Сфера питания / Турагент — 3565 USD
  • Курьер / Водитель — 3568 USD
  • Тренер в фитнес клубе — 3665 USD
  • Полицейский / Пожарный — 3867 USD
  • Риелтор —  4172 USD
  • Слесарь / ремонтник —  4195 USD
  • Фотограф — 4294 USD
  • Продавец-консультант электроники — 4344 USD
  • Импортер и экспортер (брокер) — 4416 USD
  • Консультант — 4454 USD
  • Издатель — 4509 USD
  • Преподаватель / Учитель — 4693 USD
  • Рекламный агент / Графический дизайнер / — 4696 USD
  • Аудитор — 4858 USD
  • Работник по связям с общественностью — 4923 USD
  • Банковский сотрудник — 4983 USD
  • Архитектор — 5157 USD
  • Рабочий фабрики / Завода — 5249 USD
  • Государственный служащий — 5321 USD
  • Строитель / Монтажник — 5373 USD
  • Эксперт по качеству — 5432 USD
  • Маркетолог — 5475 USD
  • Менеджер по оптовым и розничным продажам — 5518 USD
  • Бухгалтер / Финансист — 5720 USD
  • Эколог — 5789 USD
  • Страховой агент — 5857 USD
  • Юрист — 6374 USD
  • Медик — 6431 USD
  • Ученый — 6583 USD
  • IT-работник — 6767 USD
  • Инженер — 7127 USD
  • Сотрудник Авиакомпании / Авиация / Космонавт / Сотрудник Гос. обороны — 7242 USD
  • Сфера Телекоммуникаций — 7767 USD
  • Фармацевтическая и биотехнологическая сфера — 8063 USD
  • Сфера добычи нефти, газа, энергетики — 8836 USD
  • Исполнительный  директор — 9976 USD

О ценности справедливости в группе

tmp_5331-hqdefault-455232872

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

Из книги «Теория игр. Искусство стратегического мышления» (А. Диксит, Б. Дж. Нейлбафф)

Чёрные Лебеди Нассима Талеба

Нассим Николас Талеб
Черный лебедь
Под знаком непредсказуемости

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

8738.P1050078

А вот понравившаяся цитата оттуда:

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

На самом деле книга достойна быть растасканной на цитаты чуть ли не с каждой страницы.

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

Теперь же мне говорят, что Запад — мой враг, что российской экономике не нужны иностранные инвестиции, что Крым — наш, что новости недели расскажет Дмитрий Киселёв, а Центробанк в очередной раз повышает ключевую ставку. По факту это означает, что российская экономика будет стагнировать, что моя зарплата будет расти медленнее, а купить качественные европейские товары мне будет сложнее. Другими словами, я должен пожертвовать личным благосостоянием только потому, что Владимиру Путину захотелось поиграть в геополитику, эксплуатируя постсоветский синдром.

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

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

Источник на d3.ru

Факты про Bitcoin. Что должен знать обыватель

bitcoin_logo_3d_perspective

  • Bitcoin — это цифровая валюта. Криптовалюта, если быть точным.
  • В силу цифровой природы таких денег вы можете сделать их резервную копию и, при правильном подходе с вашей стороны, их нельзя будет:
    • Потерять
    • Украсть
    • Заморозить или конфисковать
  • Возможность производить мгновенные транзакции между двумя людьми в любой точке планеты. Незначительное преимущество в современном мире, но тем не менее.
  • Никаких банков, правительства или других контролирующих органов. В этом есть свои минусы, разумеется, но теоретически больше плюсов.
  • Нельзя подделать, подвергнуть инфляции, напечатать или девальвировать. Таким образом, исключаются главные недостатки современной крупнейшей валюты — USD.
  • Функции распределенных пиринговых сетей используются для проведения и хранения транзакций. Ни один из узлов не может хозяйничать в такой сети — только сообща.
  • Bitcoin работает на бесплатном программном обеспечении с открытым исходным кодом на любом компьютере или смартфоне.
  • Никаких начальных затрат или комиссий за транзакции или пользование.
  • Платежи могут быть полностью анонимными.
  • Произведенную транзакцию нельзя отменить.
  • Bitcoin повышает сохранность личных данных.
  • На свободных рынках Bitcoin может обмениваться на любую другую валюту.