Pull to refresh
13
0
Иван Мишкин @Dotarev

User

Send message

Обновление до .NET 7: как оно может улучшить ваше программное обеспечение

Level of difficultyEasy
Reading time7 min
Views4.9K

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

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments2

ChatGPT — лучший помощник программиста. Примеры реальных задач. Плагины и инструменты

Level of difficultyEasy
Reading time9 min
Views60K

Языковая модель ChatGPT никогда не заменит программиста, потому что непосредственно редактирование кода — это крохотная часть разработки (5% по времени). Зато ChatGPT великолепно помогает. И чем выше ваш скилл — тем больше пользы от «подмастерья», выполняющего мелкие задания и черновой кодинг. Он пишет простые функции, генерирует документацию, находит и объясняет ошибки, выполняет кучу других задач (полный список под катом).

Сегодня не использовать ChatGPT просто глупо… Это действительно универсальный помощник, который сильно облегчает жизнь и выводит программирование на принципиально новый уровень. Одно из величайших изобретений в IT за десятилетия, после GUI и интернета.

Пожалуй, никогда программирование не было настолько приятным и эффективным, как сейчас.
Читать дальше →
Total votes 90: ↑75 and ↓15+60
Comments88

Как изучать SQL в 2023 году

Level of difficultyEasy
Reading time7 min
Views95K

В 2023 году SQL (Structured Query Language) остается одним из самых популярных языков программирования, используемых в области баз данных и аналитики данных. Изучение SQL может быть полезным как для тех, кто только начинает свой путь в IT, так и для опытных профессионалов, которые хотят расширить свои знания и навыки. В этой статье мы рассмотрим несколько советов и ресурсов, которые помогут вам изучать SQL в 2023 году, и оставаться в курсе последних тенденций и изменений в этой области.

Согласно данным сайта Indeed.com, в 2023 году требования к кандидатам в вакансиях, связанных с базами данных и анализом данных, включают знание SQL в качестве обязательного навыка. Некоторые из таких популярных вакансий включают в себя SQL Developer, Data Analyst, Database Administrator, Business Intelligence Analyst и другие. Согласно данным сайта Glassdoor, зарплата специалистов, владеющих навыками работы с SQL, может составлять от $50 000 до $100 000 в год в зависимости от региона и уровня опыта. В связи с этим, изучение SQL может быть полезным для тех, кто хочет улучшить свои шансы на рынке труда и получать высокую заработную плату в IT-сфере.

Читать далее
Total votes 42: ↑37 and ↓5+32
Comments57

Multithreading

Reading time77 min
Views176K

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

Читать далее
Total votes 22: ↑20 and ↓2+18
Comments3

Как перевести деньги в Казахстан из России и наоборот?

Reading time8 min
Views58K

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

Самыми популярными способами перевода денежных средств являются:

Читать далее
Total votes 18: ↑12 and ↓6+6
Comments15

Управление учетными записями в Linux. Часть 1. Хранение учетных данных

Reading time3 min
Views21K

С момента своего создания ОС семейства Linux являются многопользовательскими, и для идентификации пользователей в них используются учетные записи и определенные модели доступа.

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

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

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

Читать далее
Total votes 19: ↑15 and ↓4+11
Comments3

Сублицензиар или Лицензиат? Заблуждения при заключении сублицензионных соглашений

Reading time5 min
Views12K

Ежедневно IT-компании заключают множество контрактов, договоров или соглашений. Если с товарами и услугами всё прозрачно и понятно даже рядовому сотруднику, то с передачей прав даже у матёрых юристов и бухгалтеров случаются промахи. Я встречал немало Сублицензионных соглашений о передаче прав на программное обеспечение, которые содержали недоразумения, касающиеся исключительно определения ролей сторон — участников договора.
В классических договорах поставки мы встречаем такие роли: для принимающей стороны — это в основном Заказчик или Покупатель, а для передающей стороны — это ИсполнительПродавец или Поставщик.

Есть ещё понятия ПодрядчикГенподрядчик и Субподрядчик, но интуитивно понятно, что это всё исполнители, т.е. продавцы товаров и услуг. Если же мы рассматриваем лицензионное соглашение, то здесь роли описаны иначе. В передаче прав на интеллектуальную собственность участвуют Лицензиары и Лицензиаты, ну или Сублицензиары и Сублицензиаты.

Кто это такие и где здесь можно ошибиться? Зачастую можно увидеть Сублицензионные соглашения, в которых участвуют две стороны: Лицензиат и Сублицензиат. Такие формы Договора я встречал у дистрибьюторов, корпоративных клиентов, на торговых площадках крупных государственных заказчиков. Также множество юридических ресурсов в интернете приводят подобные шаблоны в качестве примеров. При запросе обосновать логику выбора таких формулировок, все они ссылаются на Статью 1238 ГК РФ.

Статья 1238. Сублицензионный договор
Total votes 7: ↑6 and ↓1+5
Comments11

Сериализация объектов в MultiCAD.NET. Управление совместимостью чертежей и прокси-объектами

Reading time4 min
Views3.1K

При создании пользовательских объектов на традиционном C++ API (NRX в nanoCAD, ObjectARX в AutoCAD) для обеспечения сохранения объектов и чтения их из файла чертежа необходимо в явном виде описывать запись (сериализацию) и чтение (десериализацию) каждого поля. В MultiCAD.NET API применён более привычный .NET разработчикам описательный подход, в основе которого лежит стандартная .NET сериализация.

Применение сериализации, нечувствительной к версии объектов (Version Tolerance Serialization), предоставляет разработчикам более гибкий механизм управления совместимостью объектов разных версий, чем существующий в традиционном C++ API, где предусмотрено чтение предыдущих версий, но чтение файлов «из будущего» невозможно.

В MultiCAD.NET при описании новых версий объектов можно указать, что вновь добавленные поля необязательны, и тогда чертёж, сохранённый в формате новой версии приложения, прочтётся и в предыдущей версии. Разумеется, без изменений остался и традиционный подход, приводящий к созданию прокси объектов (кешированной графики объектов) при загрузке чертежа в предыдущую версию приложения.

Под катом мы обсудим, как достичь совместимости двух версий объекта, а также, как обеспечить традиционный уровень совместимости, когда новые версии приложения читают старые чертежи, но не наоборот.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments0

.Net Microservices The Hardcore Way: туториал от инженеров Microsoft, получаем PROD опыт

Reading time4 min
Views12K

Для тех кто хочет погрузиться в проектирование .Net микросервисов, Kubernetes, Azure и Azure DevOps процессы. 

Читать далее
Total votes 18: ↑16 and ↓2+14
Comments7

Как россиянину открыть счет в банках Казахстана в 2024 году?

Reading time9 min
Views137K

Сегодня немного про банки Казахстана.

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

Преимущества Казахстана, как юрисдикции это широкое распространение русского языка, сходить в банк Казахстана = сходить в банк РФ. Также в Казахстане работает карта МИР российской платежной системы, можно расплачиваться и снимать наличные с карт многих российских банков. Карты Казахстанских банков все еще можно пополнять из РФ через свифт, денежные переводы и переводом на банк партнер.

Самым серьезным преимуществом является минимум требований для подачи заявки на открытии счета.

При открытии счета в банках Армении очень часто требуют документы, связанные с проживанием: договор аренды, соцкарту, прописку, трудовой договор в РА, ВНЖ.

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

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

Процесс оформления выглядит примерно так:

Читать далее
Total votes 17: ↑11 and ↓6+5
Comments13

Немножко кодгена

Reading time5 min
Views11K

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

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments2

Entity Framework Core и высокая производительность

Reading time15 min
Views23K

Entity Framework Core является рекомендованным и самым популярным средством взаимодействия с реляционными базами данных на платформе ASP NET Core. Это мощный инструмент который подходит для большинства сценариев, но, как и любой другой инструмент имеет свои ограничения. Долгое время бытовало мнение (и не безосновательно) что Entity Framework не подходит для высоконагруженных систем и в таких сценариях лучше использовать Dapper. Но время идет и Entity Framework развивается, в том числе в плане оптимизации. Помимо улучшения производительности самой платформы .NET, Entity Framework Core для NET 6 имеет ряд настроек и возможностей, призванных значительно улучшить производительность. В этой статье мы рассмотрим Entity Framework Core с точки зрения производительности и сравним его с Dapper используя актуальные версии на момент июля 2022 года. Посмотрим насколько рекомендация "перепишите все на Dapper" актуальна :)

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

Читать далее
Total votes 21: ↑21 and ↓0+21
Comments16

Смотрим на технологическую сеть глазами злоумышленников

Reading time12 min
Views7.8K

Могут ли злоумышленники проникнуть в АСУ ТП[1]? Как они это делают и какие инструменты используют? А главное, обязательно ли атакующие должны что-то понимать в АСУ ТП и технологических системах, чтобы нанести ущерб промышленным предприятиям?

Дмитрий Федосов, специалист отдела экспертных сервисов и развития SOC в Positive Technologies, и Дмитрий Даренский, руководитель направления по развитию продуктов промышленной безопасности Positive Technologies, рассказывают, как злоумышленники видят технологическую сеть и что объективно необходимо для защиты промышленных инфраструктур. Их статья будет полезна специалистам SOC, инженерам промышленных компаний и тем, кто интересуется безопасностью АСУ ТП.

Читать статью
Rating0
Comments4

Простые шаги по повышению производительности ASP NET Core приложения

Reading time16 min
Views12K

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

Статья будет полезна разработчикам и лидерам команд, стремящимся улучшить производительность системы в целом. Также статья будет полезна опытным разработчикам, которые смогут использовать список рекомендаций из данной статьи в качестве отправной точки для создания или дополнения собственного чеклиста по улучшению производительности ASP NET Core приложений.

Читать далее
Total votes 25: ↑25 and ↓0+25
Comments5

Минимальные API в .NET 6

Reading time10 min
Views24K

Создание REST API является основной частью многих проектов разработки. Выбор для создания таких проектов широк, но если вы разработчик на C#, варианты будут весьма ограничены. API на основе контроллеров были наиболее распространенными в течение долгого времени, но .NET 6 меняет эту ситуацию, предлагая новую возможность. 

Читать далее
Total votes 19: ↑18 and ↓1+17
Comments12

22 новых фичи C# — каким будет C# 11+

Reading time26 min
Views24K

1. Полуавтоматические свойства и ключевое словоfield.
2. Модификатор уровня доступа file.
3. Первичные конструкторы для классов и структур.
4. Паттерн-матчинг для списков.
5. Атрибуты для Main в программах с top level statement.
6. Сырые строки без экранирования внутри строки для удобства работы с json, xml, html и регулярными выражениями.
7. Строковые литералы для UTF-8.
8. Паттерн-матчинг для Span<char>.
9. Перенос строк в выражениях интерполяции.
10. Возможность перегрузки операторов с проверкой на переполнение
11. Оператор побитового сдвига вправо без знака >>>.
12. Доступ к параметрам методов nameof.
13.nameof для членов экземпляров.
14. Ключевое слово required для обязательно инициализируемых свойств и полей.
15. Автоматическая инициализация свойств структур значением по-умолчанию.
16. generic-атрибуты.
17. локальные переменные и параметры только для чтения.
18. Кэширование делегатов при использовании method group для статических методов.
19. Поля с значением хранящимся по ссылке.
20.params Span<T>/params ReadOnlySpan<T>/params IEnumerable<T> в объявлении методов чтобы избежать лишних неявных созданий массива в куче и копирований коллекций.
21. Удаление оператора проверки параметров на null !!.
22. Предупреждения для имен типов полностью в нижнем регистре.

Внутри — разбор каждой фичи и сценарии применения.

Читать далее
Total votes 43: ↑43 and ↓0+43
Comments25

От WPF к Авалонии

Reading time8 min
Views16K

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

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

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments20

Проблемы работы с Entity Framework на Blazor Server

Reading time4 min
Views5.3K

Blazor Server - технология для простого написания Web-систем на платформе .Net. Для удобной работы с базами данных была создана библиотека Entity Framework, которая позволяет работать программисту напрямую с моделями, не задумываясь об SQL-запросах. Но всё ли так хорошо, если соединить Blazor и EF?

Читать далее
Total votes 2: ↑1 and ↓10
Comments10

Расширенная наcтройка EF Core

Reading time11 min
Views6.8K

Говоря "настройка EF", я буду подразумевать настройку контекста базы данных. Поговорим в этой статье мы о некоторой автоматизации, кастомизации и обобщениях. Какая-то информация позволит делать обыденные вещи проще, а какая-то, возможно, станет ключевым фактором при выборе ORM.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments0

Новые возможности в WinAPI на Windows 11

Reading time3 min
Views16K

С выходом новой операционной системы, у Microsoft изменились приоритеты в дизайне - теперь у интерфейса появились анимации, да и в целом он стал менее острым. В данной статье я поделюсь некоторыми нововведениями, с которыми столкнулся в процессе работы с WinAPI.

Читать далее
Total votes 31: ↑31 and ↓0+31
Comments45

Information

Rating
5,098-th
Location
Самара, Самарская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Backend Developer
Senior
From 120,000 ₽
C#
WPF
XAML