Рубрика «разработка под windows» - 59

Мы выпускаем новый продукт — CodeRush for Roslyn, далее CRR. Уже более 10 лет у нас есть другой продукт, который называется просто CodeRush, или CodeRush Classic, сокращенно CRC. Главное отличие  CRR от CRC в том, что Roslyn версия использует парсинг и языковые сервисы  встроенные в Visual Studio. CRR полностью написан с нуля, поэтому он быстрый и легкий, и уже содержит все необходимое для эффективной работы.
В этой статье расскажу о поддержке тестовых фреймворков в CRR. Почти во всех примерах будет использован проект https://github.com/dewe/Money. Этот проект использует NUnit framework, но мы так же поддерживаем xUniut, MSpec, MS Test Framework. Все рассмотренные ниже практики работают одинаково вне зависимости от того, какой тестовый фреймворк вы используете.
Читать полностью »

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

Разработка Need For Speed III Modern Patch

Вообще я достаточно редко играю в компьютерные игры. Бывало, не играл по несколько лет подряд. Но иногда во мне просыпается маленький реверс-инженер, который мотивирует меня забраться в машинный код какой-нибудь любимой игрушки из прошлого. В последний год я занимался доработкой Need For Speed III: Hot Pursuit (1998 года). Это моя любимая игра в жанре, но теперь я, к своему сожалению, знаю о том, насколько отвратительно она написана. Большое количество маленьких багов в самых неожиданных местах — прямое следствие низкого качества кода.
Читать полностью »

Практически любой .NET разработчик так или иначе использует в своей практике технологию Linq. Linq позволяет писать красивый и лаконичный код для получения объектов из источника данных с возможностью определения критериев получения и/или трансформации запрошенных объектов «на лету». Поддержка Linq присутствует практически во всех популярных ORM-фреймворках, в том числе и в NHibernate. NHibernate предоставляет Linq-провайдер, с помощью которого мы можем написать запрос на этапе разработки (Design-Time), но для того, чтобы составить запрос в runtime, придется повозиться с Reflection. Однако, если возникнет потребность в формировании запроса во внешнем процессе, например, в клиентской части сервиса, то в таком случае Reflection уже не спасет, клиентская часть, как правило, не знает (и не должна ничего знать) про серверный ORM.
Ниже мы разберем как создать API для написания Linq запросов к NHibernate в ситуации, когда запрос пишется в одном процессе, а выполняется в другом. Также, реализуем собственный IQueryProvider, который будет транслировать запросы из приложения-источника в исполняющее приложение.
Читать полностью »

Участвуйте 7-9 июня в бесплатной виртуальной конференции dotnetConf 2016 - 1
dotnetConf возвращается! Присоединяйтесь к нашей бесплатной виртуальной конференции 7-9 июня и погрузитесь в мир .NET с известными докладчиками из сообщества .NET и продуктовых групп Microsoft.

Мы постарались собрать сбалансированную программу. Узнайте, как разрабатывать для веба, мобильных устройств, настольных систем, погрузитесь в разработку игр, сервисов или библиотек для широкого спектра платформ и устройств и всё это на .NET. Мы расскажем о .NET Core, ASP.NET Core, C#, F#, Roslyn, Visual Studio, Universal Windows Platform (UWP), Xamarin и многом другом.
Читать полностью »

Делаем собственный сервис по определению WHOIS любого домена - 1

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

Итак, давайте разберёмся как это работает.
Читать полностью »

Разрабатывать мобильное приложение независимо для разных платформ, или изо всех сил налегать на кроссплатформенные средства? Многие скажут, что это заведомо ошибочная постановка вопроса: у обоих вариантов есть свои преимущества и недостатки, так что единственно верного ответа нет. Но это не значит, что разговоры на эту тему могут быть лишь холивором, бессмысленным и беспощадным.

Во-первых, преимущества и недостатки обоих подходов будут совершенно по-разному сказываться в разных ситуациях. Значит, этот вопрос стоит рассматривать не в вакууме, а применительно к конкретным условиям. А во-вторых, нюансы ещё и меняются со временем: например, совсем недавно Microsoft, купив Xamarin, сделали этот продукт бесплатным. Означает ли это, что привычные нам «за и против» пора пересмотреть?

Кроссплатформенная мобильная разработка: вопросы взрослым - 1

Мы задали несколько вопросов трём специалистам, занимающимся мобильной разработкой на заказ и хорошо знакомым с тем же Xamarin: кому ещё оценить спектр возможных ситуаций, как не им, задействованным в проектах разного масштаба и характера? Нашими собеседниками стали:

  • Михаил Самарин (Futurice, бизнес-директор)
  • Денис Кретов («Нотиссимус», технический директор)
  • Максим Pocheshire Евтух («Нотиссимус», разработчик)

Читать полностью »

Для подписчиков Windows Insider Program (Fast builds only, судя по всему) наконец-то стала доступна долгожданная сборка 14316, первая после Build 2016 и включающая в себя тот самый Bash, а если точнее, то «Bash on Ubuntu on Windows», который является обычным bash'ем в составе самой настоящей (не виртуализированной) Ubuntu 14.04 (собственно ее Microsoft называют «Ubuntu on Windows» [иногда сокращая до «uow»]), которая сожительствует с Windows 10 с помощью beta-версии компоненты «Windows Subsystem for Linux», транслирующей вызовы одной вселенной в другую.

Активируем Ubuntu On Windows в свежей Windows 10 Build 14316 - 1

Надо сразу отметить, что стеснительные Microsoft форсируют новомодную пепяку именно под названием Bash, хотя на самом деле это весь user-mode *nix софт (в ближайшем будущем точно).

Читать полностью »

ReactOS 0.4.2 будет превосходным - 1 «It is certainly a killer feature, if you know what I mean.»
ReactOS 0.4.2 будет превосходным - 2 Юзер реддита о ReiserFS в ReactOS.

Привет, Хаюраюзеры!
Представляем вашему вниманию внезапную подборку нововведений, ожидающих вас в ReactOS 0.4.2.

Чтение файлов с разделов ReiserFS:

Читать полностью »

Недавно я прочёл запись в блоге одного парня, который жаловался, что на интервью его попросили написать функцию, которая должна скопировать файл. Нет, я понимаю, как можно взъесться на такое задание, но если бы в подобной ситуации оказался я… уж я бы оторвался по полной:


Кандидат: Что конкретно Вы имеете в виду, говоря «скопировать»?
Интервьюер: Ну… создать новый файл, содержимое которого является копией содержимого исходного файла.Читать полностью »

раскладка

Знакомый линуксоид упрекнул меня, мол, в винде ни переключения языка Caps Lock'ом нет, ни даже раскладку нельзя отредактировать. Посмотрел я, и правда, все раскладки содержатся в файлах C:WindowsSystem32kbd*.dll, и редактировать такое hex-редактором ну никак не назвать удобным.

Как достичь удобства? Для переключения раскладок Caps Lock'ом можно использовать всякие навесные программы, тяжёлые вроде Punto Switcher, или простые вроде lswitch. Для редактирования раскладок есть MSKLC, но он малофункционален и неудобен, а аналоги вроде KbdEdit или KLM32 платные.

И тогда я решил написать на flat assembler'е код, собирающий DLL раскладки.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js