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

TGINSIGHT SIMILAR POSTS

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

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

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

Hashtags

Резултати

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

Търсене: #bluegrass

当前筛选 #bluegrass清除筛选

Give The fiddler A Dram, The Chieftains 20年前的伟大作品,堪称完美,从中可以感受美国传统蓝草如何脱胎于凯尔特舞曲。这个现场版长达13分钟!把它完整看完你会觉得你又热爱世界了。有条件的话听的时候请跟着起舞。 #bluegrass#dance#irish https://www.dailymotion.com/video/x2o88ct

Tibicen

@world_music_geek · Post #939 · 23.04.2025 г., 15:05

The Po' Ramblin' Boys — Wanderers Like Me (Folkways Records, 2024) #traditional#country#bluegrass#United_States Wanderers Like Me — новый альбом группы The Po’ Ramblin’ Boys, одного из самых активных коллективов традиционного блюграсса последних лет. Образовавшись десять лет назад на территории винокурни Ole Smoky в Теннесси, группа быстро стала заметной на сцене благодаря частым живым выступлениям и верности классическому стилю. Сегодня The Po’ Ramblin’ Boys дают более 250 концертов в год в США, Канаде и Европе. Новый альбом, приуроченный к десятилетию коллектива, включает преимущественно собственные песни и продолжает линию, благодаря которой группа заняла прочное место в современном блюграссе. 🔗Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #12 · 10.09.2020 г., 15:05

Frank Fairfield — Out On the Open West (Tompkins Square, 2011) #traditional#blues#country#bluegrass#appalachian#United_States Второй альбом Фрэнка Фэрфилда, певца, исполнителя на скрипке, гитаре и банджо. Фрэнк невероятно аутентично исполняет старинную народную музыку американских штатов, чем заслужил признание самых строгих критиков. Про него даже сняли документальный фильм. А еще он озвучивал персонажа Toymaker, появляющегося в четвертом эпизоде Songs of the Dark Lantern мультфильма Over the Garden Wall. Хотя начинал Фрэнк как обычный уличный музыкант. 🔗Spotify | AppleMusic

Tibicen

@world_music_geek · Post #453 · 27.10.2023 г., 08:21

Frank Fairfield — NPR Music Tiny Desk Concert (2015) #blues#country#bluegrass#appalachian#video#United_States Фрэнк Фэрфилд исполняет старинную американскую народную музыку в сопровождении Тома Мариона и Зака Соколоу. Особенно хороша песня I Ain't A Goin' To Weep No More, где лирический герой поет о том, что больше никогда не будет печалиться, потому что его любимая согласилась выйти за него. Фрэнк невероятно аутентично исполняет народную музыку американских штатов, чем заслужил признание самых строгих критиков. Про него даже сняли документальный фильм. А еще он озвучивал персонажа Toymaker, появляющегося в четвертом эпизоде Songs of the Dark Lantern мультфильма Over the Garden Wall. Хотя начинал Фрэнк как обычный уличный музыкант. 🔗YouTube | Telegram

Tibicen

@world_music_geek · Post #892 · 02.02.2025 г., 16:42

Various Artists — Industrial Strength Bluegrass (Folkways Records, 2021) #traditional#bluegrass#banjo#fiddle#mandolin#appalachian#Ohio#United_States Industrial Strength Bluegrass рассказывает о том, как выходцы из Аппалачей, переехавшие на юго-запад Огайо в середине XX века, принести с собой музыку блюграсс и вплели её в ритм индустриального города. Песни альбома отражают жизнь мигрантов, проходящую между заводскими цехами и субботними вечерами с банджо; передают ностальгию по родным горам; показывают, как блюграсс адаптировался в новом окружении, не теряя своей музыкальной сути. Альбом спродюсировал музыкант и радиоведущий Джо Маллинз, а в записи приняли участие многие звезды современного блюграсса, включая Ронду Винсент,Бобби Осборна и самого Маллинза. Расширенное виниловое издание альбома включает архивные записи The Stanley Brothers,Larry Sparks,Red Allen & The Allen Brothers, которые помогают еще глубже погрузиться в музыкальный контекст «индустриального блюнрасса». 🔗AppleMusic | Spotify | YouTube | Deezer | TIDAL | Bandcamp

Tibicen

@world_music_geek · Post #739 · 03.09.2024 г., 09:05

Стили #afro_caribbean#afro_colombian#afro_house#afro_jazz#afro_soul#afro_swing#afrobeat#amapiano#ambient#anatolian#andalusian#aor#appalachian#ashik#assouf#avantfolk#balkan#ballad#bambuco#baroque#baroque_pop#bluegrass#blues#bolero#bollywood#bon#boogie#boom_bap#bossa_nova#breakbeat#broken_beat#bwiti#calypso#candomble#canterbury_scene#canzone_napoletana#caribbean#carnatic#celtic#chaabi#champeta#chanson#chanting#cheb#chicha#chimurenga#christian#city_pop#classicism#coladeira#concrete_music#cool_jazz#country#cumbia#dancehall#dark_folk#deep_house#dhikr#dhrupad#disco#doom#dream_pop#drone#drumnbass#dub#dubke#early_music#electronic#ethio_jazz#europop#field_recording#field_recordings#flamenco#free_jazz#french_pop#funana#funk#fusion#gamelan#garage#ghazal#gnawa#gospel#gqom#grime#griot#guaracha#gypsy_jazz#hard_bop#highlife#hindustani#hip_hop#house#hussars_funk#idm#indie#indofuturism#indorock#industrial#ishumar#italo_disco#jarocho#jazz#jit#joik#jongo#khaliji#khoomei#khyal#klasik#klezmer#kraut#kwaito#kwela#laika#latin#lullaby#malhun#maloya#manouche#maqam#medieval#milonga#minimal#minyo#modal_jazz#mor_lam#mugham#musica_caipira#musica_popular_brasileira#muwashahah#nasheed#neo_rebetiko#new_age#new_wave#noise#nu_disco#operetta#oriental_noise_rock#persian_classical#pop#pop_rock#post_industrial#post_punk#post_punk#postdubstep#postdubstep#progressive#proto_zouk#psychedelic#qawwali#raga#rai#rebetiko#reggae#renaissance#rnb#rock#rocksteady#romance#romanticism#roots_reggae#ryukoka#salsa#salsa_dura#samba#shaabi#shashmaqom#shoegaze#ska#soca#soft_rock#son#son_cubano#son_montuno#soukous#soul#space_rock#spiritual#sufi#surf#surti#swing#synth#synth_pop#synthpop#taarab#takamba#taksim#tango#tarana#techno#throat_singing#thumri#tishoumaren#traditional#tribal#vallenato#voodoo#wahrani#wassoulou#yacht_rock#zeuhl#zolo#zouk

Hashtags

#afro_caribbean#afro_colombian#afro_house#afro_jazz#afro_soul#afro_swing#afrobeat#amapiano#ambient#anatolian#andalusian#aor#appalachian#ashik#assouf#avantfolk#balkan#ballad#bambuco#baroque#baroque_pop#bluegrass#blues#bolero#bollywood#bon#boogie#boom_bap#bossa_nova#breakbeat#broken_beat#bwiti#calypso#candomble#canterbury_scene#canzone_napoletana#caribbean#carnatic#celtic#chaabi#champeta#chanson#chanting#cheb#chicha#chimurenga#christian#city_pop#classicism#coladeira#concrete_music#cool_jazz#country#cumbia#dancehall#dark_folk#deep_house#dhikr#dhrupad#disco#doom#dream_pop#drone#drumnbass#dub#dubke#early_music#electronic#ethio_jazz#europop#field_recording#field_recordings#flamenco#free_jazz#french_pop#funana#funk#fusion#gamelan#garage#ghazal#gnawa#gospel#gqom#grime#griot#guaracha#gypsy_jazz#hard_bop#highlife#hindustani#hip_hop#house#hussars_funk#idm#indie#indofuturism#indorock#industrial#ishumar#italo_disco#jarocho#jazz#jit#joik#jongo#khaliji#khoomei#khyal#klasik#klezmer#kraut#kwaito#kwela#laika#latin#lullaby#malhun#maloya#manouche#maqam#medieval#milonga#minimal#minyo#modal_jazz#mor_lam#mugham#musica_caipira#musica_popular_brasileira#muwashahah#nasheed#neo_rebetiko#new_age#new_wave#noise#nu_disco#operetta#oriental_noise_rock#persian_classical#pop#pop_rock#post_industrial#post_punk#postdubstep#progressive#proto_zouk#psychedelic#qawwali#raga#rai#rebetiko#reggae#renaissance#rnb#rock#rocksteady#romance#romanticism#roots_reggae#ryukoka#salsa#salsa_dura#samba#shaabi#shashmaqom#shoegaze#ska#soca#soft_rock#son#son_cubano#son_montuno#soukous#soul#space_rock#spiritual#sufi#surf#surti#swing#synth#synth_pop#synthpop#taarab#takamba#taksim#tango#tarana#techno#throat_singing#thumri#tishoumaren#traditional#tribal#vallenato#voodoo#wahrani#wassoulou#yacht_rock#zeuhl#zolo#zouk