Потребовалось на днях прикрутить uLogin к asp.net сайту, но с ходу найти готовый код как-то не получилось. Определенно кто-то столкнется с данным вопросом…
Алексей Дебелов @AlienJust
Разработчик ПО
Расставим точки над структурами C/C++
4 min
279KНедавно познакомился со структурами C/C++ — struct. Господи, да «что же с ними знакомиться» скажете вы? Тем самым вы допустите сразу 2 ошибки: во-первых я не Господи, а во вторых я тоже думал что структуры — они и в Африке структуры. А вот как оказалось и — нет. Я расскажу о нескольких жизненно-важных подробностях, которые кого-нибудь из читателей избавят от часовой отладки…


+55
LINQ to Objects на языке C++
4 min
16KВсё началось с того, что я в институте и после его окончания писал код на C++ и не знал бед. Но тут в один прекрасный день пришлось писать код под .NET на C#. Сперва немного поплевался, но потом ничего — втянулся. Увидел выгодные отличия от C++: безопасность, строгость и т.д. Также не смог обойти стороной LINQ при работе с коллекциями…


+74
CXXI: Мост между мирами C# и C++
7 min
42KTranslation
В рантайме Mono есть немало средств для взаимодействия с кодом на не .NET языках, но никогда не было ничего вменяемого для взаимодействия с кодом на C++.
Но это вскоре изменится благодаря работе Алекса Коррадо, Андрэа Гайта и Зольтана Варга.
Вкратце, новая технология позволяет разработчикам C#/.NET:
Но это вскоре изменится благодаря работе Алекса Коррадо, Андрэа Гайта и Зольтана Варга.
Вкратце, новая технология позволяет разработчикам C#/.NET:
- Легко и прозрачно использовать классы C++ из C# или любого иного .NET языка
- Создавать экземпляры классов C++ из C#
- Вызывать методы классов C++ из кода на C#
- Вызывать инлайн-методы C++ из кода на C# (при условии, что библиотека скомпилирована с флагом -fkeep-inline-functions или если вы скомпилируете дополнительную библиотеку с их реализациями)
- Наследовать классы C++ из C#
- Переопределять виртуальные методы классов C++ методами на C#
- Использовать экземпляры таких смешанных C++/C# классов как в коде на C#, так и в коде на C++
+31
Самый правильный безопасный printf
8 min
12KПод катом Вас ждет увлекательная история о том, как я сильно расстроился, познакомившись поближе с пользовательскими литералами (с нового стандарта), но при этом в последствии все же реализовал вышеупомянутую функцию, а также разобрался с constexpr, а позже еще и реабилитировал те самые литералы.
+56
Видеоматериалы, блоги и подкасты для .NET разработчика
5 min
17KВидеоматериалы
В одной из своих статей Бьёрн Страуструп (папа С++) признался, что он не признает видео материалы в качестве источника для самообразования. И с ним сложно не согласиться, когда речь касается изучения с нуля языка программирования или технологии. Я правда сомневаюсь, что можно одолеть такого монстра, как С++ или стать гуру WPF лежа на диване и просматривая обучающее видео типа «Узнай все за 24 часа». Но если вы ставите себе цель познакомиться с некоторой технологией или новой возможностью языка программирования, или просто послушать философско-компьютерные размышления умного товарища, то в этом случае веб-касты, записи конференций или другой вид видеоматериалов может быть очень кстати.
+43
Функциональное программирование для всех
33 min
354KTranslation

Доброго времени суток. Это статья — перевод заинтересовавшего меня поста в блоге аспиранта Университета штата Нью-Йорк в Стоуни-Брук. Статья в доступной форме описывает основные концепции функционального программирования, их преимущества и недостатки. Думаю она будет полезна широкому кругу читателей, которые сомневаются, нужно ли им углубляться в мир функционального программирования или нет. Пожелания, предложения и замечания по переводу и терминологии принимаются по личной почте.
Мнение переводчика может иногда не совпадать с мнением автора, но переводить статью было крайне занимательно.
UPD: альтернативный вариант перевода вы можете найти на rsdn (спасибо flamingo за ссылку).
+174
Играем в кубики с Kinect
5 min
14K- Kinect for Windows SDK. Часть 1. Сенсор
- Kinect for Windows SDK. Часть 2. Потоки данных
- Kinect for Windows SDK. Часть 3. Функциональные возможности
- [Играем в кубики с Kinect]
- Программа, апорт!
Иногда удивительно, как стремительно идет развитие IT-индустрии. Я помню, как еще сравнительно недавно, на одном из семинаров TechDays, Евгений Марченков показывал первые ролики о проекте Natal. Много ли людей помнит это название? Ведь сейчас проект известен как Kinect!

Сенсор был разработан для консоли Xbox 360, а с февраля 2012 года доступен для персональных компьютеров. Не так давно мне представилась возможность оценить сенсор и написать немного кода.
Думаю, что вы уже прочитали предыдущие статьи цикла посвященные обзору SDK. Настало время попробовать Kinect в действии! В статье я расскажу о том, как можно написать небольшую игру в кубики. И конечно кубики будут двигаться при помощи рук!
+33
Должен ли ты использовать .Net для своего стартапа?
3 min
5.1KTranslation
Для тех кто не заметил, это перевод. Заранее извиняюсь, если перевод не качественный, некоторые вещи не мог понять как лучше перевести не исказив смысл. Если есть какие-то замечание прошу писать в личку.
Я получаю этот вопрос очень часто, как от людей внутри и снаружи .Net сообщества, и не так давно мне задали этот вопрос на Quora. Вот мой ответ. Пожалуйста, имейте в виду, что это мое мнение, и я не могу обещать, что я прав, но я могу обещать, что это то, что я действительно думаю, и если вы подошли на улице и спросил меня, «Должен ли я использовать. Net для моего стартапа? » это то, что я бы вам ответил.
Я получаю этот вопрос очень часто, как от людей внутри и снаружи .Net сообщества, и не так давно мне задали этот вопрос на Quora. Вот мой ответ. Пожалуйста, имейте в виду, что это мое мнение, и я не могу обещать, что я прав, но я могу обещать, что это то, что я действительно думаю, и если вы подошли на улице и спросил меня, «Должен ли я использовать. Net для моего стартапа? » это то, что я бы вам ответил.
+24
Unbiased rendering (рендеринг без допущений)
7 min
54KВ компьютерной графике, рендеринг без допущений относится к технике рендеринга, которая не вносит в расчет систематических ошибок, предположений или погрешностей. Изображение получается таким, каким должно быть в природе, а рендер не имеет настроек качества поверхностей либо источников света.

Изображение отрендерено с помощью Maxwell Render.

Изображение отрендерено с помощью Maxwell Render.
+157
Набор полезных утилит и библиотек мира .NET
2 min
13KПродолжаю серию постов о библиотеках и прогрмаммах этого мира. Крайне советую всем не знакомым посмотреть в сторону языка программирования Nemerle. У него есть все шансы стать таким же мейнстримом, как C#, F#, VB.NET. Тут все зависит от вас, как говорится. Вы задаете мейнстрим, а не корпорации. Итак, приступим.

Это прекрасная IDE для работы в проектах .NET. Скоро будет добавлена поддержка C\C++. Сейчас она есть, но частичная. IDE полностью бесплатна, поддерживает на данный момент C#/VB.NET/IronRuby/IronPython/F#/Nemerle(надо доустановить плагин)/ Boo. Среди типов проектов — абсолютно любые, включая ASP.NET, WPF, WCF с визуальными редакторами, подсказками. Есть встроенный рефакторинг, имеющий пока что малую часть функционала ReSharper. Вместе с плагином ThemeTool превращается в полноценную Visual Studio 2010 визуально (см. скриншот). Это то, что должен попробовать каждый разработчик .NET и иметь при себе. Ведь в отличии от Visual Studio инсталлятор этой программы занимает всего 20 мегабайт.
SharpDevelop

Это прекрасная IDE для работы в проектах .NET. Скоро будет добавлена поддержка C\C++. Сейчас она есть, но частичная. IDE полностью бесплатна, поддерживает на данный момент C#/VB.NET/IronRuby/IronPython/F#/Nemerle(надо доустановить плагин)/ Boo. Среди типов проектов — абсолютно любые, включая ASP.NET, WPF, WCF с визуальными редакторами, подсказками. Есть встроенный рефакторинг, имеющий пока что малую часть функционала ReSharper. Вместе с плагином ThemeTool превращается в полноценную Visual Studio 2010 визуально (см. скриншот). Это то, что должен попробовать каждый разработчик .NET и иметь при себе. Ведь в отличии от Visual Studio инсталлятор этой программы занимает всего 20 мегабайт.
+34
Работа с Command Line в .Net
4 min
17KДобрый день сообщество,
Долгое время я был просто читателем полезных технических статей.
Думаю, что пришло и мое время написать свой первый пост. Я надеюсь, что этот пост который, будет полезен не только начинающим разработчикам .net.
Мне кажется, что этой, на первый взгляд, банальной теме уделяется мало внимания. В этой статье я хотел бы поделится опытом работы с Command Line в .Net.
Долгое время я был просто читателем полезных технических статей.
Думаю, что пришло и мое время написать свой первый пост. Я надеюсь, что этот пост который, будет полезен не только начинающим разработчикам .net.
Мне кажется, что этой, на первый взгляд, банальной теме уделяется мало внимания. В этой статье я хотел бы поделится опытом работы с Command Line в .Net.
+29
Искусство публичных выступлений
9 min
107KЭта статья открывает серию статей — если окажется, что Хабраколлеги сочтут ее интересной, ибо первое правило публичных выступлений гласит: рассказывай людям о том, что им интересно!
Если вы раньше не выступали на публике или боитесь это делать — вам под кат. Если вы считаете себя опытным докладчиком, для вас будет вторая статья серии.
В сегодняшней статье я пишу о том, как выступать, и очень мало пишу о содержании доклада. Если из комментариев станет понятно, что надо еще рассказать о композиции доклада (постановка задачи -> варианты решений -> процесс выбора -> выбранное решение -> результат) или об основах публичной речи (не «экать», не «мыкать», не говорить через слово «т-скыть» и не заканчивать фразы ненормативными междометиями) — расскажу в следующий раз.
Историческая справка: на Хабре по этой теме уже было небольшое обсуждение год назад.
Если вы раньше не выступали на публике или боитесь это делать — вам под кат. Если вы считаете себя опытным докладчиком, для вас будет вторая статья серии.
В сегодняшней статье я пишу о том, как выступать, и очень мало пишу о содержании доклада. Если из комментариев станет понятно, что надо еще рассказать о композиции доклада (постановка задачи -> варианты решений -> процесс выбора -> выбранное решение -> результат) или об основах публичной речи (не «экать», не «мыкать», не говорить через слово «т-скыть» и не заканчивать фразы ненормативными междометиями) — расскажу в следующий раз.
Историческая справка: на Хабре по этой теме уже было небольшое обсуждение год назад.
+211
Полуавтоматическая конвертация лени в код
7 min
6.6KВсем доброго дня. Сегодня я хочу поговорить об автоматической генерации кода C#. Например, свойства в классах, описывающих сущности предметной области, обычно описываются по совершенно одинаковой схеме. И мне элементарно лениво писать для каждого примитивного свойства одинаковые конструкции. Немного спасает применение сниппетов и активных шаблонов, но когда приходит нужда что-то поменять в этой схеме, то приходится перелопачивать кучу кода. Так почему бы это однообразие не генерировать автоматически в процессе сборки?
В какой-то момент кинетическая энергия творчества ненадолго пересилила потенциальную энергию лени, и результатом этого стала маленькая библиотечка для автоматической генерации некоторых исходных файлов программы на основе внешних данных. Приглашаю под кат всех ленивых (в хорошем смысле этого слова) разработчиков на C#.
В какой-то момент кинетическая энергия творчества ненадолго пересилила потенциальную энергию лени, и результатом этого стала маленькая библиотечка для автоматической генерации некоторых исходных файлов программы на основе внешних данных. Приглашаю под кат всех ленивых (в хорошем смысле этого слова) разработчиков на C#.
+25
Организация шаринга файлов в приложении на С#
3 min
2.5KНедавно мне пришлось работать над интересным проектом, в котором заказчик просил реализовать обмен файлами через интернет, соответственно с прямым доступом прямо из приложения.
Основные требования:
Первое что пришло на ум — использовать облачное хранилище данных с доступом по API. Итак, что из этого вышло?
Основные требования:
- Отображение списка файлов.
- Загрузка и скачивание через интерфейс программы.
- Скрытая авторизация без участия пользователя.
Первое что пришло на ум — использовать облачное хранилище данных с доступом по API. Итак, что из этого вышло?
+18
Почему я ненавижу фреймворки
4 min
70KTranslation
Я собираюсь сделать Java-веб-приложение (да, это будет Java, по некоторым причинам, которые сейчас озвучивать не хочу). В процессе работы, я оцениваю кучу J2EE portlet-enabled JSR-compliant MVC role-based CMS web service application container фреймворков.
После кучи потраченного времени на прочтение документации, я уже готов выколоть себе глаза.
Давайте представим, что я решил сделать шкафчик для специй.
После кучи потраченного времени на прочтение документации, я уже готов выколоть себе глаза.
Давайте представим, что я решил сделать шкафчик для специй.
+231
Как раскрыть мощь HTML5 Canvas для игр
8 min
40KTutorial
Translation

Браузеры, поддерживающие HTML5, и платформа HTML5 для Windows 8 Metro сегодня становятся серьезными кандидатами для разработки современных игр.
Благодаря canvas, у вас есть доступ к аппаратно-ускоренной поверхности, на которой вы можете отображать контент вашей игры и с помощью некоторых трюков и ухищрений вы сможете достигнуть великолепной производительности рендеринга до 60 кадров в секунду. Подобная непрерывность действительно важна в играх, так как чем плавнее игра (анимация), тем лучше чувствует себя игрок.
Цель данной статьи — дать вам несколько подсказок, как выжать максимум мощности из HTML5 Canvas. Статья состоит из двух основных частей [вы читаете первую]. David Rousset скоро опубликует вторую часть.
В статье я буду показывать ключевые идеи на одном и том же примере — это эффект 2D-туннеля, который я написал для Coding4Fun-сессии на TechDays 2012 во Франции.
+41
Архитектура взаимодействия клиентской и серверной частей Web приложения
8 min
14KХотел рассказать, как я вижу устройство архитектуры взаимодействия серверной и клиентской частей. И хотел бы узнать спросить хабровчан, чем плоха или хорошо такая архитектура.


+6
Программа для нарезки хлеба
1 min
3.3KTranslation

В средневековые времена программирования, к данным мы применяли функции. Для того, чтобы нарезать хлеб, брали структуру «хлеб» и передавали ее как параметр функции «нарезать»:
нарезать(хлеб);
+32
Коды возврата & исключения
3 min
18KЗамечательные статьи публиковались в последнее время, хотелось бы добавить ещё несколько абзацев по данной теме.
Уважаемые авторы предыдущих топиков как-то упускали тот момент (или мне показалось? или это само-собой подразумевается?) что exceptions возникли как инструмент для решения весьма утилитарной задачи —
Уважаемые авторы предыдущих топиков как-то упускали тот момент (или мне показалось? или это само-собой подразумевается?) что exceptions возникли как инструмент для решения весьма утилитарной задачи —
+58
Information
- Rating
- Does not participate
- Location
- Екатеринбург, Свердловская обл., Россия
- Date of birth
- Registered
- Activity