TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

Намерени 2 подобни публикации

Търсене: #pendulum

当前筛选 #pendulum清除筛选

Pendulum — Inertia LP Данный пост — длинный и пропитан нытьем рефлексией. А что случилось? Иногда они возвращаются. Pendulum выпустили свой 4-й альбом — спустя долгие 15 лет. Забавно, но весь свой подростковый возраст, как и часть того периода, что привычно идет за ним, я прожил в ожидании этого самого альбома. Кажется, что в сей отрезок жизни уместилось неприлично многое — отдельная вселенная. Живая, странная и неоднородная. В ней многое менялось, рождалось и умирало, но слегка метафизическое отношение к музыке и крайне гиковый подход к ее восприятию живут в этом пространстве и сейчас. А зародились и стали они таковыми во многом благодаря этим австралийским парням. Так что же, стоило ли больше десяти лет прибывать в довольно абьюзивных отношениях, каждые три года получая тонны троллинга от Роба «я вас всех ненавижу» Свайра? Кажется, да. Сабж Альбом — хороший. Диванные меломаны, конечно же, вопрошают: «где, бля, драм...»? — вторя легендарному мему. Но настоящие гигашлепы-пендуловеды знают, что Pendulum не пишут классический драм-н-бейс со времен первого альбома. А в далеком 2010 году прямо заявили, что (никакого альбома не будет, я Роб, я так хочу) следующий их лонгплей будет злым, гитарным и тяжелым. За 15 лет, видимо, все об этом забыли. А ребята нет — так и сделали, в который раз сломав матрицу драм-н-бейс-нормисам. Inertia звучит очень по-живому и по-рокерски. Роб явно решил вспомнить, что в молодости был металлистом, играя забористую дичь в Xygen. Дошло до того, что пост-продакшеном пластинки занимался Дэн Ланкастер — звукоинженер Blink-182 и Bring Me The Horizon, например. И это слышно: некоторые треки звучат именно как рок-штуки, являясь при этом совсем не ими. Хорошо это или плохо — вопрос вкуса. Непривычно ли? Да. Мешает ли прослушке? Мне — нет. Большинство композиций мрачные и очень личные. Депрессивные. Но последнего не заметить, если не вдаваться в подробности жизни и личности вот этого персонажа. Он явно не просто так долгое время не возвращался к проекту и успел многое пережить за прошедшие 15 лет. Зато теперь вывалил. При этом слушается альбом довольно бодро, местами даже весело. Вам точно понравится, если вы любите рок-музыку потяжелее и эксперименты. Вкрапления драм-н-бейса общей картине хуже не делают. Чекаво Немного поделюсь впечатлениями от любимых треков. Driver — трек-открывашка. Особо пытливые заметят в нем пасхалку на предыдущий альбом — Immersion. Она намекает, что да не утонул он в конце Encoder. И сама работа — оммаж на Salt in the Wounds — один из гимнов тех лет. Звучит аки типичный Pendulum с поправкой на время. Приятно было получить что-то подобное. Cannibal — безбашенный панко-металлический боевик в брейккор-обертке с классическим синтезатором и отличным вокалом от Роба и британцев из WARGASM. Качает. Louder Than Words — не понимаю, как оно здесь оказалось, но это хорошо. Красивая и мелодичная совместка с Hybrid Minds. Вокал идеально вписывается в меланхоличный звуковой поток. Вторая часть — отдельный кайф. Guiding Lights — это как, это что? Пожалуй, фаворит альбома. Внезапный и очень тяжелый рок в соавторстве с AWOLNATION. Эта мелодия еще долго не уйдет из головы. Вы все поймете. Просто включите. Жесть. Silent Spinner — необычная, но очень приятная штука в духе Depeche Mode. Звуковой ландшафт трека — это что-то. Вокал и атмосфера отсылают к любимому In Silico. Понравится даже вашему бате. Cartagena — второй (или первый?) фаворит альбома. Возможно, лучшее, что делали Pendulum. Я серьезно. Мелодия, вокал, текст, подача — здесь все то, что я люблю. Эдакая светлая меланхолия, дающая надежду на что-то хорошее, пока ты находишься в беспробудной тьме. Собственно, трек-то именно об этом. Вот. Альбом понравился, винил заказал. Слушайте. Осталось концерта дождаться в наших краях. #музыка#pendulum

djangoproject

@djangoproject · Post #538 · 28.12.2017 г., 10:33

https://pendulum.eustace.io/docs/ Python datetimes made easy. Supports Python 2.7+, 3.4+ and PyPy. Native #datetime instances are enough for basic cases but when you face more complex use-cases they often show limitations and are not so intuitive to work with. #Pendulum provides a cleaner and more easy to use API while still relying on the standard library. So it's still datetime but better.