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

Резултати

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

Търсене: #najottalim

当前筛选 #najottalim清除筛选
Designer Muhammadjon

@designbymuhammadjon · Post #318 · 11.11.2024 г., 14:45

#insight#najotTalim Jamoa bo'lib ishlash — muvaffaqiyat kaliti! O'quvchilar jamoaviy tayyorlagan ishlarini "bento ui" uslubida taqdimot qilib ko'rishdi. Qisqa va lo'nda. Bu yo'nalishdagi dastlabki ishlarini yuqorida ko'rishingiz mumkin. Bu qizib olish uchun edi😎, tez orada vizual aydentika bo'yicha tayyorlashgan ishlarini ham ulashaman. @blogolimjanov

Designer Muhammadjon

@designbymuhammadjon · Post #287 · 14.10.2024 г., 13:47

#figmaTOP#najotTalim ⚡️Dars jarayonlarida bo'ladigan amaliyotlarni bosqichma-bosqich Figmaga ko'chirib o'tyapman. 🕔 Oldin o'quvchilar aynan nimada qiynalishayotganini va ularga qanday tushuntirish kerakligini bilish uchun proyektorga kompyuterlarini ulab birma-bir amaliy ish qildirib ko'rib bilardim. Bu o'z effektini berardi lekin vaqtdan yutqazib qo'yardim) Bu jarayonni ayni paytda figmaga olib o'tdim, o'zi avvalroq shu ishni qilishim kerak edi. 🥋Hammani bir vaqtni o'zida nazorat qilish va xatolarni o'z o'rnida to'g'rilab ketish ham qulaylashdi. Imkoniyatlar borligini bilish va ularni ishlata olish ham bir san'at. @blogolimjanov

MDC Uzbekistan

@mdcuzbekistan · Post #519 · 27.07.2022 г., 06:09

Join to the Najot Ta'lim Digital Academy's team as a .Net Instructor! We are Najot Ta'lim - an IT company with 200+ staff succeed in teaching and rediscovering new IT generation in Uzbekistan. Since 2018 we have grown into 3 branches in Tashkent city with 1800+ students and these are not limit. Now we are hiring for professional Middle .Net - mentor, instructor! Responsibilities: - Teach 5 days a week, 3 hours per day; - Checking homework and exams, assessing and providing work recommendations; - Be able to choose the right layouts of exercises and exams; - The study department assists in the development of curriculum; - Continuous writing of the lesson plan, reports based on it. Requirements: - Experience: 2+ years; - Fluency in Uzbek (knowledge of Russian / English is preferable); - OOP, OOD, refactoring, design patterns, SOLID; - Good knowledge of C#/.NET; - Experience with RESTful API, MS SQL Server, PostgreSQL; - NET Core / 5 / 6; - ASP.NET MVC, SignalR; - Experience with private and public cloud platforms and providers such as - Amazon Web Services (AWS); - Asynchronous programming, LINQ/PLINQ; - ORM; - Unit testing (MS Test or NUnit); - Git/GitHub. Terms and conditions: - Favorable working environment in modern hi-tech offices in Tashkent; - Friendly team; - You can become a colleague with strong experts; - The opportunity to develop yourself; - Timely agreed salary; - The ability to work on a flexible schedule; - Paid courses, trainings and master classes; - Corporate tours in Uzbekistan. Feel free to contact: @najottalim_recruiting Join to the #vacancy#najottalim#dotnet .NET Uzbekistan Community ➖➖➖➖➖➖➖➖➖➖ Telegram | Instagram | Youtube

MDC Uzbekistan

@mdcuzbekistan · Post #524 · 13.08.2022 г., 17:04

Farhod Dadajonovdan foydali maslahat 😉 15 yillik tajribaga ega dasturchi Farhod Dadajonovni tanimagan dasturchi bo'lmasa kerak. Habaringiz bor, Farhod aka fullstack dasturchi va o’z youtube sahifasiga Node.js, Go, .NET, Angular ... bo'yicha video darsliklar qo’yib boradi. Ko'p dasturlash tilida ishlagan inson sifatida, yangi o'rganuvchilarga bir chiroyli maslahat beribdi. 😁 #dotnet#maslahat#najottalim .NET Uzbekistan Community ➖➖➖➖➖➖➖➖➖➖ Telegram | Instagram | Youtube

MDC Uzbekistan

@mdcuzbekistan · Post #516 · 24.07.2022 г., 11:58

Sizlarni .NET bootcamp kursiga taklif etamiz 🔥 Foundation bosqichini o'qimasdan birdaniga mutaxassislik bosqichda ta'lim olmoqchi bo'lgan insonlar uchun ajoyib yangilik. Agar siz dasturlash sohasida boshlang'ich tushunchalarga ega bo'lsangiz, «Najot Ta'lim» markazi bootcamp kurslari uchun 30-iyul kuni bo'ladigan kirish imtihonlarida qatnashishingizni tavsiya qilaman. «Najot Ta'lim» markazida .NET, Java, Go, Full Stack, Flutter, Frontend kabi yo'nalishlardan birini o'z sohasining mutaxassislaridan o'rganing. 👉Kirish imtihonlariga ro'yxatdan o'tish P. S. 7 oylik .NET kursimizni 5 oyda tugatganimizdan xabaringiz bormi? Buning asosiy sabablaridan biri — 100% o'quvchilarimiz 5 oyda o'z ish faoliyatlarini boshlashgani. 🤩 Qolgan sabablari haqida olgan intervyumizni yaqinda ulashamiz.😉 #kurs#najottalim#dotnet .NET Uzbekistan Community ➖➖➖➖➖➖➖➖➖➖ Telegram | Instagram | Youtube