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

Резултати

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

Търсене: #increment

当前筛选 #increment清除筛选
OnePlus OS Update Tracker

@OnePlusOTA · Post #229 · 21.07.2021 г., 14:02

OnePlus 9 Pro Oxygen OS 11.2.8.8.LE15AA System • Updated Android security patch to 2021.07 • Fixed known issues and improved stability Ambient Display • Newly added Bitmoji AOD, co-designed by Snapchat & Bitmoji, which will liven up the ambient display with your personal Bitmoji avatar. Your avatar will update throughout the day based on your activity and things happening around you ( Path: Settings - Customization - Clock on ambient display - Bitmoji ) OnePlus Store • An intuitive and convenient way to manage your OnePlus account, get easy-to-access support, discover exciting members-only benefits, and shop for OnePlus products. (Please note that it can be uninstalled) MD5 Full: 95a3a54e9d5d69d878d9dd3e9bd41def Size Full: 329.5 MB (345545701) Downloads Google OTA Server: Increment (11.2.7.7.LE15AA) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#Global#Increment

OnePlus OS Update Tracker

@OnePlusOTA · Post #110 · 08.04.2021 г., 14:31

OnePlus 9 Pro Oxygen OS 11.2.3.3.LE15AA System • Improved the power consumption performance to extend the battery life • Fixed known issues and improved system stability Camera • Improved the shooting and recording experience Network • Improved the stability of telecommunication functions • Improved the WLAN transmission performance and stability MD5 Increment: 9fbfaca21742d8b21015d79a8c9af20d Size Increment: 104.07 MB (109128785) Downloads Google OTA Server: Increment (11.2.2.2.LE15AA) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#Global#Increment

OnePlus OS Update Tracker

@OnePlusOTA · Post #282 · 20.08.2021 г., 00:03

OnePlus Nord 2 Oxygen OS 11.3.A.09 IND System • Optimize the notification information of the forum • Improved system stability and fixed known issues Camera • Further optimized the HDR feature experience • Further improved the camera performance Network • Fixed the failed issue of enabling Wi-Fi hotspot Gallery • Optimized the UI effect, bringing a better experience • Improved the loading speed of previewing pictures MD5 Increment (DN2101_11_A.05): 82796f0f4f9b98ab108d0b973af0492d Increment (DN2101_11_A.08): 3d5f688f2874fe3951a25badde69fd10 Size Increment (DN2101_11_A.05): 293.9 MB (308195334) Increment (DN2101_11_A.08): 250.3 MB (262501603) Downloads Google OTA Server: Increment (DN2101_11_A.05) Increment (DN2101_11_A.08) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#denniz#India#Increment

OnePlus OS Update Tracker

@OnePlusOTA · Post #266 · 03.08.2021 г., 02:24

OnePlus Nord 2 Oxygen OS 11.3.A.08 IND System • Improved system stability Camera • Optimized the HDR feature effect • Improved the shooting performance MD5 Increment (DN2101_11_A.05): dc45ae17960153fca78a7b9b82b347a5 Size Increment (DN2101_11_A.05): 248.6 MB (260643199) Downloads Google OTA Server: Increment (DN2101_11_A.05) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#denniz#India#Increment

OnePlus OS Update Tracker

@OnePlusOTA · Post #265 · 03.08.2021 г., 02:22

OnePlus Nord 2 Oxygen OS 11.3.A.07 IND System • Newly adapted OnePlus Buds Pro and brought new powerful features • Newly supported controlling music by SCREEN OFF GESTURES • Optimized the experience of fingerprint unlocking Camera • Newly added Ultra Resolution mode, turn on this feature to make the picture details clearer • Optimized the AI Beautification feature, able to automatically retouch photos based on your skin color and preferences • Improved the loading speed of previewing pictures Network • Improved the performance and stability of network transfers MD5 Increment (DN2101_11_A.05): 63af34e88c9081e078e6cd03fdaa2707 Size Increment (DN2101_11_A.05): 240.8 MB (252447165) Downloads Google OTA Server: Increment (DN2101_11_A.05) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#denniz#India#Increment

OnePlus OS Update Tracker

@OnePlusOTA · Post #538 · 17.04.2022 г., 16:34

OnePlus 9 Pro OxygenOS 12 C.48 IND System [Improved] system stability [Updated] Android security patch to 2022.04 SHA-1 Increment (LE2121_11_C.46): 8091c0b4ad235b9482ef8cffbc8a9cad58ce6bdb Increment (LE2121_11_C.47): e433d4621a831b31354a1763875b559b21b02191 Size Increment (LE2121_11_C.46): 338.39 MB (354823582) Increment (LE2121_11_C.47): 141.02 MB (147872754) Downloads Google OTA Server: Increment (LE2121_11_C.46) Increment (LE2121_11_C.47) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #517 · 23.03.2022 г., 02:22

OnePlus 9 Pro OxygenOS 12 C.47 IND System [Optimized] the stability of communication [Fixed] the issue of the operator's name displayed incorrectly [Fixed] the low probability issue that unable to send MMS [Improved] system stability [Updated] Android security patch to 2022.03 Camera [Optimized] the fluency of taking pictures SHA-1 Increment (LE2121_11_C.44): d7915010f9ec2f3d0abe509e780111b44569c6a5 Increment (LE2121_11_C.46): d91234dd56e44dda6813080a578df0c2409b3b4c Size Increment (LE2121_11_C.44): 363.42 MB (381072622) Increment (LE2121_11_C.46): 310.71 MB (325807990) Downloads Google OTA Server: Increment (LE2121_11_C.44) Increment (LE2121_11_C.46) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #496 · 08.03.2022 г., 15:17

OnePlus 9 Pro OxygenOS 12 C.46 IND System [Improved] system stability [Fixed] the abnormal display of AOD [Fixed] the issue of blurred screen in some scenarios [Fixed] the issue that Alexa APP crashes in some scenarios [Updated] Android security patch to 2022.02 Network [Fixed] the issue that unable to register 5G network in some scenarios SHA-1 Increment (LE2121_11_C.44): 0d55a0b45d8582a48210cc35946ffeb9b5b6c002 Size Increment (LE2121_11_C.44): 215.10 MB (225544673) Downloads Google OTA Server: Increment (LE2121_11_C.44) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #446 · 21.01.2022 г., 11:19

OnePlus 9 Pro OxygenOS 12 C.44 IND System • Improves system performance in some scenarios. • Fixes a display issue with charging animations that would occur in certain scenarios. • Fixes a display issue with the notification drawer that would occur in some gaming scenarios. • Fixes a scrolling lag issue with the notification drawer. Apps • Optimizes vibration feedback for some gaming scenarios. Camera • Fixes an issue where Camera might sometimes crash. • Fixes an issue where Camera might occasionally not respond when you want to take a video. Security • Integrates the January 2022 Android security patch to enhance system security. SHA-1 Increment (LE2121_11_C.39): 672b6de54eec9b230a9be3006d308b7baa768448 Size Increment (LE2121_11_C.39): 353.85 MB (371041751) Downloads Google OTA Server: Increment (LE2121_11_C.39) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #427 · 31.12.2021 г., 03:46

OnePlus 9 Pro OxygenOS 12 C.40 IND System • Fixed the issue of system upgrade failure in specific scenarios Network • Fixed the issue of being unable to access the 5G network in some scenarios SHA-1 Increment (LE2121_11_C.39): e212b550e851b4e23c5f3296be439e99d5d3d7f9 Size Increment (LE2121_11_C.39): 67.01 MB (70260906) Downloads Google OTA Server: Increment (LE2121_11_C.39) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #405 · 19.12.2021 г., 07:27

OnePlus 9 Pro OxygenOS 12 C.39 IND System • Improved the smoothness of fingerprint unlocking • Optimized system power consumption to extend the battery life • Fixed the issue of screen tearing when back to the home screen in some games • Fixed the issue that the notification bar showed a blank bar • Updated Android Security Patch to 2021.12 Camera • Improved the startup speed of the application • Improved the image effect of the rear camera Network • Fixed the issue that failed to connect to the mobile data in certain scenarios SHA-1 Increment (LE2121_11_C.36): 624611d32c5b0842f83bd50bcc5e3cbaac3bf471 Size Increment (LE2121_11_C.36): 730.87 MB (766370856) Downloads Google OTA Server: Increment (LE2121_11_C.36) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonadep#India#Increment#Stable

OnePlus OS Update Tracker

@OnePlusOTA · Post #539 · 17.04.2022 г., 16:35

OnePlus 9 OxygenOS 12 C.48 IND System [Improved] system stability [Updated] Android security patch to 2022.04 SHA-1 Increment (LE2111_11_C.46): 7a8c02fb0d4ba3e9971171f9646a2517383b9e9b Increment (LE2111_11_C.47): 7ef29188e02473dfa0b465252339dad363e83a8d Size Increment (LE2111_11_C.46): 337.60 MB (354002387) Increment (LE2111_11_C.47): 140.29 MB (147100203) Downloads Google OTA Server: Increment (LE2111_11_C.46) Increment (LE2111_11_C.47) Exported by MlgmXyysd Color OTA Bot@OnePlusOTA #Oxygen#lemonade#India#Increment#Stable

123•••910
ПредишнаСтр. 1 от 10Следваща