Этот пост является продолжением цикла статей, рассказывающих об эволюции проекта nopCommerce. Вкратце поговорим о нововведениях .NET 7, поделимся своими мыслями на этот счет и рассмотрим замеры производительности, которые мы получили при обновлении нашего приложения.
User
ChatGPT — лучший помощник программиста. Примеры реальных задач. Плагины и инструменты
Языковая модель ChatGPT никогда не заменит программиста, потому что непосредственно редактирование кода — это крохотная часть разработки (5% по времени). Зато ChatGPT великолепно помогает. И чем выше ваш скилл — тем больше пользы от «подмастерья», выполняющего мелкие задания и черновой кодинг. Он пишет простые функции, генерирует документацию, находит и объясняет ошибки, выполняет кучу других задач (полный список под катом).
Сегодня не использовать ChatGPT просто глупо… Это действительно универсальный помощник, который сильно облегчает жизнь и выводит программирование на принципиально новый уровень. Одно из величайших изобретений в IT за десятилетия, после GUI и интернета.
Пожалуй, никогда программирование не было настолько приятным и эффективным, как сейчас.
Как изучать SQL в 2023 году
В 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-сфере.
Multithreading
Разработчики часто сталкиваются с необходимостью разработки многопоточных приложений, поэтому вопросы многопоточности требуют детального изучения. Давайте познакомимся с основными терминами, используемыми в источниках информации о многопоточности, рассмотрим задачи и проблемы многопоточности и изучим средства стандартной библиотеки C++, которые помогут создавать многопоточные приложения.
Как перевести деньги в Казахстан из России и наоборот?
В Сентябре 2022 года, Казахстан побил все рейтинги по количеству переехавших граждан РФ. В связи с этим вопрос перевода денег между двумя странами стал актуальным как никогда. В это посте хотелось бы разобрать виды денежных переводов в Республику Казахстан, как при наличии там открытого счета в банке, так и без него.
Самыми популярными способами перевода денежных средств являются:
Управление учетными записями в Linux. Часть 1. Хранение учетных данных
С момента своего создания ОС семейства Linux являются многопользовательскими, и для идентификации пользователей в них используются учетные записи и определенные модели доступа.
Неверная настройка прав доступа может привести к серьезным уязвимостям в безопасности операционной системы. Причем, в отличии от уязвимостей в программном обеспечении, допущенных программистами при написании кода, уязвимости настройки выявить бывает довольно сложно. Сканеры уязвимостей неплохо обнаруживают уязвимости приложений, но очень плохо справляются с ошибками в настройках безопасности приложений и операционных систем.
В этой статье я предлагаю рассмотреть хранение учетных данных в ОС Линукс. Затем, во второй статье поговорим о том, какие типовые ошибки допускают при настройке учеток и как правильно их выполнять. А в третьей мы поговорим к чему могут привести ошибки в настройке прав, и прежде всего о различных способах поднятия привилегий.
Конечно, по теме управления учетками в Линукс написано не мало книг и статей, однако статистика инцидентов ИБ показывает, что напомнить о правильных практиках администрирования будет совсем не лишним.
Сублицензиар или Лицензиат? Заблуждения при заключении сублицензионных соглашений
Ежедневно IT-компании заключают множество контрактов, договоров или соглашений. Если с товарами и услугами всё прозрачно и понятно даже рядовому сотруднику, то с передачей прав даже у матёрых юристов и бухгалтеров случаются промахи. Я встречал немало Сублицензионных соглашений о передаче прав на программное обеспечение, которые содержали недоразумения, касающиеся исключительно определения ролей сторон — участников договора.
В классических договорах поставки мы встречаем такие роли: для принимающей стороны — это в основном Заказчик или Покупатель, а для передающей стороны — это Исполнитель, Продавец или Поставщик.
Есть ещё понятия Подрядчик, Генподрядчик и Субподрядчик, но интуитивно понятно, что это всё исполнители, т.е. продавцы товаров и услуг. Если же мы рассматриваем лицензионное соглашение, то здесь роли описаны иначе. В передаче прав на интеллектуальную собственность участвуют Лицензиары и Лицензиаты, ну или Сублицензиары и Сублицензиаты.
Кто это такие и где здесь можно ошибиться? Зачастую можно увидеть Сублицензионные соглашения, в которых участвуют две стороны: Лицензиат и Сублицензиат. Такие формы Договора я встречал у дистрибьюторов, корпоративных клиентов, на торговых площадках крупных государственных заказчиков. Также множество юридических ресурсов в интернете приводят подобные шаблоны в качестве примеров. При запросе обосновать логику выбора таких формулировок, все они ссылаются на Статью 1238 ГК РФ.
Сериализация объектов в MultiCAD.NET. Управление совместимостью чертежей и прокси-объектами
При создании пользовательских объектов на традиционном C++ API (NRX в nanoCAD, ObjectARX в AutoCAD) для обеспечения сохранения объектов и чтения их из файла чертежа необходимо в явном виде описывать запись (сериализацию) и чтение (десериализацию) каждого поля. В MultiCAD.NET API применён более привычный .NET разработчикам описательный подход, в основе которого лежит стандартная .NET сериализация.
Применение сериализации, нечувствительной к версии объектов (Version Tolerance Serialization), предоставляет разработчикам более гибкий механизм управления совместимостью объектов разных версий, чем существующий в традиционном C++ API, где предусмотрено чтение предыдущих версий, но чтение файлов «из будущего» невозможно.
В MultiCAD.NET при описании новых версий объектов можно указать, что вновь добавленные поля необязательны, и тогда чертёж, сохранённый в формате новой версии приложения, прочтётся и в предыдущей версии. Разумеется, без изменений остался и традиционный подход, приводящий к созданию прокси объектов (кешированной графики объектов) при загрузке чертежа в предыдущую версию приложения.
Под катом мы обсудим, как достичь совместимости двух версий объекта, а также, как обеспечить традиционный уровень совместимости, когда новые версии приложения читают старые чертежи, но не наоборот.
.Net Microservices The Hardcore Way: туториал от инженеров Microsoft, получаем PROD опыт
Для тех кто хочет погрузиться в проектирование .Net микросервисов, Kubernetes, Azure и Azure DevOps процессы.
Как россиянину открыть счет в банках Казахстана в 2024 году?
Сегодня немного про банки Казахстана.
С каждым месяцем 2023 года ужесточаются требования банков из постсоветских республик, которые стали необыкновенно популярны среди россиян из-за широких возможностей пополнения в том числе рублем.
Преимущества Казахстана, как юрисдикции это широкое распространение русского языка, сходить в банк Казахстана = сходить в банк РФ. Также в Казахстане работает карта МИР российской платежной системы, можно расплачиваться и снимать наличные с карт многих российских банков. Карты Казахстанских банков все еще можно пополнять из РФ через свифт, денежные переводы и переводом на банк партнер.
Самым серьезным преимуществом является минимум требований для подачи заявки на открытии счета.
При открытии счета в банках Армении очень часто требуют документы, связанные с проживанием: договор аренды, соцкарту, прописку, трудовой договор в РА, ВНЖ.
При открытии счета в Банках Грузии, наличие адреса проживания в Грузии улучшает вероятность открытия счета и соответственно усложняет для тех кто не оттуда + существует немало случаев отказа особенно для россиян, работающих на госкомпании и банки под санкциями.
Банки Казахстана же по-прежнему открывают счета россиянам, предъявляя минимальные требования и запрашивая всего несколько документов.
Процесс оформления выглядит примерно так:
Немножко кодгена
В C# давно уже добавили возможность использовать кодогенерацию. Но покопавшись в интернетах не было найдено обширного количество гайдов. Спасибо сайту мс, за наличие информации по данной теме. Но, увы, там она достаточно поверхностна, а подробности можно найти только экспериментальным путем или изучением различных готовых примеров.
Entity Framework Core и высокая производительность
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.
Смотрим на технологическую сеть глазами злоумышленников
Могут ли злоумышленники проникнуть в АСУ ТП[1]? Как они это делают и какие инструменты используют? А главное, обязательно ли атакующие должны что-то понимать в АСУ ТП и технологических системах, чтобы нанести ущерб промышленным предприятиям?
Дмитрий Федосов, специалист отдела экспертных сервисов и развития SOC в Positive Technologies, и Дмитрий Даренский, руководитель направления по развитию продуктов промышленной безопасности Positive Technologies, рассказывают, как злоумышленники видят технологическую сеть и что объективно необходимо для защиты промышленных инфраструктур. Их статья будет полезна специалистам SOC, инженерам промышленных компаний и тем, кто интересуется безопасностью АСУ ТП.
Простые шаги по повышению производительности ASP NET Core приложения
Разработка сложной системы предполагает что вы, рано или поздно, столкнетесь с вопросом повышения производительности вашего приложения. Выполнив поиск по разным источникам вы найдете множество рекомендаций по улучшению производительности как для конкретных ситуаций и узких мест, так и применимых для всего приложения. В этой статье мы рассмотрим те рекомендации, которые призваны улучшить производительность всего приложения при минимальных трудозатратах. Мы протестируем оказываемый на приложение эффект, вычислим возможный прирост производительности от каждой из них и рассмотрим нет ли подводных камней, которые стоит учитывать.
Статья будет полезна разработчикам и лидерам команд, стремящимся улучшить производительность системы в целом. Также статья будет полезна опытным разработчикам, которые смогут использовать список рекомендаций из данной статьи в качестве отправной точки для создания или дополнения собственного чеклиста по улучшению производительности ASP NET Core приложений.
Минимальные API в .NET 6
Создание REST API является основной частью многих проектов разработки. Выбор для создания таких проектов широк, но если вы разработчик на C#, варианты будут весьма ограничены. API на основе контроллеров были наиболее распространенными в течение долгого времени, но .NET 6 меняет эту ситуацию, предлагая новую возможность.
22 новых фичи C# — каким будет C# 11+
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. Предупреждения для имен типов полностью в нижнем регистре.
Внутри — разбор каждой фичи и сценарии применения.
От WPF к Авалонии
WPF — любимый сообществом фреймворк для десктопной разработки, однако в то время как дотнет и вся его экосистема уже давно кроссплатформенные, WPF работает только под Windows. Сообщество решило эту проблему и теперь у нас есть Авалония — фреймворк, во многом очень похожий на WPF, но работающий на разных платформах.
Под катом мы разберем отличия Авалонии от WPF. Что нужно знать людям, переходящим с WPF на Авалонию? В чем преимущества нового фреймворка, а в чем его недостатки по сравнению с WPF?
Проблемы работы с Entity Framework на Blazor Server
Blazor Server - технология для простого написания Web-систем на платформе .Net. Для удобной работы с базами данных была создана библиотека Entity Framework, которая позволяет работать программисту напрямую с моделями, не задумываясь об SQL-запросах. Но всё ли так хорошо, если соединить Blazor и EF?
Расширенная наcтройка EF Core
Говоря "настройка EF", я буду подразумевать настройку контекста базы данных. Поговорим в этой статье мы о некоторой автоматизации, кастомизации и обобщениях. Какая-то информация позволит делать обыденные вещи проще, а какая-то, возможно, станет ключевым фактором при выборе ORM.
Новые возможности в WinAPI на Windows 11
С выходом новой операционной системы, у Microsoft изменились приоритеты в дизайне - теперь у интерфейса появились анимации, да и в целом он стал менее острым. В данной статье я поделюсь некоторыми нововведениями, с которыми столкнулся в процессе работы с WinAPI.
Information
- Rating
- 5,098-th
- Location
- Самара, Самарская обл., Россия
- Date of birth
- Registered
- Activity