Как стать автором
Обновить
8
0
Александр @askeet

Пользователь

Отправить сообщение

Кадры решают все

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


Учиться или не учиться? — вот в чем вопрос.
Как ни странно, ответ на него зависит от вашего личного взгляда на экономику. Не претендую на истину в последней инстанции, просто хотелось разобраться и внести некоторую ясность.
Читать дальше →
Всего голосов 189: ↑129 и ↓60+69
Комментарии105

Использование Lua скриптов в .NET с LuaInterface

Время на прочтение4 мин
Количество просмотров39K
Привет, Хабрахабр!

Этот небольшой пост родился после того, как я решил узнать, как можно запускать скрипты Lua совместно с игрой на C# (либо на другом .NET-языке). с использованием библиотеки LuaInterface. Я был впечатлен легкостью этого интерфейса по сравнению с lua.h на C++

image

Что нужно знать


C# на приличном уровне, иметь понятие об основах программирования, а также о подключении ссылок в проекте на Visual Studio

Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии15

Знакомимся с DynamicObject

Время на прочтение7 мин
Количество просмотров15K
Каждый раз, когда у вас появляется новая интересная фича в языке, всегда появляются люди которые начинают выжимать из фичи максимум. DynamicObject – это как раз такая фича, которая кажется простой и понятной, но в шаловливых ручках становится более опасной затеей.
Читать дальше →
Всего голосов 82: ↑64 и ↓18+46
Комментарии35

Страсть к программированию. Глава 21. Ежедневное достижение

Время на прочтение3 мин
Количество просмотров27K
О переводе


image

Это перевод 21 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференциях, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.

Автор перевода этой главы — shchemelevev. Краудсорсинговый перевод книги ведётся на github, присоединяйтесь.

Содержание



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

Но каждый из нас может добиться большего, используя, планируя и анализируя свои достижения. Если же кому-то будет удаваться регулярно удивлять и превосходить ожидания руководства, то он, очевидно, может стать следующим кандидатом на повышение. Превосходить ожидания — достойная цель, но совсем немногие действительно отдают отчет своим действиям на пути к ее достижению.
Читать дальше →
Всего голосов 49: ↑46 и ↓3+43
Комментарии4

OpenCL под C# это просто

Время на прочтение8 мин
Количество просмотров44K
Хотя технология OpenCL появилась ещё в 2008 году, большого распространения она не получила до сих пор. Плюсы технологии несомненны: ускорение вычислений, кроссплатформенность, способность исполнять код как под GPU, так и под CPU, поддержка стандарта целым рядом компаний: Apple, AMD, Intel, nVidia и некоторыми другими. Минусов не так много, но и они есть: более медленная работа на nVidia, чем через CUDA, сложность использования. Первый из минусов влияет только при серьёзной разработке, где скорость программы важнее кроссплатформенности. Второй и является основным препятствием на пути разработчиков, делающих выбор в пользу того или иного метода разработки. Чтобы разобраться в куче хэдэров, драйверов и стандартов требуется куча времени. Но не всё так плохо. Темой этой статьи будет короткий guide по тому, как наиболее простым способом можно запустить OpenCL под C# и получить удовольствие от параллельного программирования.

Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии7

.NET и паттерны проектирования

Время на прочтение8 мин
Количество просмотров162K
Шаблон проектирования или паттерн — повторимая архитектурная конструкция, представляющая собой решение проблемы проектирования в рамках некоторого часто возникающего контекста.

Кажется, это определение мы слышали тысячу раз… Помимо знания терминов и паттернов интересно знать, как они применяются в реальных проектах.

В статье я рассмотрю несколько наиболее популярных паттернов используемых в .NET. Некоторые из них глубоко интегрированы в инфраструктуру .NET, в то время как другие просто применяются при проектировании базовых классов в BCL.

Паттернам проектирования посвящен не один десяток книг, но одна книга стоит особняком и это знаменитая книга «Банды четырех». Поэтому для большего понимания ситуации я буду приводить небольшое описание из этой книги.
Читать дальше →
Всего голосов 59: ↑40 и ↓19+21
Комментарии6

Введение в оптимизацию. Имитация отжига

Время на прочтение10 мин
Количество просмотров186K
В этой статье я постараюсь максимально доходчиво рассказать о таком простом, но эффективном методе оптимизации, как имитация отжига (simulated annealing). А чтобы не быть причисленным к далёким от практики любителям теоретизировать, я покажу как применить этот метод для решения задачи коммивояжёра.

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

image


Читать дальше →
Всего голосов 148: ↑138 и ↓10+128
Комментарии37

Универсальный код C# под .NET и JavaScript

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

Введение


Приветствую вас, хабравчане. В данном топике я хотел бы осветить подробности разработки на C# под разнородные целевые платформы, в первую очередь такие как .NET и браузер (JavaScript). В качестве примера желающие могут изучить веб-сервис по обработке фотографий gfranq.com, в котором реализована клиентская и серверная обработка фотографий с помощью фильтров, а также функциональность коллажей на основе материала, описанного в данной статье.

Так как я не умею подбирать картинки для привлечения внимания, то она будет по теме:


Технические подробности под катом
Всего голосов 57: ↑53 и ↓4+49
Комментарии20

Профилирование приложений в Visual Studio 2010

Время на прочтение6 мин
Количество просмотров47K
Сегодня мы будем замерять производительность нашего приложения с помощью Visual Studio Profiling Tool.

Visual Studio Profiling Tool позволяет разработчикам измерять, оценивать производительность приложения и кода. Эти инструменты полностью встроены в IDE, чтобы предоставить разработчику беспрерывный контроль.
В этом руководстве мы по шагам профилируем приложение PeopleTrax используя Sampling и Instrumentation методы профилирования, чтобы выявить проблемы в производительности приложения.

image

Много картинок.
Читать дальше →
Всего голосов 63: ↑48 и ↓15+33
Комментарии24

Генерируем на .Net

Время на прочтение12 мин
Количество просмотров27K
Генерировать код на .Net можно несколькими способами:
  • Reflection Emit. Доступен с версии .Net 1.0.
  • CodeDom. Позволяет создавать динамический код из представления CodeDom или напрямую из исходников, написанных на одном из высокоуровневых языков, например C#, VB или JScript. Доступен с версии .Net 1.0.
  • Expression trees. Доступен с версии .Net 3.5. Позволяет создавать динамический код из представления Expression.

В этой статье я хочу рассказать про технику кодогенерации с использованием Reflection Emit.
Подробности под катом
Всего голосов 33: ↑28 и ↓5+23
Комментарии16

Несколько вопросов по .NET и C#

Время на прочтение1 мин
Количество просмотров58K
Я думаю многие из вас захотят проверить свои знания по C# и .NET
Под катом вы найдете интересные вопросы, представленные в виде голосования.

Проведем исследование: насколько хорошо хабраюзеры знают платформу .NET и C#?



UPG Прием ответов завершен 12 марта 2013 в 21:00.
Ответы с разбором

Прошу под кат.
Читать дальше →
Всего голосов 54: ↑39 и ↓15+24
Комментарии41

Слабые события в C#

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

От переводчика


Недавно в проекте, где я работаю, мы столкнулись с проблемой утечки памяти. Прочитав множество статей — от рассказов по управлению памятью в .NET до практических рекомендаций по правильному освобождению ресурсов, я в том числе наткнулся на статью, в которой рассказывается, как корректно использовать события. Ее перевод я и хочу вам представить.
Это топик из песочницы, с которым я попал сюда на Хабр.

Читать дальше →
Всего голосов 93: ↑76 и ↓17+59
Комментарии18

Расширение возможностей Unity

Время на прочтение7 мин
Количество просмотров9K
В этом посте я покажу пример того, как можно расширить стандартные возможности IoC-контейнера Unity. Покажу как создается объект в Unity «изнутри». Расскажу про Unity Extensions, Strategies & Policies.

Допустим в нашем приложении есть компонент Persistence, который отвечает за сохранении объектов. Он описывается интерфейсом IPersistence и имеет реализации — FilePersistence, DbPersistence, WsPersistence, InMemoryPersistence.

В классическом варианте мы в начале приложения регистрируем нужную реализацию в Unity и далее, вызывая Resolve для IPersistence, всегда получаем ее.
IUnityContainer uc = new UnityContainer();

uc.RegisterType<IPersistence, FilePersistence>();
IPersistence p = uc.Resolve<IPersistence>();
p.Add(obj);


* This source code was highlighted with Source Code Highlighter.


Но что делать, если необходимая реализация может меняться в процессе работы приложения. Например она задается в конфиг-файле, или при недоступности сети надо автоматически использовать FilePersistence?
Читать дальше →
Всего голосов 55: ↑33 и ↓22+11
Комментарии11

Unity3d. Уроки от Unity 3D Student (B13-B16)

Время на прочтение5 мин
Количество просмотров121K
Предыдущие уроки вы можете найти по следующим ссылкам:
Уроки B01-B03
Уроки B04-B08
Уроки B09-B12

PS: Так же исправленны некоторые ошибки в предыдущих уроках, большое спасибо хабравчанинам ufomesh и MikhailS.

Перейти к урокам
Всего голосов 14: ↑12 и ↓2+10
Комментарии7

Unity3d. Уроки от Unity 3D Student (B09-B12)

Время на прочтение6 мин
Количество просмотров102K
Добрый день.

Предыдущие уроки вы можете найти по следующим ссылкам:
Уроки B01-B03
Уроки B04-B08

Перейти к урокам
Всего голосов 24: ↑20 и ↓4+16
Комментарии6

Unity Character Animation GDC 2012 Feature Preview

Время на прочтение2 мин
Количество просмотров3.6K
Пока идет процесс подготовки переводов следующей партии уроков от unity3dstudent, хочу поделиться новостью.
На прошедшем CDG для Unity3d была анонсирована новая система работы с анимацией и системой ввода.
Ознакомиться c ней можно посмотрев видео.
Подробнее
Всего голосов 7: ↑6 и ↓1+5
Комментарии5

Unity3d. Уроки от Unity 3D Student (B04-B08)

Время на прочтение7 мин
Количество просмотров137K
Добрый день.

Предыдущие уроки вы можете найти в соответствующем топике.

Теперь в каждом посте в скобках (в конце) будут указываться номера уроков. Буква в начале номера обозначает раздел (B-Beginner, I — Intermediate).

PS: Если вы не проходили предыдущие уроки, очень рекомендую их пройти, т.к. последующие изредка на них ссылаются.

Перейти к урокам
Всего голосов 28: ↑24 и ↓4+20
Комментарии19

Tiling в 2D-играх на Unity, масштабирование материала

Время на прочтение4 мин
Количество просмотров17K
При разработке 2D-игр на Unity часто возникает необходимость делать множество элементов различного размера из одного и того же материала. Самый простой пример – тайлы земли, травы, каменей и прочие элементы во всякого рода платформерах. Как правило, одинаковые тайлы по умолчанию используют один и тот же материал (в противном случае кол-во заранее созаднных материалов было бы чересчур большим). Часто делать каркас уровня из элементарных тайлов может быть неудобно из-за слишком большого кол-ва объектов на уровне, поэтому вместо элементарных тайлов используются большие тайлы – те же тайлы, только увеличенного масштаба. Допустим, нам надо поверх земли «посадить» два участка травы:

image

Читать дальше →
Всего голосов 35: ↑30 и ↓5+25
Комментарии9

Unity3d. Уроки от Unity 3D Student (B00-B03)

Время на прочтение5 мин
Количество просмотров245K
Добрый день. Предлагаю свой вариант перевода уроков по Unity3d от www.unity3dstudent.com

Введение.


Данная статья представляет из себя первый набор базовых (из раздела Beginner) уроков. Уроки в основном нацелены на изучение скриптинга и использование компонентов.
Поэтому предполагается, что с основами работы в GUI Unity вы слегка знакомы. Если нет, изучите вводный раздел на этом же сайте.
Уроки достаточно ясные и короткие, так что трудностей в процессе их изучения должно возникать минимум.

PS: А хорошо это или плохо — вопрос достаточно сложный.

В некоторых местах уроков есть минимальные косметические изменения, не затрагивающие основную суть.

Перейти к урокам
Всего голосов 54: ↑53 и ↓1+52
Комментарии9

2d на Unity3d

Время на прочтение14 мин
Количество просмотров219K
В свое время, в начале разработки двухмерной игры на Unity3d, мне пришлось перерыть кучу документации, сайтов, проштудировать answers.unity3d.com и forum.unity3d.com на тему: как сделать 2d-игру на этом 3d-движке. Самыми первыми вопросами были: как правильно настроить камеру, как сделать 2d-спрайт так, чтобы он отображал текстуру «пиксель в пиксель». На то время уже существовал SpriteManager (далее – SM) и даже SM2 с его мощной поддержкой редактора. Судьба сложилась так, что я не мог его тогда купить, да и пробной версии не было. В итоге, мне пришлось самому написать несколько полезных скриптов для реализации 2d на Unity3d. О том, как это сделать, пойдет речь в этой статье.

"
Читать дальше →
Всего голосов 67: ↑63 и ↓4+59
Комментарии22

Информация

В рейтинге
Не участвует
Откуда
Новочеркасск, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность