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

TGINSIGHT SIMILAR POSTS

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

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

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

Търсене: #cusanonews7

当前筛选 #cusanonews7清除筛选
Savino Balzano

@savinobalzano · Post #806 · 09.11.2024 г., 16:27

https://x.com/SavinoBalzano/status/1855283577987985648?t=CLSYlbObfDpWya7pnDNqNg&s=19 Ieri sera ero ospite di Borgonovo, nel suo #Walden su #CusanoNews7, e il burlone ha pensato bene di domandarmi cosa pensassi dell'idea di una difesa comune europea: vi lascio immaginare la risposta... A tal proposito, vi suggerisco caldamente di ascoltare cosa ha detto Borghi in occasione del #goofy13. Trovate il prezioso passaggio qui https://www.youtube.com/live/6_a2mabq8I4?si=B4PNPj_BhqEtmGtw a partire da 4:32:20.

Savino Balzano

@savinobalzano · Post #807 · 11.11.2024 г., 18:58

https://x.com/SavinoBalzano/status/1856048752412311805?t=M-MRby1Yp-ecufrmEVc6Nw&s=19 Sempre ospite di Borgonovo, nel suo #Walden su #CusanoNews7, abbiamo parlato del rapporto della #politica con l'#UE e del rapporto del #governo con la #magistratura. Io individuo un minimo comun denominatore (tra queste due dinamiche, ma non solo): il tentativo è quello di commissariare, depoliticizzare, indirizzare le scelte politiche nel solco obbligato del pilota automatico, del vincolo esterno in senso lato. Alla faccia della #democrazia!

Savino Balzano

@savinobalzano · Post #759 · 28.09.2024 г., 07:46

https://x.com/SavinoBalzano/status/1839934531236717001?t=FHItpdwR7ugTT5KhrdDV-A&s=19 In questo momento all'#Italia servirebbe un'#opposizione credibile: la democrazia funziona se ci sono diverse proposte politiche serie. Oggi non c'è un'alternativa alla maggioranza di #governo: è un dato di fatto, la registrazione della realtà. Il cosiddetto #CampoLargo è un'ipocrita accozzaglia, un'armata Brancaleone senza alcuna speranza: il #PD denuncia i disastri che esso stesso a causato in un decennio di pessimo governo (senza aver mai vinto le elezioni); il #M5S è dilaniato da una faida che vede da un lato un comico che non fa più ridere e, dall'altro, #Conte che non riesce a staccarsi da #Schlein (che se lo sta mangiando: e farsi divorare da una "statista" come lei è davvero il colmo dei colmi). Il resto? Frattaglie, più dannosi che altro. La mia al #TGItalia, #CusanoNews7

Savino Balzano

@savinobalzano · Post #765 · 03.10.2024 г., 18:01

https://x.com/SavinoBalzano/status/1841901091723842042?t=c19Fq7bh1u6N12vEE32ddg&s=19 Le recenti dichiarazioni di #Conte rappresentano un distillato d'ipocrisia. Il #CampoLargo non è mai esistito: un'improponibile armata Brancaleone senza uno straccio di idea, di prospettiva o visione: il nulla da offrire al Paese. #GiuseppeConte sapeva benissimo con chi aveva a che fare: il #PD è un partito che brama il potere, che lo vede come fine e non come mezzo. #Schlein è un bluff e lo sanno tutti: #Renzi continua a rappresentare una parta importantissima del PD e tantissimi in quel partito preferiscono #MatteoRenzi a Conte. La rivoluzione promessa da #EllySchlein è una gigantesca presa in giro: solo un babbeo poteva bersi la storia di una rivoluzione contro se stessi. Conte lo ha sempre saputo, ma ha finto nella speranza di guidare il carrozzone e di spuntarla in qualche consultazione elettorale: ora fa il duro e puro perché - con l'enorme ritardo di chi proprio non ci sa fare - ha capito che l'alleanza con Elly lo porterà alla tomba (politica). Troppo tardi. La mia al #TGItalia, #CusanoNews7

Savino Balzano

@savinobalzano · Post #758 · 26.09.2024 г., 15:22

https://x.com/SavinoBalzano/status/1839324491903856983?t=yXt9pLSue3hw3BPk-HzOjw&s=19 Sapete che c'è? Ho deciso di dare retta a @riccardomagi e voglio sostenere il #ReferendumCittadinanza. In cambio, chiedo a @Piu_Europa di uscire dall'equivoco: siete disponibili a mettere in discussione una volta per tutte le politiche neoliberali imposte dall'#UE? Ve lo domando perché se non mettiamo da parte l'#austerity, il #PareggioDiBilancio, il #PattoDiStabilità e tutta la robaccia che di solito vi manda in brodo di giuggiole, allora sarà semplicemente impossibile l'#integrazione. Senza quest'ultima, l'#accoglienza indiscriminata si trasformerebbe in una nuova tratta degli schiavi che, guarda caso, tutto sommato con le logiche neoliberali non cozzerebbe più di tanto. Basta con questa fregnaccia dei buoni da un lato e dei cattivi dall'altro: facciamola finita che è meglio. La mia a #TGItalia, #CusanoNews7

Savino Balzano

@savinobalzano · Post #810 · 14.11.2024 г., 17:42

https://x.com/SavinoBalzano/status/1857116649767260525?t=k7X5yA0vU4nN72rsdLJSlw&s=19 Fermi tutti: #PieroPelù ha deciso di lasciare X per protestare contro il nuovo pericolo pubblico n. 1, #Musk. Il livello nel dibattito pubblico nel Paese è sempre stato bassino, ma adesso siamo davvero al ridicolo: #ElonMusk viene descritto come un grave pericolo per la nostra #democrazia. Peccato, che ci siano "filantropi" come #Soros che finanziano direttamente politici e partiti italiani (che non votano manco i parenti dei candidati, fortunatamente) e a nessuno è mai fregato nulla: anzi! Oggi, dopo tanto silenzio, dopo anni di complicità nei confronti di chi da fuori picconava l'#Italia, il #Colle si sveglia e parla di #Costituzione. #Napolitano e #Mattarella sono stati complici di chi ha svenduto importantissimi pezzi del Paese, questa è la verità. Un po' di silenzio risulterebbe certamente più dignitoso, altro che grammatica istituzionale. Ogni qualvolta i popoli non si esprimono conformemente a quanto ambito da certi establishment, si urla al golpe. E, per quanto ci riguarda, l'espressione più autorevole di certi giri, risiede proprio al #Quirinale. La mia al #TGItalia, #CusanoNews7

Savino Balzano

@savinobalzano · Post #811 · 16.11.2024 г., 10:41

https://x.com/SavinoBalzano/status/1857735567498236328?t=BGl7yqY33j19OP2RM6YMpA&s=19 A prescindere da cosa si pensi di #Musk, credo sia utile questa sua capacità di far esplodere alcune contraddizioni del nostro tempo. Basti pensare a quello che con due battute ha scatenato nel nostro Paese. Nel 2018 il Commissario Europeo al Bilancio, #GuntherOettinger dichiarò: «i mercati insegneranno agli italiani a votare nel modo giusto». #Mattarella? Muto. Sempre nel 2018, #SergioMattarella impedì a #PaoloSavona di assumere il ruolo di Ministro dell'Economia perché avrebbe potuto destabilizzare i mercati. Sparano sui militari italiani del contingente #Unifil e Mattarella? Quale la protesta del nostro Capo delle Forze Armate? Muto. Il suo predecessore, #GiorgioNapolitano, nel 2011 impose all'#Italia la guerra in #Libia, in palese contrasto con l'interesse nazionale: alla cronaca è ormai stato consegnato ciò che accadde in quella stanza riservata del Teatro dell’Opera di Roma. Ancora #Napolitano, sempre nel 2011, contribuì a disarcionare un governo politicamente legittimato, contribuendo da protagonista a realizzare quanto venne definito «colpo di stato gentile», servendosi peraltro della «dittatura dello spread». Impose un tecnico, un vero e proprio liquidatore, a #PalazzoChigi. Dopo averlo nominato senatore a vita, diede a #MarioMonti l'incarico di realizzare il famoso programma firmato da #Bce e #Ue: un programma, anch'esso, in evidente contrasto con linteresse nazionale e con la #Costituzione. Un programma che, ricordiamolo, portava la firma di #Draghi. Che oggi dal #Quirinale si levino ruggiti di protesta contro chi osa mettere in discussione la sovranità nazionale pare in effetti una bella contraddizione. Non trovate? Ieri, ospite di Borgonovo, nel suo #Walden su #CusanoNews7

Savino Balzano

@savinobalzano · Post #778 · 16.10.2024 г., 16:31

https://x.com/SavinoBalzano/status/1846589648732106863?t=myUDKmUWJOqt11hXfU10Bw&s=19 Le recenti dichiarazioni di #Tavares sono semplicemente indecenti: non escludere #licenziamenti in #Stellantis, mentre si chiedono ulteriori #incentivi pubblici, suona come un #ricatto. Mi auguro che gli sbattano la porta in faccia e non solo: è il momento che l'impresa e la famiglia #Elkann diano spiegazioni circa il futuro di un'azienda che ha succhiato avidamente dalla tetta dello Stato per una vita, per poi restituire poco o nulla alla comunità. Si registra generosità solo quando si tratta di staccare #dividendi, guarda caso. E mettiamo in chiaro una cosa: pure la #CassaIntegrazione, adoperata strutturalmente, è una forma di sussidio al quale si dovrebbe rispondere socialmente, quantomeno con un po' di chiarezza. Tutto questo, ad ogni modo, è gravemente acuito dalle infauste politiche dell'#UE: da una parte ideologicamente si impone una conversione dell'#Automotive, dall'altra l'#austerità impedisce di fatto gli investimenti pubblici necessari a sostenerla. Non solo, la stessa induce l'avvizzimento della domanda interna e non consente a chi volesse acquistare le auto elettriche di farlo: costano un occhio della testa. È la #TempestaPerfetta. La mia a #5Notizie, #RadioCusanoCampus, e al #TGItalia, #CusanoNews7.