Те из вас, кто читал предыдущие части моей истории, сейчас наверняка пристально разглядывают эту картинку и у них в голове появляются вопросы. Если вы присоединились только к 3-й части — все равно запрыгивайте, будет интересно и будут ссылки на прошлые части. Как можно догадаться — мы снова это сделали. Мы запустили свой самодельный стратостат из жвачки и картофельных батареек, и привезли немного интересного из стратосферы. Хотите узнать почему это фото именно такое? Читать полностью »
Рубрика «.net» - 11
OpenSilver. Воскрешаем Silverlight
2021-10-04 в 8:03, admin, рубрики: .net, Blazor, C#, open source, OpenSilver, silverlight, webassembly12 октября Майкрософт прекращает поддержку Silverlight. С одной стороны - ок, все-равно никто им уже не пользуется. А с другой, выясняется, что есть много компаний, которые 10+ лет назад написали свои внутренние продукты на Silverlight и успешно все это время работают. А сейчас нету ни людей знакомых с бизнес логикой этих приложений, ни времени/возможности/знаний все это переписать с нуля.
Мы попытались бросить соломинку таким компания и выпустили OpenSilver - бесплатную Читать полностью »
Разработка кроссплатформенного приложения на Avalonia для Raspberry Pi с использованием Github Action
2021-09-17 в 13:48, admin, рубрики: .net, avaloniaui, C#, CICD, cross-platform, github, github actions, raspberrypi, ssh, Разработка на Raspberry Pi, Яндекс APIВступление
В связи с желанием апгрейдить свое рабочее место, появилась потребность в мониторе, на котором будут отображаться информативные виджеты, например: погода, календарь, показатели датчиков в доме -, и, так как готовые решения меня не устраивают, я решил, что сделаю свой аналог домашнего «дашбоарда».
Примерный план был такой: приобрести Raspberry PI 3 и экран, подключить его к интернету, написать приложение, повесить на стенку и пользоваться с удовольствием.
48 полноценных бесплатных книг для программистов (happy developer’s day)
2021-09-15 в 14:16, admin, рубрики: .net, devops, open source, python, бесплатные книги, подборка книг, Программирование, Читальный залПривет! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию (ну и в целом ресурсом с ними). Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг:
-
.NET
-
Алгоритмы
-
Android
-
iOS
-
Angular
-
C
-
C++
-
C#
-
JS
-
Linux
-
Python
-
В целом, почти любая тема, которая приходит в голову
Мне не хватает общения с программистами
2021-09-12 в 17:53, admin, рубрики: .net, communication, javascript, programming, Программирование, Учебный процесс в ITЯ был обычным школьником. Мой папа - программист. Он написал программу для автоматизации для ресторанов и магазинов.
Long, long time ago… Нет, не так. 4 месяца назад я рассказал вам, как из клея и резиновых сапог создать с нуля свой стратостат с телеметрическим модулем и видеокамерой. Я так же описал наш опыт запуска и поиска этого метеозонда, обозначив несколько возникших проблем. Что ж. Мы анализировали, анализировали и доанализировались до четвертого шара. И сейчас я расскажу вам, что произошло за это время, почему он четвертый, и где пропавшие два. Эта часть будет менее технической, т.к. изменений конструкции почти не было, но те что были — имеют значение. Если вы вне контекста, то эту часть советую читать только после прочтения первой (хотя бы технических разделов). Ссылка на первую часть ниже. Будет много фото, видео и графиков. Поехали?
Как Visual Studio 2022 съела 100 Гб памяти и при чём здесь XML бомбы?
2021-09-07 в 14:35, admin, рубрики: .net, billion laughs, C#, microsoft, Visual Studio, visual studio 2022, XML bomb, Блог компании PVS-Studio, информационная безопасностьВ апреле 2021 года Microsoft анонсировала новую версию своей IDE – Visual Studio 2022, попутно объявив, что она будет 64-битной. Сколько мы этого ждали — больше никаких ограничений по памяти в 4 Гб! Однако, как оказалось, есть нюансы...
Ускоряем цикл foreach до for
2021-09-01 в 8:35, admin, рубрики: .net, C#, csharp, performance, высокая производительностьПривет! Хочу рассказать об интересном опыте, как я писал енумератор для типа Range
, который был бы таким же дешевым, как цикл for
.
Что мы хотим?
У System.Range, как известно, очень красивый синтаксис создания:
var a = 1..2; // эквивалент new Range(1, 2)
Поэтому, как эксперимент, я решил абузить его для цикла foreach
, как замена for
:
foreach (var i in 1..5)
Console.Write(i);
(выводит 12345)
Для foreach Розлин требует метод GetEnumerator
, который возвращал бы что-то, у чего есть bool MoveNext()
и T Current. Этот метод можно добавить как метод расширения:
Читать полностью »
Оптимизация .NET приложений: большой результат маленьких правок
2021-08-11 в 8:15, admin, рубрики: .net, C#, cil, gc, il, optimizations, performance, pvs-studio, Блог компании PVS-StudioСегодня мы посмотрим, как маленькие оптимизации в нужных местах приложения могут неплохо повысить его производительность. Убрали создание лишнего итератора в одном месте, избавились от упаковки в другом, а в итоге получается результат, несоизмеримый с правками.
Почему не все тестовые задания одинаково полезны: разбор одного фееричного провала
2021-08-10 в 7:11, admin, рубрики: .net, C#, typelevel, Карьера в IT-индустрии, никто не читает теги, Программирование, Совершенный код, тестовое заданиеВсем привет, это PsyHaSTe и сегодня я хотел бы рассказать о том, куда меня занесла нелегкая в процессе оптимизации и рефакторинга кода решения тестового задания из статьи товарища novar (кто пропустил — рекомендую ознакомиться). Какие проблемы были у этого решения? Почему все-таки человеку отказали в работе? Что можно с этим сделать? Ответы на эти и многие другие вопросы оказались слишком длинными для комментария и вылились в статью с подробным разбором, примерами и альтернативной реализацией задания.
Если вам интересно кто в здравом уме мог для выполнения поставленной задачи написать код сочетающий монады с goto, а также одновременно сократил объем кода и увеличил его производительность, то добро пожаловать под кат. И, конечно же, самое вкусное, связанное с оптимизациями на базе работы JIT — в конце. Итоговую версию решения тестового можно посмотреть на гитхабе по ссылке.