Pull to refresh
55
Andrew @vanfukovread⁠-⁠only

User

Send message

Три возраста паттерна Singleton

Reading time5 min
Views96K
Паттерн Singleton появился, пожалуй, как только появились статичные объекты. В Smalltalk-80 так был сделан ChangeSet, а чуть в самых разных библиотеках стали появляться сессии, статусы и тому подобные объекты, которых объединяло одно — они должны были быть одни-единственные на всю программу.

В 1994 году вышла известная книга «Паттерны проектирования», представив публике, среди 22-х прочих, и нашего героя, которого теперь назвали Singleton. Была там и его реализация на C++, вот такая:
Читать дальше →

Indie Game: The Movie

Reading time1 min
Views28K
Если честно, я удивлен, что до сих пор, на хабре, никто так и не заметил релиза этого замечательного фильма. Который состоялся почти месяц назад, 12 июня. А кто не слышал о нем, я, пожалуй, немножко расскажу:



Indie Game: The Movie — документальный фильм, рассказывающий о нелегкой судьбе разработчиков самых популярных инди-игр Braid, Super Meat Boy и Fez. Фильм о разработчиках, пожертвовавших своими деньгами, здоровьем и рассудком, что бы воплотить в жизнь свои мечты и поделиться своим творческим видением со всем миром. Однозначно стоит посмотреть, даже тем, кто не связан с разработкой игр, т.к. очень мотивирует!
Под катом трейлер и ссылки на полную версию

Ложь, большая ложь и антивирусы. Часть первая. «А они первыми начали!»

Reading time3 min
Views6.2K
Этой статьёй я начинаю серию, посвящённую некоторым аспектам так называемой «антивирусной индустрии», которые, надеюсь, будут интересны не только мне одному.

Вот уже в который раз нас пугают страшилками в стиле «очередной вирус разошёлся по миру миллионными тиражами. Мы все погибнем!». Вот только, читая очередной бодрый пресс-релиз очередного производителя очередного антивирусного средства, недоумеваешь. Как же так? Нас так надёжно защищают, столь всесторонне: тут и сигнатуры, и эвристик, и даже– писк сезона– поведенческий блокиратор. Тогда какого … люди продолжают заражаться? Откуда эпидемии? Действительно ли современные антивирусные средства эффективны?

Читать дальше →

Windows 8. Контракт «поиск» в деталях

Reading time8 min
Views3.5K
Поиск внутри приложений одна из новых, наиболее важных и интересных функций Windows 8. Поиск предоставляет возможность искать не только файлы и документы на устройстве, но также позволяет искать внутри установленных приложений.

В этой статье рассматривается:
1. Интеграция поиска в метро приложение
2. Контекстные подсказки (suggestions).
3. Обработка запроса по мере ввода данных.
4. Неосторожное использование контракта поиска (обычные ошибки интеграции).
Читать дальше →

Арифмометр Brunsviga Nova, 1935 года — обзор и демонстрация работы механического калькулятора

Reading time1 min
Views51K
image

В продолжении "Технохроники" на канале GTV предлагаем посмотреть сюжет с обзором и демонстрацией работы механического калькулятора — Brunsviga Nova ZG 13. Этот немецкий арифмометр поступил в производство в 1935 году и был предназначен для облегчения процесса бухгалтерского учета.

image image

image image

Видео под катом.
Читать дальше →

Эффективная веб-разработка c Visual Studio 2012: Page Inspector

Reading time4 min
Views16K

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

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

Чтобы адресовать эту проблему в Visual Studio 2012 добавлен новый инструмент Page Inspector, который позволяет исследовать веб-страницы вашего проекта не просто в виде результирующей разметки на стороне клиента, как это делают Internet Explorer Developer Tool или Firebug, но с привязкой к коду на стороне сервера, который эту разметку генерирует.
Читать дальше →

Погружаемся в глубины C# dynamic

Reading time5 min
Views77K
Одним из наиболее заметных дополнений в C# 4 является dynamic. Об этом рассказано много и не раз. Но всегда выпускается из виду DLR (Dynamic Language Runtime). В данной статье мы рассмотрим внутреннее устройство DLR, работу самого компилятора, а также дадим определение понятиям статически-, динамически- типизированный язык со слабой и сильной типизациями. И, конечно же, не останется без внимания техника PIC (Polymorphic Inline Cache), используемая, например, в Google V8 engine.
Читать дальше →

Ремонтируем монитор содой!

Reading time2 min
Views151K
В последнее время, как мне кажется, пластиковые рудники на грани истощения. Чем больше и тяжелее монитор, тем меньше и тоньше подставка. Так 23'' монитор Samsung постигла участь одуванчика. Случайно наткнулся, в одной из местных news групп, на способ восстановления пластика при помощи пищевой соды. Под катом ремонт стойки монитора.
Далее...

SQL Server 2012 — что нового для разработчика?

Reading time3 min
Views38K
1 апреля 2012 г. стала доступна финальная версия Microsoft SQL Server 2012.
В новой версии появилось большое количество нововведений.
В данной статье я хотел бы подробнее остановиться на обзоре ряда новшеств для разработчика баз данных.
Читать дальше →

+1 расширение для Opera

Reading time1 min
Views15K
Всем привет!

Несколько дней назад Shaida создал пост под названием +1 расширение для Google Chrome, где каждый мог посоветовать расширение, которое ему когда-либо пригодилось. Потом инициативу перенял krovatti с постом +1 расширение для Mozilla Firefox. Я думаю, в таком случае не стоит обходить вниманием и Оперу, особенно в свете грядущих нововведений 12 версии.

Принимаю эстафету.
Читать дальше →

+1 расширение для Mozilla Firefox

Reading time1 min
Views9.2K
Доброго времени суток!

Несколько дней назад Shaida создал пост под названием +1 расширение для Google Chrome, где каждый мог посоветовать расширение, которое ему когда-либо пригодилось. Пора пользователям огнелиса дать свой ответ. Итак, я начну!
Читать дальше →

Непутевые заметки о ASP.NET MVC. Часть 1 (и единственная)

Reading time11 min
Views41K
В последнее время на Хабре часто начали появляться статьи о ASP.NET MVC. Однако в этой статье я бы хотел сделать несколько заметок по поводу построения приложений на вышеприведенном фреймворке: минимальный набор NuGet-packages (без которых грех начинать работу), логирование, подводные камни при использовании стандартных membership-, profile- провайдеров. И, напоследок, почему Web API из MVC 4 — то, что так долго мы все ждали.
Поехали

Как правильно сортировать контент на основе оценок пользователей

Reading time5 min
Views93K


В оригинале название звучит как «How Not To Sort By Average Rating». Я подумал, что дословный перевод «Как не сортировать по усреднённому рейтингу» будет малопонятен и хуже отражает содержание статьи.

Постановка проблемы


Вы занимаетесь веб программированием. У вас есть пользователи, которые оценивают контент на вашем сайте. Вы хотите разместить высоко оцененный контент наверху, а низко оцененный — внизу. Для этого на основе пользовательских оценок вам нужно вычислить некий «рейтинг».

Неправильное решение №1

Рейтинг= (Число положительных оценок) - (Число отрицательных оценок)

Читать дальше →

Android портирован на C#

Reading time1 min
Views32K
В разгар битвы между Oracle и Google за право использовать Java/Dalvik в системе Android, компания Xamarin представила альтернативу — более производительную и энергоэффективную версию Android на С#. Тесты производительности говорят сами за себя.



В отличие от Sun и языка Java, компания Microsoft направила C# и .NET VM для стандартизации в ECMA, система защищена от патентных исков строгими требованиями ISO, а также обязательством Microsoft.
Читать дальше →

Очередная схватка с веб-вирусами

Reading time6 min
Views3.3K
Доброго времени суток, уважаемые хабрапользователи. Наконец-то у меня появился ещё один клиент позволивший на условиях анонимности описать решение его проблемы. Под катом рассказ о том, как происходила борьба с вредоносным кодом, появляющемся на сайтах заказчика несколькими путями одновременно. В связи с тем, что статьи большого объёма много кому не нравятся, в этот раз я постарался изложить всё как можно короче.
Читать дальше →

APRX клиент в радиолюбительскую APRS на базе D-Link Dir-620

Reading time2 min
Views6.4K
Приветствую всех! Отдельная благодарность тем, кто попросил меня осветить этот вопрос.
Планирую сделать несколько статей, посвященных APRS, в котором рассмотрим:
1) Установку стационарных клиентов (а возможно даже и попробуем сделать свой локальный сервер) на базе ОС Windows, Linux;
2) Подключение радиостанции;
3) Установку мобильного клиента.

В сегодняшней статье (проба пера) рассмотрим установку легкого клиента на роутер Dir-620…
Итак, что такое APRS?
Читать дальше →

Динамическая загрузка, эксплуатация и выгрузка сборок в .NET

Reading time4 min
Views13K
Довольно часто перед разработчиком встаёт вопрос о расширении основного алгоритма однотипными задачами. Например, агрегаторы различных сервисов, которые предоставляют единый интерфейс пользователю, делая запросы сотне-другой поставщиков услуг. Задача стоит таким образом, чтобы основное ядро могло динамически загружать сборки с различными реализациями некоторого интерфейса. Никакой непосильной работы для программиста .NET здесь изначально не предвидится. Если термин «отражение» Вам известен, Вы вероятно уже хотите пройти мимо? Но в этом топике речь пойдёт не про отражение как таковое… я расскажу как это сделать наиболее «чисто». Т.е. с одним нюансом — исследуемые сборки нужно выгрузить после их эксплуатации.
Читать дальше →

LINQ to Objects на языке C++

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



Читать дальше →

CXXI: Мост между мирами C# и C++

Reading time7 min
Views42K
В рантайме Mono есть немало средств для взаимодействия с кодом на не .NET языках, но никогда не было ничего вменяемого для взаимодействия с кодом на C++.

Но это вскоре изменится благодаря работе Алекса Коррадо, Андрэа Гайта и Зольтана Варга.

Вкратце, новая технология позволяет разработчикам C#/.NET:

  • Легко и прозрачно использовать классы C++ из C# или любого иного .NET языка
  • Создавать экземпляры классов C++ из C#
  • Вызывать методы классов C++ из кода на C#
  • Вызывать инлайн-методы C++ из кода на C# (при условии, что библиотека скомпилирована с флагом -fkeep-inline-functions или если вы скомпилируете дополнительную библиотеку с их реализациями)
  • Наследовать классы C++ из C#
  • Переопределять виртуальные методы классов C++ методами на C#
  • Использовать экземпляры таких смешанных C++/C# классов как в коде на C#, так и в коде на C++

Читать дальше →

Видеоматериалы, блоги и подкасты для .NET разработчика

Reading time5 min
Views17K
Видеоматериалы


В одной из своих статей Бьёрн Страуструп (папа С++) признался, что он не признает видео материалы в качестве источника для самообразования. И с ним сложно не согласиться, когда речь касается изучения с нуля языка программирования или технологии. Я правда сомневаюсь, что можно одолеть такого монстра, как С++ или стать гуру WPF лежа на диване и просматривая обучающее видео типа «Узнай все за 24 часа». Но если вы ставите себе цель познакомиться с некоторой технологией или новой возможностью языка программирования, или просто послушать философско-компьютерные размышления умного товарища, то в этом случае веб-касты, записи конференций или другой вид видеоматериалов может быть очень кстати.
Читать дальше →

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity