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

Резултати

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

Търсене: #may2023

当前筛选 #may2023清除筛选
The Open Platform

@topco · Post #62 · 06.06.2023 г., 09:02

DeFi: May headlines - Curve Finance Deploys Decentralized Stablecoin on Ethereum - crvUSD is an over-collateralized stablecoin backed by assets like USDC, Ethereum, liquid staking derivatives like Frax’s sfrxETH, and liquidity provision tokens of stablecoin pools (source) - Cardano DeFi Total Value Locked Hits 400M ADA Milestone - in US Dollar terms, DeFi activities on Cardano had grown consistently since the start of the year when the TVL was just around $50 million (source) - Tenet, LayerZero partner to drive cross-chain liquid staking adoption - Tenet’s network allows users to create projects and tokens which will now be integrated with LayerZero technology. The interoperability opens up users to the broader DeFi ecosystem across a variety of smart contract blockchains (source) - DeFi space braces for possible increase in DAI savings rate from 1% to 3.3% - MakerDAO’s proposal to raise the DSR follows a series of rate hikes imposed by the U.S (source) - Uniswap to Launch on Polkadot via Moonbeam Parachain - the decision follows a near-unanimous governance vote first championed by Blockchain at Berkeley, a student educational group linked to UC Berkeley, and brought back to life by Blockchain at Michigan, another educational organization (source) - DeFi Project Bancor Hit With Lawsuit Over Impermanent Loss Protection Promises - investors claim promises fell short, adding that Bancor’s DAO was centralized and its liquidity pools operated as unregistered securities (source) #DeFi#May2023#trends

The Open Platform

@topco · Post #66 · 12.06.2023 г., 09:02

Metaverse: May headlines - Alibaba Cloud Builds Metaverse Launchpad on Avalanche named Cloudverse, the launchpad is designed to provide an end-to-end platform for companies to customize and maintain their metaverse spaces (source) - Top metaverse property investments suffer massive losses - Report: Popular metaverse properties, such as Otherdeeds, The Sandbox, Decentraland, Somnium and Voxels, have all depreciated in value over the past year (source) - Chinese city releases policy draft for metaverse industry development - the policies include a series of cash benefits to attract metaverse-related companies to set up shop in the city (source) - BuzzAR and Cypher Capital team up for Metaverse project - the partnership will allow the companies to leverage proprietary generative AI technologies on its Metaport (source) #metaverse#trends#May2023

The Open Platform

@topco · Post #64 · 08.06.2023 г., 09:01

Crypto Payment Solutions: May headlines - Ethereum: Payment Giant Visa Deploys First Paymaster Smart Contract on ETH Testnet - on March 1, 2023, ERC-4337 was rolled out to the Ethereum mainnet, adding the ability for smart contracts to transact on behalf of the user (source) - Tether and Strike have partnered to make USDT easily available for transactions via Strike's payment platform, the payment app is in expansion mode and has announced the move of its headquarters out of the United States (source) - Stripe Rolls Out New Fiat-to-Crypto Onramp To Make Digital Asset Purchases More Convenient - Web3 companies can now direct their US-based customers to the link without the need for any access code (source) - Transak Raises $20M - the startup offers on- and off-ramps that could make it easier for new users to interact with Web3 project (source) - Argentina Bans Payment Apps From Offering Bitcoin to Customers - the central bank said Thursday that payment platforms cannot offer crypto trading services to their customers (source) #trends#May2023#paymentsolutions

The Open Platform

@topco · Post #63 · 07.06.2023 г., 09:02

Wallets: May headlines - Ledger Crypto Wallet Under Fire Over Seed Phrase Recovery Service - in a nutshell, it’s an ID-based key recovery service that backs up users’ seed phrases. To use the service, users must provide a passport or national identity card to confirm their identity. While this service requires users to opt-in and pay a $9.99 monthly fee, some are concerned that this could even pose a security risk for those who don't opt in (source). - PayPal Ventures Leads $52M Round for Crypto Firm Magic - the startup offers non-custodial wallet infrastructure for an enterprise client list that includes Macy’s and Mattel (source) - Decentralized Wallet Developer Odsy Network Raises $7.5M at $250M Valuation - the funding round was led by Blockchange Ventures and included participation from Rubik Ventures, Node Capital and FalconX among others (source) - Openfort Raises $3 Million for 'Frictionless' Web3 Gaming Wallet - Openfort is building infrastructure for game developers and aims to reduce the number of times gamers have to engage with the blockchain (source) - Crypto Storage Firm Qredo's Revamped Self-Custody Wallet Goes Live - The New Qredo remains aimed at the institutional crypto market, but now it's low-cost and open to anyone, says COO Josh Goodbody (source) #trends#wallet#May2023