S0ER
Архитектура | Программирование | Профессиональное развитие Соер.Клуб - https://t.me/soer_live По всем вопросам писать на @soerdev
Ko'proq ko'rsatish📈 Telegram kanali S0ER analitikasi
S0ER (@softwareengineervlog) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 10 453 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 11 381-o'rinni va Rossiya mintaqasida 60 858-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 10 453 obunachiga ega bo‘ldi.
28 Avgust, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -12 ga, so‘nggi 24 soatda esa -1 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 48.15% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining N/A% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 0 marta ko‘riladi; birinchi sutkada odatda 0 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 0 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent rbp, архитектура, callme, mov, указатель kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Архитектура | Программирование | Профессиональное развитие
Соер.Клуб - https://t.me/soer_live
По всем вопросам писать на @soerdev”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 29 Avgust, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
что думаете по поводу предстоящего релиза snapdragon x elite, будущего арм vs х86, и кто будет лидировать на рынке не-apple arm процессоров?
Как относитесь к переходу многих технологий - Redis, как недавний пример, на двойное лицензирование, вместо лицензии, которая соответствовала open source?Для меня здесь несколько моментов: 1. Для создания хорошего софта нужны деньги и компании всегда будут искать варианты монетизации своих продуктов. Это нормально. 2. Переупаковка софта с открытым кодом с целью дальнейшей продажи - часто встречаются на рынке и то что Redis хочет ограничить такую возможность - это нормально. 3. Не нормально то, что теперь людям надо дважды думать, что они могут делать с кодом от Redis, а чего нет. Это дополнительная сложность, которая может быть ложкой дёгтя в бочке мёда. Хотя ядро, вроде, осталось под BSD лицензией, но все равно не все прозрачно и понятно. В целом рынок становится все сложнее, компаниям хочется зарабатывать и развиваться, так что как говорится се ля ви.
some_string указан как string, а не Email :
type Email = string;
function auth(login:Email) {}
const some_string:string = "some_string";
auth(some_string); // ok
Тип string структурно идентичен типу Email , поэтому ошибки нет.
Номинативные типы работают по-другому - они совместимы только при явном использовании. К сожалению, встроенной поддержки таких типов в typescript нет, но есть хак, который называют брендированием. Его суть заключается в том, что мы добавляем к типу уникальное свойство:
type Email = string & { _: 'Email' };
Теперь тип Email будет структурно не совместим с типом string. Мы получим ошибку компиляции:
type Email = string & { _: 'Email' };
function auth(login:Email) {}
const some_string:string = "some_string";
auth(some_string); // Argument of type 'string' is not assignable to parameter of type 'Email'.
Чтобы код заработал, нам придется явно указывать, что переменная имеет тип Email:
const some_string = "some_string" as Email;
Или добавить проверку в наш код, которая также будет выводить нужный нам тип:
function isEmail(value:string): value is Email {
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
return emailRegex.test(value);
}
Для удобства создания брендированных типов можно воспользоваться дежнериком:
type Brand<B extends string, T> = T & { readonly _: B }
Пример использования:
type Email = Brand<'Email', string>;