@DansGN · Post #5645 · 23.08.2024 г., 02:08
卡普空公布其2024东京电玩展日程 https://vxtwitter.com/capcom_official/status/1826789441241047074 #CAPCOM#TGS
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #tgs
@DansGN · Post #5645 · 23.08.2024 г., 02:08
卡普空公布其2024东京电玩展日程 https://vxtwitter.com/capcom_official/status/1826789441241047074 #CAPCOM#TGS
@shipping00 · Post #44996 · 08.03.2026 г., 16:03
🚢TGS начинает 3D-сейсморазведочное исследование в дельте Нигера. Норвежская TGS объявила о начале мультиклиентского 3D-сейсмического проектаNigeria Laide в партнёрстве с Nigerian Upstream Petroleum Regulatory Commission (NUPRC) и SeaSeis Geophysical Limited. Исследование охватывает около 11 700 кв. км во внешнем складчатом поясе восточной дельты Нигера — одном из ключевых нефтегазоносных регионов страны. Проект реализуется с использованием технологии GeoStreamer dual-sensor с длинными офсетами, широким расхождением буксировки и тройным источником. Цель - получение широкополосных данных высокого разрешения для глубинной интерпретации (PSTM и Q-PSDM) с применением Elastic Full Waveform Inversion (EFWI) или упругая полная волновая инверсия — это один из самых передовых и сложных методов обработки сейсмических данных в геофизике, который используется для создания высокоточных изображений и количественных моделей физических свойств земных недр, что позволит более точно анализировать сложные геологические структуры глубоководной части региона. Для морского сегмента проект означает сохранение спроса на специализированные сейсмические суда и поддержание активности в глубоководной разведке Западной Африки. В условиях глобального энергоперехода Нигерия остаётся значимым источником углеводородов, а современные 3D-данные повышают привлекательность лицензионных участков. 📌TGS ASA (ранее известная как TGS-NOPEC Geophysical Company) - норвежская компания, основанная в 1981 году, специализируется на сборе и анализе геофизических данных для нефтегазовой отрасли. Акции обращаются на Oslo Børs; компания является публичной и принадлежит институциональным и частным инвесторам. #OffshoreExploration#SeismicSurvey#Nigeria#TGS#EnergyShipping
@botsgram_cu · Post #3328 · 25.12.2020 г., 18:05
@tgtowabot Qué puede hacer este bot? Este bot facilita la transferencia de pegatinas de Telegram a WhatsApp Idioma: Inglés (visto en @BotsGram_cu) #whatsapp, #sticker, #transfer, #webp, #tgs, #wa, #stickers
@zigou23 · Post #123 · 08.02.2021 г., 10:44
动物贴纸索引-暂定 比较杂的动物贴纸#animals#人物 陆地 1. 猫猫 🐱#cat 猫娘 # ?? 2. 狗狗 🐶#dog 3. #老鼠🐀#mouse 4. 兔子 🐰#rabbit#兔 5. #狐狸🦊#fox 6. #老虎🐯#tiger 7. #熊🐻#bear #熊猫#panda #浣熊#raccoon 8. #恐龙🦖#dinosaur 9. #鳄鱼🐊#crocodile 10. #鲨鱼🐬#shark 11. #猪🐷#pig https://t.me/addstickers/xiaofenzhu 有翅膀的 1.鸟 🐦#bird 2. 鸭子 🦆#duck#鸭 3. #企鹅🐧#penguin 4. 鸽子 5. #鹦鹉🦜 6.#蜜蜂#bee🐝 游戏 #game 人物 #人物 视频贴纸 #video 高清晰度贴纸 及 tgs格式动态贴纸 #tgs 暂未分 自定义emoji #emoji 注:标有 archive 的为内容重复或不全、低清的贴纸包,仅做收集保存,不建议使用