Среди наших клиентов постепенно начинают появляться организации, занимающиеся разработкой программного обеспечения в сфере финансов. У нас много статей, посвященных разным тематикам, но сферу финансов мы как-то незаслуженно обошли стороной. Попробуем исправиться и со временем написать ряд статей, а начну я с маленького рассказа.
Рубрика «C#» - 74
Для повышения надежности и безопасности банковского программного обеспечения используйте PVS-Studio
2017-09-01 в 7:55, admin, рубрики: .net, C#, банки, банковское по, Блог компании PVS-Studio, информационная безопасность, Тестирование IT-систем, финансовое программированиеВекторная геометрия для разработчиков Revit AP
2017-09-01 в 5:40, admin, рубрики: api, C#, cad, CAD/CAM, macros, Revit API, vector, Программирование
Класс XYZ представляет координаты в RevitAPI. А раз мы имеем дело с координатами, то следует рассмотреть азы векторной геометрии. Всего два действия: сложение и вычитание векторов, позволят сделать кучу полезной работы.
Читать полностью »
Сигналы на c#
2017-08-30 в 9:32, admin, рубрики: .net, C#, многопоточное программирование, параллельное программирование, Программирование, сигналыДоброго времени суток Хабр. Вдохновленный моделью синхронизации потоков в go и сигналов в QT появилась идея реализовать нечто подобное на c#.
Если интересно, прошу под кат.
Читать полностью »
ColumnsGrid для WPF
2017-08-26 в 5:55, admin, рубрики: .net, C#, custom grid, wpf, Программирование, разработка под windowsРазмещение элементов в контроле Grid может быть утомительным. Удобнее, когда они автоматом размещаются по ячейкам, как в UniformGrid.
ColumnsGrid добавляет к этому следующие возможности:
- Колонки задаются одной строкой Columns=«Auto,*,200,Shared1»
- Задается интервал между колонками Spacing=«4»
- Переход на следующую строку задается элементом <Separator Height=«4»/>
Академия Veeam — практические классы для начинающих C# разработчиков
2017-08-23 в 10:29, admin, рубрики: C#, Блог компании «Veeam Software», команда, курсы программирования, образование, обучение онлайн, обучение программированию, опыт, Программирование
Регистрация на курс открыта до 31 августа.
Осенью 2017 года Veeam Software запускает свой первый образовательный проект: курс для разработчиков C#.
Не будем скрывать, что, как и многие компании, которые проводят собственные обучающие программы, мы делаем это с целью привлечения в свою команду талантливых девелоперов, которые находятся еще в начале своей карьеры. Ориентируясь на динамику, с которой развивается карьера у разработчиков Veeam, мы выбираем специалистов с большим потенциалом к профессиональному росту.
Мы предлагаем не просто возможность бесплатно пройти обучение — после окончания курса у успешных участников будет реальный шанс устроиться в компанию и стать частью команды Veeam Research & Development.
А теперь ответим на главный вопрос: чем обучение в Академии Veeam может заинтересовать начинающих разработчиков?
Читать полностью »
Борьба с хардкодами при помощи статических анализаторов С#
2017-08-22 в 7:11, admin, рубрики: .net, C#, roslyn, Анализ и проектирование систем, Программирование, Совершенный код, статический анализ кодаВ этой статье я расскажу, как мы написали собственные анализаторы кода и чистим с их помощью нашу кодовую базу .net от наиболее острых / частых косяков. Главный посыл — сделать это довольно просто, не бойтесь писать свои анализаторы для борьбы с именно вашими багами. Вторичный посыл — попробуйте наши анализаторы и сообщите о результатах. Полное руководство я писать не буду, их довольно много в интернете, а вот небольшой обзор, что это как и с какими проблемами я столкнулся, надеюсь, окажется вам полезным.
Читать полностью »
Создаем микросервисную архитектуру вместе с Apache Kafka и .NET Core 2.0
2017-08-21 в 10:55, admin, рубрики: .net, .net core, apache kafka, C#, Микросервисная архитектураДоброго времени суток! Apache Kafka – очень быстрый распределенный брокер сообщений, и сегодня я расскажу как его “готовить” и реализовать с его помощью простую микросервисную архитектуру из консольных приложений. Итак, всем, кто хочет познакомиться с Apache Kafka и опробовать ее в деле, добро пожаловать под кат.Читать полностью »
Мириады запущенных задач на C#
2017-08-20 в 17:02, admin, рубрики: .net, .net core, C#, Go, ПрограммированиеНедавно на ресурсе Medium были опубликованы две статьи от одного и того же автора, затрагивающие функциональность C# async/await.
Основными выводами были:
- рекурсивный вызов асинхронного метода в C# подвержен StackOverflowException
- goroutine'ы лучше задач (тасков) в .NET в плане производительности
Но главная проблема вышеприведенных публикаций — абсолютное непонимание модели кооперативной многозадачности в C# с вводом читателей в заблуждение. Сами же бенчмарки — бессмысленные, как мы увидим позже.
Далее в статье я попытаюсь раскрыть суть проблемы более подробно с примерами решения.
После небольшой правки кода исходных примеров, реализация бенчмарка на .NET оказывается быстрее варианта Go. Попутно решаем проблему переполнения стека у рекурсивных асинхронных методов.
NB: использоваться будут свежевыпущенный .NET Core 2.0 и Go 1.8.3.
Генерация лабиринта алгоритмом Эллера в Unity
2017-08-20 в 8:47, admin, рубрики: .net, algorithms, C#, Gamedev, gamedevelopment, unity. maze, unity3d, игры, юнитиВсем привет!
Сегодня хотелось бы рассказать о том, как генерировать лабиринты алгоритмом Эллера, и о том, как сделать красивую 3д визуализацию в Unity, чтобы потом использовать её в своих играх. Также немного рассказать о том, как можно настроить пост обработку внутри данного решения. И по традиции ссылка GitHub с самим генератором.
Вызов управляемого кода из неуправляемого
2017-08-14 в 13:14, admin, рубрики: C#, c++, cli, msdn, Блог компании ICL Services, неуправляемый код, Программирование, разработка под windows, системное программирование С задачей вызова неуправляемого кода из управляемого мы сталкиваемся довольно часто, и эта задача имеет простое решение в виде одного атрибута [DllImport] и небольшого набора дополнительных правил, которые хорошо изложены в MSDN. Обратная же задача встречается гораздо реже. В данной статье мы и рассмотрим небольшой пример, как это можно сделать. Его не стоит рассматривать как исчерпывающий, скорее лишь, как направление хода мыслей и концепцию. Итак, начнем.
Читать полностью »