Как стать автором
Обновить
0
0
Сергей Мисник @ka4ep

.NET разработчик

Отправить сообщение

Библиотека EremexControls.NET для Avalonia UI — Обновление март-апрель 2024

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.9K

В предыдущей статье мы рассказали о нашей первой версии библиотеки UI контролов для создания мультиплатформенных приложений под Avalonia UI. С тех пор прошло достаточно времени, в течение которого мы продолжали работать над новой версией Delta Design и расширением линейки контролов для Avalonia UI. Об этом мы поговорим ниже. А также мы пригласим вас на выставку ЭкспоЭлектроника 2024, на которой компания Эремекс будет готова подробно рассказать о новой версии Delta Design и о линейке контролов EremexControls.NET.

Читать далее
Всего голосов 23: ↑23 и ↓0+26
Комментарии2

Как я несколько лет боролся с прокрастинацией и победил: полное практическое руководство

Время на прочтение8 мин
Количество просмотров303K

Постоянно откладываешь дела на потом и не видишь в этом проблемы? Мне это знакомо. Расскажу как не повторить моих ошибок и почему пора это прекращать. Не откладывай эту статью на потом!

Начать читать
Всего голосов 125: ↑100 и ↓25+95
Комментарии174

NFun — expression evaluator для .Net

Время на прочтение6 мин
Количество просмотров4.3K

Представляю вам Nfun - встраиваемый язык и исполнитель выражений, который поддерживает примитивные типы, массивы, структуры и лямбда выражения. 

Вероятнее всего, вы уже встречали задачи, требующие такой инструмент, и в этой статье я хочу показать примеры его применения, его возможности и почему это может быть вам полезно.

Let's make some nFun!
Всего голосов 9: ↑9 и ↓0+9
Комментарии34

Мечтают ли разработчики о декларативных тестах

Время на прочтение21 мин
Количество просмотров2.8K
image
Завершение работы над прошлой публикацией (читать которую для понимания этой совсем не обязательно) принесло мне не мир, но меч мечту о мире. Мире, в котором можно писать более выразительные строго типизированные тесты и вместо

[TestCase(typeof(Impl), "command")]
public void Test(Type impl, string cmd) =>
    ((I)Activator.CreateInstance(impl)).Do(cmd);

использовать

[TestCase<Impl>("command")]
public void Test<TImpl>(string cmd) where TImpl : I, new() =>
    new TImpl().Do(cmd);

И он оказался ближе, чем я мог подумать. А дальше пошло-поехало…
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Запускаем .NET nanoFramework на Raspberry Pi Pico

Время на прочтение10 мин
Количество просмотров8.6K
image

Платформа .NET nanoFramework позволяет разрабатывать приложения на C# для различных микроконтроллеров. В предыдущей публикации работали с ESP32 и STM32. Одна из замечательных особенностей .NET nanoFramework заключается в возможности запускать среду исполнения поверх интерфейса POSIX в Win32 для Unit-тестирования. Это означает быструю возможность переноса среды nanoFramework Runtime на любую операционную систему поддерживаемую POSIX стандартом. Именно таким образом, в качестве эксперимента, .NET nanoFramework был перенесен на микроконтроллер Raspberry Pi Pico, для запуска поверх операционной системы реального времени (RTOS) Apache NuttX. Как это было реализовано прошу под кат.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+21
Комментарии24

Утки, Таиланд и T-SQL… или что может подстерегать программистов при работе с SQL Server?

Время на прочтение33 мин
Количество просмотров49K

Все начиналось довольно обыденно… Зачитывался Рихтером и усиленно штудировал Шилдта. Думал, что буду заниматься разработкой под .NET, но судьба на первом месяце работы распорядилась иначе. Один из сотрудников неожиданно покинул проект и во вновь образовавшуюся дыру докинули свежего людского материала. Именно тогда и началось мое знакомство с SQL Server.

С тех пор прошло чуть меньше 6 лет и вспомнить можно многое…

Про бывшего клиента Джозефа из Англии, который переосмыслил жизнь, за время отпуска в Таиланде, и в моем скайпе стал подписываться Жозефиной. Про веселых соседей по офису, с которыми приходилось сидеть в одной комнате: один страдал от аллергии на свежий воздух, а другой маялся от неразделенной любви к С++ дополняя это аллергией на солнечный свет. Один раз по команде свыше пришлось на время стать Александром отцом двух детей, чтобы изображать из себя обросшего скилами сениора по JS.
Подробнее
Всего голосов 76: ↑73 и ↓3+70
Комментарии48

Безопасность OAuth в эпоху мобильных приложений, или о чем молчит интернет

Время на прочтение9 мин
Количество просмотров11K
image

«В API ВКонтакте для получения ключа доступа используется открытый протокол OAuth 2.0. При этом пользователь не передает логин и пароль приложению, поэтому его аккаунт не может быть скомпрометирован»документация VK API.

«ОАuth — это открытый протокол, предоставляющий простой и безопасный способ авторизации для мобильных, десктопных и веб приложений» — вольный перевод слогана oauth.net.

К сожалению, во многих случаях эти утверждения являются ложными. О том как сделать работу через OAuth более безопасной, как с точки зрения конечного пользователя, так и при реализации собственного OAuth провайдера — читайте под катом. Будут рассмотрены такие аспекты безопасности, которым на текущий момент уделено незаслуженно мало внимания в открытых публикациях.

Материал насыщен специфической терминологией и рассчитан на подготовленного читателя.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии30

OAuth в мобильных приложениях

Время на прочтение18 мин
Количество просмотров32K

Привет! Меня зовут Максим, я занимаюсь мобильной разработкой в KTS.

Ни один сервис не обходится без логина. Часто в мобильных приложениях требуется интегрировать вход через сторонние соцсети — например, зайти через Google или VK. А при обучении мобильной разработке используются открытые API, где для авторизации используется OAuth.

Поэтому разработчикам мобильных приложений приходится работать с OAuth. В сети по этой теме есть разрозненные материалы. 

Этой статьей я попробую закрыть нюансы OAuth в мобильных приложениях: на какие моменты стоит обратить внимание, какие способы реализации выбрать. А также поделюсь опытом настройки OAuth в Android-приложении с использованием библиотеки AppAuth.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии0

gRPC в .NET — рецепты счастья

Время на прочтение12 мин
Количество просмотров24K

Массовый переход от монолитов к микросервисам решает ряд проблем:

раздельный деплой и рефакторинг;

удобное масштабирование частей системы;

прозрачное разграничение ответственности команд;

снижение бласт-радиуса;

снижение когнитивной нагрузки на разработчика.

При этом создает другие проблемы: взаимодействие сервисов существенно сложнее и дороже, чем взаимодействие объектов в памяти. Частично упростить его можно с помощью протокола gRPC.

gRPC дает возможность зафиксировать в репозитории контракты межсервисных вызовов, строгую типизацию, стриминг, кросс-платформенную кодогенерацию и множество других полезных для межсервисного общения вещей.

Из этой статьи вы узнаете, когда стоит применять gRPC, а когда лучше воздержаться, как решаются типичные задачи, включая конфигурирование, отладку, healthcheck, а также то, о чем умалчивает документация. 

По материалам выступления на конференции DotNext.

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии63

ТОП 5 самых недооцененных выпусков подкаста DotNet&More за 2021 год

Время на прочтение2 мин
Количество просмотров2.8K

Поздравляем наших любимых слушателей с Новым Годом! Это был очень интересный год для нас, DotNet разработчиков, полный приятных (например YARP) неожиданностей, новых возможностей и ... Blazor все еще не убил React.

В честь праздника, мы хотим Вам сделать небольшой подарок, ТОП 5 самых недооцененных выпусков за 2021 год.

Встречайте Hidden Gems 2021
Всего голосов 6: ↑4 и ↓2+3
Комментарии0

Самые интересные блоги и сайты по C# / .NET

Время на прочтение3 мин
Количество просмотров15K

0907_cs_sites_ru/image1.png


В этой небольшой подборке собраны разные источники информации, которые могут быть полезны C# / .NET разработчикам: блоги, репозитории с исходным кодом, стандарты и аккаунты разработчиков, рассказывающих о тонкостях как языка, так и платформы в целом.

Читать дальше →
Всего голосов 9: ↑8 и ↓1+8
Комментарии14

Изолируем микросервисы с помощью Feature toggles в ASP.NET Core. Практика

Время на прочтение13 мин
Количество просмотров8.9K

Снова привет, Хабр! 

В первой части статьи мы разбирали, что такое изоляция микросервисов, как в этом помогают переключатели функциональности, и как создать простое ASP.NET приложение в с поддержкой feature toggles, которое будет показывать прогноз погоды. В этой части закончим работу над ним — напишем заглушку, сделаем экспериментальную конечную точку, функциональность которой можно включать или выключать, не останавливая работу приложения, и разберёмся с экстренными ситуациями, которые могут возникнуть при разработке приложения.

Дисклеймер: в статье много тяжёлых иллюстраций, берегите мобильный интернет.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии1

Изолируем микросервисы с помощью Feature toggles в ASP.NET Core. Теория и подготовка

Время на прочтение12 мин
Количество просмотров11K

Привет, Хабр! Если вы работаете с микросервисами, то знаете, что они имеют свойство образовывать некоторую связанность. Хорошо, когда связи между микросервисами однонаправленные, но всё становится сложнее, если возникают циклические зависимости.

Такие зависимости приводят к сложностям развертывания, которые можно преодолеть по-разному — например, используя docker compose. Но на локальном компьютере обычно не возникает необходимости поднятия всей инфраструктуры, потому что разработчика для выполнения задачи обычно интересует какая-нибудь конкретная её часть. В этом случае пригодятся средства изоляции микросервисов.

Меня зовут ​​Сергей Прохоров, я техлид бэкенд-разработки в Ak Bars Digital, и давайте вместе рассмотрим, как реализовать такую изоляцию на примере микросервиса веб-API ASP.NET Core. Метод изоляции основан на использовании feature toggles, или переключателей функциональности, о которых и пойдёт речь в двух частях статьи.

Читать далее
Всего голосов 10: ↑8 и ↓2+7
Комментарии5

Исследуем .NET 6. Часть 1

Время на прочтение10 мин
Количество просмотров22K

В этой серии статей я собираюсь взглянуть на некоторые из новых функций, которые появились в .NET 6. Про .NET 6 уже написано много контента, в том числе множество постов непосредственно от команд .NET и ASP.NET. Я же собираюсь рассмотреть код некоторых из этих новых функций.

Читать далее
Всего голосов 24: ↑24 и ↓0+24
Комментарии14

Исследуем .NET 6. Часть 2. WebApplicationBuilder

Время на прочтение11 мин
Количество просмотров25K

В этой серии статей я собираюсь взглянуть на некоторые из новых функций, которые появились в .NET 6. Про .NET 6 уже написано много контента, в том числе множество постов непосредственно от команд .NET и ASP.NET. Я же собираюсь рассмотреть код некоторых из этих новых функций.

Часть 1. ConfigurationManager

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии6

Контент с .NET Conf 2021 — видео, презентации, демонстрации и многое другое

Время на прочтение2 мин
Количество просмотров2.7K

.NET Conf 2021 была крупнейшей .NET Conf когда-либо с более чем 80 сессиями от докладчиков со всего мира! Мы хотим сказать огромное спасибо всем, кто выступил в прямом эфире, задавал вопросы в ленте Twitter и участвовал в интерактивах. Смотрите повторы сессий и следите за репозиторием нашей конференции на GitHub, где мы собираем все слайды и демонстрации от докладчиков. Подробности под катом.

Читать далее
Рейтинг0
Комментарии0

Обзор прошедших конференций JUG Ru Group и анонс весенних: Heisenbug, DotNext, HolyJS, JPoint, Mobius, C++ Russia, Hydra

Время на прочтение10 мин
Количество просмотров2.6K

Мы провели этой осенью девять конференций, причём у каждой часть программы сразу сделали доступной всем. И теперь хотим:

— поделиться с Хабром видеозаписями общедоступной части (суммарно по всем конференциям это более ста часов видео!)

— анонсировать наш следующий конференционный сезон: уже можно и подавать заявки на доклады, и приобретать билеты

Расписали всё это про каждую конференцию отдельно: выбирайте в оглавлении интересную вам, чтобы увидеть и ссылку на её записи, и дату её следующего проведения.

Читать далее
Всего голосов 8: ↑7 и ↓1+7
Комментарии6

Архитектура архитектуры. Шаг 3: дуй в дилижанс

Время на прочтение9 мин
Количество просмотров4.5K

К предыдущим постам и карте цикла.

Мы сдвинулись еще на шаг с прошлой точки. Раз уж мы тут все – люди опытные, то очевидно, что мы попали в финалисты тендера.. БигБиз любит выход на бис! Поэтому финалистов будут смотреть еще раз и с пристрастием. Мы же с вами говорим о таком махровом энтерпайзе - в белом плаще с кровавым подбоем. А значит и стоимость проекта будет как внешний долг Либерии. При таких раскладах лучше пере-, чем недо-. Так что, в зависимости от клиента и количества Либерий стандартом будет либо крещением боем, либо внешний аудит.  

Dog fight!
Всего голосов 7: ↑4 и ↓3+1
Комментарии3

Compositional Layout: стоит ли игра свеч?

Время на прочтение8 мин
Количество просмотров12K


Всем привет! Меня зовут Алексей Скоробогатов, я ведущий iOS-разработчик в Delivery Club. Сегодня я хотел бы рассказать про вёрстку в нашем приложении на примере использования Compositional Layout. В конце прошлого года волевым решением iOS-команды и апрувом руководства мы перешли на iOS 13+. Этот манёвр позволил нам начать использовать новые нативные инструменты, в том числе и новый декларативный подход к описанию layout-коллекций. Расскажу о переводе нашего экрана поиска и его компонентов на Compositional Layout, а также о проблемах, с которыми я столкнулся.

Для полноценного представления о Compositional Layout предлагаю прочитать вот эту статью и ознакомиться с примерами Apple.
Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии2

Информация

В рейтинге
Не участвует
Откуда
Рига, Латвия, Латвия
Зарегистрирован
Активность

Специализация

Software Developer, Backend Developer
SQL
Database
English
REST
C#
.NET Core
Microsoft SQL Server
Oracle
.NET
OOP