@cosplayuploadtest2 · Post #102048 · 23.03.2025 г., 02:57
Title: Tifa_[Kltt3y] Authors: #None Tags: #None#Kltt3y#Tifa#Kltt3y recommendation: None TelegraphLinks:page-0-9
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #tifa
@cosplayuploadtest2 · Post #102048 · 23.03.2025 г., 02:57
Title: Tifa_[Kltt3y] Authors: #None Tags: #None#Kltt3y#Tifa#Kltt3y recommendation: None TelegraphLinks:page-0-9
@SukoFaultyArtLair · Post #4811 · 07.01.2020 г., 13:38
https://www.furaffinity.net/view/34509593/ #female#finalfantasy#Tifa#pinup
Hashtags
@magicgakuen · Post #8376 · 29.12.2025 г., 08:38
#最终幻想#蒂法#Tifa#Ai漫画二次元
@magicgakuen · Post #8409 · 30.12.2025 г., 04:28
#最终幻想#蒂法#Tifa#AI动漫漫画
@magicgakuen · Post #2882 · 18.07.2025 г., 04:07
#最终幻想#蒂法#Tifa#二次元插画
@hmangafor3duploadtest · Post #21025 · 15.01.2025 г., 15:52
#S_SUMMER_BREAK_1-3 #s_Turn" #s_Very_Merry_Christmas#s_Very_Merry_Christmas" #s_Villa" #s" #Sabotage_1#Sabotage_1-4 #Sabotage_2#Sabotage_3#Sabotage_4#Sail#Saisyuusyoku#sakai08#Santa_Swap#Satisfying_Needs_1-6 #saw2008#SD大學陪讀生林婉晴_1-3 #Secret_of_Beauty_03#Secret_of_Beauty_1_-_Stone_Lady #Secret_Of_Beauty_2_-_Orc_rituals #SedesDis#Seduction_the_Beast#Serge3d#Serge3dx#Serge3DX#ses21#Shassai#Sherry#Shin_Sangoku_Musou#Shiun#Shiun红忍的修行01-07 #Shota_Kyoudai_no_Itazura#ShowTime#silvercastle#Singer#Sister#Skin_Exprience#Skinsuit_Possession#Sky_Cat#Skyla_-_Wrong_Turn #SLASH#Slave_Plan_01-不知火舞は惨めではない #Slave_Plan_02-女性ファイター春麗をキャプチャ #Sleeping_Beauty_5#Sleeping_Beauty_6#Slumber_party#smallflyingrat#smallflyingrat(小飛鼠) #Smarttigerd#Sneaky_Bastard#Son_of_beach#Sorceress_Lori_-_Beyond_Death_+_Sold_To_Demons #Sound_Garden_1-6 #Space_Pirate#speaKCiao#Spellbound#Spider-Man #SR_3DART#Stacy_001#Stacy_002#Stan#stan13#Steri-Nurse_-_Come_Join_Us #Steri-Nurse_-_The_Lesson #Stopwatch_时间停止器#Strangers_in_a_StrangeLand_1-3 #Succubus_Trap#Sunny_Wheel#Supafly#SupaFly#sycosistg#System_Failure#t_Get_Caught_Again_+_Knight_Elayne_-_Game_of_Mischief" #TachibanaKizen#taka4106#Tanya_&_The_Succubus_1-3 #Telsis#Tento#TERESA_-_CAN_NOT_GO_BACK #The_Amazing_Elinor#The_Audition1-2\xa0\xa0 #The_Bang_1-2 #The_Boy_and_his_Dog#The_Call#The_Cloud_Temple_&_Redux #The_Crafty_Maid#The_Evolution_of_Hermine_Granger#The_exchange_student#The_Fall_Of_The_Swan_vol.1\xa0\xa0 #The_Fall_Of_The_Swan_vol.2_-_The_nightmare_of_a_ballet_dancer #The_Final#The_First_Prize#The_Game_+_Luna #The_Gift#The_Grandma_01-03 #The_healer#The_Holiday#The_Meeting#The_Obsession#The_Park_1#the_pw#The_Sacrifice_Ch.1-16_Completed\xa0\xa0 #The_Scandalous_Proposal#The_Sex_Toy#The_Special_Offer#The_Tan_1-8 #The_Trip_to_Egypt_1-3 #The_Trophy_Wife#The_Ultimate_Beast_Hunt#The_Ultimate_Goblin_Gangbang#The_Ultimate_Goblin_Gangbang_2#The_Ultimate_Slave_Training#The_Violinist#The_visit#TheMaskedMoron#Thief_Ezri_-_Don #Tia_001#Tia_002#Tifa#Tifa_Rape_by_Zombies#Tifa_vs_Fly#Tifa_vs_Roach#tifalover#Tim#TiMOP#tin_a_fool_TikTok_MYLF" #Tira#TKXS#Together_In_The_Army_Now_1#Together_In_The_Army_Now_2#Tomb_Raider_-_The_Death_Mask_of #TOP1女销售经理的堕落01#TOP1女销售经理的堕落02#TOP1女销售经理的堕落03#Tough_luck#Trade_Winds#Training_Tsunade#Trap_Video#Trapped_With_The_Orc#Trick_or_Treat_1_&_2_-_Jack_O #Trick_or_Treat_3_Part1_&_Part2 #Trick_or_Treat_4_-_Part_3 #Trick_or_Treat_4_-_Part_4 #Trick_or_Treat_4_-_Part_5 #Trick_or_Treat_4_Part1#Trick_or_Treat_4_Part2#Trick_or_Treat_5#Trick_or_Treat+Timmy_strikes_back\xa0\xa01-5 #TrophyMom_1-4 #trust2018#Tslove#uglive_4k#Uiafox#UIAFOX#Ultra_Lady_tai_Hae_Seijin#Ultraman#Ultrarin#uncensored#Underworld#uuG#V-Kris #V1z3t4#valentine_1-3 #Valentine_Episode_1#Valentine_Episode_1-2 #Valentine_Episode_2#Vampire_Hunters#Vchan
Hashtags