Попробовал, наконец, разработку на Blazor. Это такой фреймворк под .NET, который позволяет писать фронтенд на C#. Работает он двумя способами: либо собирает весь проект в WebAssembly, и бедный пользователь грузит себе мегабайтную dll, либо устанавливает клиент-серверное соединение через SignalR и шлёт клиенту информацию об обновлённых DOM-элементах.
Вот вторую то я и пробовал. Казалось бы — каждое нажатие кнопки требует отправить на сервер запрос и получить ответ. Никогда такого не было! Но субъективно разницы во времени отклика нет (потому что веб и так достаточно медленный, хаха).
Фронтенд-часть пишется очень похоже на JSX: вёрстка реактивно вперемешку с кодом. Когда-то я очень ругал React за такой подход, потому что каша. Но нетипизированный JS по-умолчанию каша, а здесь же по факту получается очень удобно: статический анализ не даёт тебе делать ошибки и писать ерунду.
Но приятный полноценный язык программирования вместо JavaScript это лишь вишенка на торте. Самое крутое — вся сила серверного кода с полноценной возможностью обращения к базе данных, шеринг моделей данных между сервером и клиентом, и, наконец, Dependency Injection любого серверного модуля в «клиент»! То есть вы не просто пишете одно приложение вместо двух, вы ещё и получаете отсутствие ошибок при каком-нибудь изменении моделей API, когда сервер стал отдавать не то, что ожидает клиент. Вам вообще теперь не нужен API, достаточно закодить нужную функцию на серваке и инжектировать её в нужный фронтенд-модуль.
Это супер удобно, супер быстро, супер устойчиво к ошибкам. Теперь не хочется возвращаться даже на вполне крутой Vue 3. Но, система пока новая, она не обросла решениями от комьюнити, а браузерный API всё равно придётся дергать через JavaScript Interop. Для совсем кайфа нужно подождать годик, поскольку развитие идёт довольно быстро. Например, там нет очень нужного в таком деле hot reload, но в .NET 6 он уже анонсирован, и вроде как есть в превью, а релиз в ноябре.
#dev
😄Service
➖➖➖➖➖➖
A service can be an organisation or company that provides something useful or helpful for people.
🔘The park service look after the green spaces.
🔜It can also be the thing that is useful or helpful.
🔘Sorry, we don't offer a delivery service.
🔜We also use service to talk about types of businesses – if a company does something rather than makes something, it is a service. We often use it here as an adjective.
🔘Accountants work in the service economy.
🔜We often talk about service as the length of time that someone works for a company.
🔘He retired after forty years of service to the company.
🔜So, service is all about helping, or being useful to people, companies and organisations. Hopefully this video has been of service to you!
#Service👨🏫@America
➖➖➖➖➖➖➖➖➖➖➖➖
🆕 Crypto News @Money
😁 Crypto Game @Egame
🇺🇸 US News @America
🇯🇵 Japan News @Japan
🇦🇪 UAE News @Dubai
▶️ Popular Movies @Videos
😜 Best Funny Video @Funnys
😄Service
➖➖➖➖➖➖
A service can be an organisation or company that provides something useful or helpful for people.
🔘The park service look after the green spaces.
🔜It can also be the thing that is useful or helpful.
🔘Sorry, we don't offer a delivery service.
🔜We also use service to talk about types of businesses – if a company does something rather than makes something, it is a service. We often use it here as an adjective.
🔘Accountants work in the service economy.
🔜We often talk about service as the length of time that someone works for a company.
🔘He retired after forty years of service to the company.
🔜So, service is all about helping, or being useful to people, companies and organisations. Hopefully this video has been of service to you!
#Service👨🏫@America
➖➖➖➖➖➖➖➖➖➖➖➖
🆕 Crypto News @Money
😁 Crypto Game @Egame
🇺🇸 US News @America
🇯🇵 Japan News @Japan
🇦🇪 UAE News @Dubai
▶️ Popular Movies @Videos
😜 Best Funny Video @Funnys
HeyGem — это AI-сервис для генерации суперреалистичных 3D-персонажей, которых невозможно отличить от живого человека.
Нейронка формирует внешность аватара, мимику, эмоции, голос и прочие человеческие атрибуты — и все это всего за пару минут.
Не верите? Тогда посмотрите это видео
OpenAI Community | #service
DN42 access
本服务为那些无法轻松访问自身网络的用户以及希望体验 dn42 但又不想承担维护自有网络成本的用户提供 dn42 连接
默认情况下,地址从/96地址块中分配,如果您希望租用独立的/96前缀或更大的地址空间,请按照联系方式联系我
所有公开的PoP均已屏蔽来自中国境内的 IP 地址。如果您确实需要dn42 access,请与我联系并提供合理的理由
该服务由AS4242423377提供
- - - - - - -
The service provides DN42 connectivity to members who cannot easily access their own networks, as well as to those who would like to explore DN42 without the overhead of maintaining their own network.
By default, addresses are allocated from a /96 block. If you wish to lease a dedicated /96 prefix or a larger address space, please contact me using the methods provided in the contact information.
All publicly accessible PoP are blocked for IPs originating from within China. DN42 access from within China is not publicly available. If you genuinely require access, please contact me and provide a valid justification.
Hosted by AS4242423377.
Policy
本服务需要花费时间和金钱才能运行,但为了您的利益,我们免费提供。使用本服务是一种特权,而非权利。您必须合理使用本服务,以确保其他用户也能继续享受同样的便利。任何滥用、误用或干扰服务或其他用户的行为都可能导致您的访问权限立即被暂停或终止。
滥用行为包括但不限于:
- 过度使用资源
- 黑客攻击、病毒、木马等,或任何其他可能损害服务或对服务及其用户造成风险的干扰行为
- 传播可能导致民事或刑事责任的不良内容
- - - - - - -
This service require real time and financial resources to operate, yet are provided free of charge for your benefit. Access to the services is a privilege, not a right. You must use the services responsibly and considerately to ensure that other users can continue to enjoy the same opportunities. Any misuse, abuse, or activities that disrupt the service or other users may result in immediate suspension or termination of access.
Abuse could include, but is not limited to:
- Excessive use of resources
- Hacking, viruses, trojans etc or any other disruption that could harm or create risk to the services or its users
- Distribution of objectional content that could create a civil or criminal liability
PoP
## Toronto, Canada
Prefix: fdb6:fc6a:e66c:724f:fad1:d2cf::/96
Zerotier: 4753cf475f65b0fb
## Los Angeles, USA
coming soon
#announcement#service
DN42 access
本服务为那些无法轻松访问自身网络的用户以及希望体验 dn42 但又不想承担维护自有网络成本的用户提供 dn42 连接
默认情况下,地址从/96地址块中分配,如果您希望租用独立的/96前缀或更大的地址空间,请按照联系方式联系我
所有公开的PoP均已屏蔽来自中国境内的 IP 地址。如果您确实需要dn42 access,请与我联系并提供合理的理由
该服务由AS4242423377提供
- - - - - - -
The service provides DN42 connectivity to members who cannot easily access their own networks, as well as to those who would like to explore DN42 without the overhead of maintaining their own network.
By default, addresses are allocated from a /96 block. If you wish to lease a dedicated /96 prefix or a larger address space, please contact me using the methods provided in the contact information.
All publicly accessible PoP are blocked for IPs originating from within China. DN42 access from within China is not publicly available. If you genuinely require access, please contact me and provide a valid justification.
Hosted by AS4242423377.
Policy
本服务需要花费时间和金钱才能运行,但为了您的利益,我们免费提供。使用本服务是一种特权,而非权利。您必须合理使用本服务,以确保其他用户也能继续享受同样的便利。任何滥用、误用或干扰服务或其他用户的行为都可能导致您的访问权限立即被暂停或终止。
滥用行为包括但不限于:
- 过度使用资源
- 黑客攻击、病毒、木马等,或任何其他可能损害服务或对服务及其用户造成风险的干扰行为
- 传播可能导致民事或刑事责任的不良内容
- - - - - - -
This service require real time and financial resources to operate, yet are provided free of charge for your benefit. Access to the services is a privilege, not a right. You must use the services responsibly and considerately to ensure that other users can continue to enjoy the same opportunities. Any misuse, abuse, or activities that disrupt the service or other users may result in immediate suspension or termination of access.
Abuse could include, but is not limited to:
- Excessive use of resources
- Hacking, viruses, trojans etc or any other disruption that could harm or create risk to the services or its users
- Distribution of objectional content that could create a civil or criminal liability
PoP
## Toronto, Canada
Prefix: fdb6:fc6a:e66c:724f:fad1:d2cf::/96
Zerotier: 4753cf475f65b0fb
## Los Angeles, USA
coming soon
#announcement#service
🇩🇪 2.000 écoliers manifestent à Berlin contre la loi sur le service militaire et la militarisation de l’Allemagne, rapporte le correspondant de TASS.
#service#écolier#manifestation
🍹 Вы точно хотели бы такое, но прямо не догадывались об этом. Я говорю о новом расширении для Google Chrome от вьетнамской студии Bliss Interactive. Благодаря этому плагину будут включаться субтитры на YouTube именно в тот момент, когда вы начинаете хрустеть чипсами, из-за чего не слышны звуки из видео.
Как вы догадываетесь, здесь не обошлось без модели машинного обучения, которую обучили на записях аж 178 часов жевания чипсов и прочих снеков. Можете установить расширение (на самом деле технически не важно, хрустите вы Lay's или другими чипсами).
#AI#App#Service#Fun | Not Boring Tech
@DeleteEventsBot
Qué puede hacer este bot?
Este bot elimina mensajes de eventos (también conocidos como mensajes de acción) en supergrupos.
Idioma: Inglés
(visto en @BotsGram_cu)
#delete, #service, #message, #spam, #helper, #group, #supergroup, #join, #left, #pinned