Все потоки
Поиск
Написать публикацию
Обновить
261.63

C# *

Объектно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Разработка сервиса для публикации препринтов. Архитектурный подход

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2K

Всем привет! Это мой первый пост на Хабре, в котором я бы хотел поделиться процессов разработки своего сервиса для публикации препринтов ScienceArchive.

Меня зовут Гаврилов Антон и я .NET бэкенд разработчик. Мне интересно изучать новые технологии и подходы к проектированию и разработке систем и приложений и относительно недавно я решил испытать свои навыки в полном цикле создания собственного веб-сервиса, которым и стал ScienceArchive.

С исходниками проекта также можно ознакомиться на GitHub.

Читать далее

Java и C#. История одного вдохновения

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

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

Читать далее

Быстрое вычисление степени

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров12K

В статье описан процесс разработки алгоритма функции вычисления любой степени положительного числа, использующего «магическую константу». Приведены результаты её сравнения с исходной функцией вычисления обратного квадратного корня, а также со стандартной функцией вычисления степени Math.Pow.

Читать далее

Переход на .NET Aspire из отдельных проектов. Часть 2. Локальное развертывание с помощью Aspire

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров5.7K

Эта статья является продолжением краткого туториала по переводу приложений на .Net Aspire. В ее рамках будет рассмотрено развертывание Aspire приложения в локальном кластере Kubernetes.

Читать далее

Переход на .NET Aspire из отдельных проектов. Часть 1. Перевод приложений в Aspire

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

Не так давно в свет вышел .NET Aspire - продукт для упрощения создания и публикации микросервисных приложений от Microsoft. В рамках данной статьи будет рассмотрен ручной переход на Aspire в "игрушечном" случае: пара небольших проектов, один из которых обращается к Postgres'у.

Читать далее

Шаблон Go-микросервиса для начинающих от .NET разработчика. Часть 1

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров10K

Привет, Хабр! У многих разработчиков на .NET вызывает интерес относительно свежий язык программирования Go (Golang). Однако при поиске информации и учебных материалов он может отпугивать. Нам предлагается забыть все удобное и красивое, чему нас научила .NET, и принять что-то новое, но кажущееся непривычным и не всегда приятным.

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

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

Читать далее

.NET Aspire — империя дотнета наносит ответный удар

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

Когда я первый раз услышал про .NET Aspire, я подумал что это какая-то очередная лажа от Майкрософта, про которую все забудут через неделю.

Особенно, учитывая какую дичь часто завозят в шарп (например те же ужасно спроектированные Primary Constructor'ы про которые я писал, или вот прикол-пропозал от самого Тоуба). Так что ожидания у меня, честно говоря, были ниже нуля.

Но попробовав его лично, я был, честно говоря, шокирован. Трепещите, жависты!! Трепещите гошники! Трещепищите питонисты - такого вы еще точно не видели.

Я даже представить не мог, что DevEx можно сделать настолько офигительным.

Узнать про Aspire без смс и регистрации

Desktop приложение для хранения текстовой информации

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

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

Читать далее

Запускаем .NET на RISC-V и разрабатываем IoT приложение для Sipeed Lichee RV

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5.2K
.NET nanoFramework Weatherstation

До недавнего времени разрабатывать IoT приложения на C# можно было только для компьютеров построенных на архитектуре ARM или x86. Поддержка RISC-V процессоров для платформы .NET уже давно в стадии разработки. В начале этого года был представлен не официальный .NET 8.0 SDK, который уже сейчас вы сможете запустить на RISC-V процессоре под ОС Debian/Ubuntu. В качестве платформы запуска возьмем одноплатный компьютер Sipeed Lichee RV на RISC-V процессоре Allwinner D1 (ядро Alibaba/T-Head Xuantie C906 RISC-V). В первой части поста рассмотрим установку .NET 8.0 SDK на Sipeed Lichee RV. Во второй, запустим приложение для работы с контактами GPIO и датчиком BME280 для замера температуры, влажности и давления.
Читать дальше →

Как создать приложение на C# с использованием приложения на Python

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров10K

Интеграция скриптов Python в приложение на C# позволяет использовать обширные библиотеки Python, сохраняя при этом возможности C#. Этот гайд предоставляет пошаговое руководство по созданию приложения на C#, которое вызывает скрипт Python, использует виртуальное окружение для зависимостей Python и измеряет время выполнения скрипта.

Читать далее

Настоящий эффект параллакса

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

Parallax 3D

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

Читать далее

CLI для Eppie — p2p почта в командной строке

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

Если вы любите децентрализованные технологии и консольные клиенты электронной почты, у нас для вас новость. Вышла альфа версия Eppie-CLI — официального консольного клиента для Eppie. GitHub репозиторий здесь.

Читать далее

Garnet. Хранит ли баги кэш-хранилище от Microsoft?

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

Microsoft представили Garnet — проект кроссплатформенного быстрого кэш-хранилища с открытым исходным кодом, написанный на языке C#. Предлагаю расчехлить статический анализатор и посмотреть, какие ошибки и странности содержатся в исходном коде проекта.

Читать далее

Ближайшие события

Delta-Rle-Huffman (DRH) Texture Format

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

Всем привет! В этой статье я опишу алгоритм работы формата сжатия изображений без потерь. Сжатие использует известные методики, которые и дали ему название. Проект начинался с простых экспериментов, которые вышли из под контроля. Не смотря на то, что формат чаще сжимает лучше чем png, никакого практического применения этот формат не имеет, оставаясь чисто академическим.

Внимание! В статье много картинок.

Кому интересно, добро пожаловать под кат!

Пример деплоя Web-приложения на C# Mono на хостинг

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.4K

Для развертывания на сервере мы применим GitOps подход. 

Чтобы развернуть приложение, выполним следующие шаги:

1. Напишем приложение
2. Создадим конфигурационный файл
3. Выгрузим все файлы (можно через git, а можно через интерфейс) на сервер и запустим сборку. 

Рассмотрим процесс подробнее.

Читать далее

Работа с XML в C#

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров13K

Привет, Хабр!

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

В статье рассмотрим как работать с XML в C#.

Читать далее

История создания моей первой игры на Unity

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

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

Читать далее

Pet проект. Разделитель PDF документов

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

Привет, молодые успешные!

Как часто вы работаете с PDF документами? Случалось ли вам сталкиваться с проблемой монолитности этого формата? Я часто сталкивался с такой проблемой, когда мне требовалось лишь несколько листов из всего документа, например чтобы отправить их по почте. Да можно воспользоваться бесплатными онлайн сервисами которых полно в интернете...

Читать далее

Прочитал книгу по C# или что написал Рома Сакутин

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

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

Тогда многие последовали за ним, начали применять практики которые он пропагандировал и в целом, доверять его слову.

Потом в какой то момент Рома создал свою онлайн-школу для программистов на C# и я даже приобрел его курс. И тогда то, я понял, что он учит не сильно лучше, чем другие школы.

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

Читать далее

Реверс-инжиниринг нативно скомпилированных .NET-приложений

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров6.2K


Изучение внутреннего устройства приложений, созданных с использованием нативной опережающей компиляции (AOT).


На платформе .NET 7 впервые была представлена новая модель развертывания: опережающая нативная компиляция. Когда приложение .NET компилируется нативно по методу AOT, оно превращается в автономный нативный исполняемый файл, оснащённый собственной минимальной средой исполнения для управления выполнением кода.
Читать дальше →

Вклад авторов