@Dogdata · Post #2394 · 14.08.2020 г., 11:08
DogData community🐾 Support us and vote for DogData🙏🐾 Please tag 👇 @FaceBook4Dog#ethbn#bone#dogdata https://twitter.com/gate_io/status/1293863802019119105?s=09 👆👆👆
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #ethbn
@Dogdata · Post #2394 · 14.08.2020 г., 11:08
DogData community🐾 Support us and vote for DogData🙏🐾 Please tag 👇 @FaceBook4Dog#ethbn#bone#dogdata https://twitter.com/gate_io/status/1293863802019119105?s=09 👆👆👆
@Dogdata · Post #2392 · 13.08.2020 г., 19:17
DogData community🐾 Everyone should be interested in getting this. Let's show that we are big, let's show that our community is huge ❗️❗️ Support us and vote for DogData🙏🐾 Please tag 👇 @FaceBook4Dog#ethbn#bone#dogdata https://twitter.com/gate_io/status/1293863802019119105?s=09 👆👆👆
@Dogdata · Post #2434 · 19.08.2020 г., 05:32
This is the first of the articles on DogData👏👏 #ETHBN#dogdata#publish0x 👉https://www.publish0x.com/dogdata/mydogdata-xnlwvqz Please rate this article👍🐾
Hashtags
@Dogdata · Post #2658 · 18.10.2020 г., 10:28
🌹 Another Dog Cared for 😍😘 👉 Another BoneDrop 🦴= 💰👈 👉 Another Street Dog Feeding Good Job 👈👈👏👏👏 From DogData Https://MyDogData.com🐾 https://t.me/DogDataICO👈 👉 Feed a Street Dog Table food Today ‼️‼️‼️‼️ 👉 Post 20 seconds video 🎥 into DogData Global Group 👉 Mention DogData BoneDrop 👉🤩 Get Paid and Trade now Today 👉🤩 1000 ETHBN 🤩👈 #DogData#Dogs#Help#Care#Feeding#ETHBN#Reward
@Dogdata · Post #2490 · 08.09.2020 г., 22:30
🌹 Another Dog Cared for 😍😘 👉 Another BoneDrop 🦴= 💰👈 👉 Another Street Dog Feeding Good Job 👈👈👏👏👏 From DogData Https://MyDogData.com🐾 https://t.me/DogDataICO👈 👉 Feed a Street Dog Table food Today ‼️‼️‼️‼️ 👉 Post 20 seconds video 🎥 into DogData Global Group 👉 Mention DogData BoneDrop 👉🤩 Get Paid and Trade now Today 👉🤩 500 ETHBN 🤩👈 #DogData#Dogs#Help#Care#Feeding#ETHBN#Reward
@Dogdata · Post #2484 · 06.09.2020 г., 12:43
🌹 Another Dog Cared for 😍😘 👉 Another BoneDrop 🦴= 💰👈 👉 Another Street Dog Feeding Good Job 👈👈👏👏👏 From DogData Https://MyDogData.com🐾 https://t.me/DogDataICO👈 👉 Feed a Street Dog Table food Today ‼️‼️‼️‼️ 👉 Post 20 seconds video 🎥 into DogData Global Group 👉 Mention DogData BoneDrop 👉🤩 Get Paid and Trade now Today 👉🤩 500 ETHBN 🤩👈 #DogData#Dogs#Help#Care#Feeding#ETHBN#Reward
@dogdata · Post #3423 · 21.03.2021 г., 03:10
👉 Another DogData BoneDrop 🦴= 💰👈 + 😊🐾 🌹 Another Cared for Dog 😘 👉 Another Street Dog Feeding )😍🏆 Good Job 👈👈👏👏👏 Https://MyDogData.com BoneDrop video Reward 👈 👉 5000 ETHBN ($6 reward ) 👈 https://vm.tiktok.com/ZMeJHgCe3/ https://t.me/joinchat/RQW9brTcQ_czYzk8 #bonedrop#etherbone#dogdata#ethbn#feedstreetdogs#streetdogfeeding#streetdogs#lovedogs
@dogdata · Post #3253 · 11.02.2021 г., 11:16
👉 Another DogData BoneDrop 🦴= 💰👈 + 😊🐾 🌹 Another Cared for Dog 😘 👉 Another Street Dog Feeding )😍🏆 Good Job 👈👈👏👏👏 Https://MyDogData.com BoneDrop video Reward 👈 👉 5000 ETHBN ($6 reward ) 👈 https://vm.tiktok.com/ZMeJHgCe3/ #bonedrop#etherbone#dogdata#ethbn#feedstreetdogs#streetdogfeeding#streetdogs#lovedogs