Архив за 21 октября 2012

Надоело… Накипело и надоело. Не знаю как высказаться и поймёте ли вы о чём я, но всё же, не судите строго.
За всё что только не возьмись — всё хорошо, но «не совсем». Я не имею большого опыта, можно сказать, — junior — 1 год. Увлёкся программированием, а именно C++ — программированием. Да-да, именно «C++ — программирование». И с этого всё началось. Сначала чтение много чего, чтение днём и ночью: начиная с «C++ за 21 день» или чего-то в этом духе, заканчивая бандой четырёх и их модными паттернами.
Первое что приходило в голову — «Нет ничего сложного и когда говорят, что C++ сложный и запутанный — слишком сильно преувеличивают». Ну подумаешь, множественное наследование и проблема с неоднозначностью — так всё верно ж — виртуальное наследование, как минимум, тебе в руки. Всё и так давным давно написано умными людьми — осталось просто почитать и правильно понять. Что ж тут сложного?
Ага, почитал.
Читать полностью »

Наверное, многие C++-программисты слышали про мультиметоды и знают о том, что по сей день нет для этого языка приемлемой реализации: ни языковой поддержки, ни внешних библиотек. Есть кодогенераторы, выкрутасы через виртуальные методы, частный случай двойной диспетчеризации aka паттерн Посетитель (Visitor). Но ведь хочется просто реализовать несколько функций и указать: этот набор функций — есть мультиметод и точка.

О мультиметодах и некоторых подходах к их библиотечной реализации давно писали Мейерс и Александреску. К сожалению, предлагаемые идеи так и не были развиты до законченного решения.

Я решил попытать счастья, дерзнуть, предложить свое видение этой проблемы и способ ее решения. Получилась шаблонная библиотека на одних только заголовочниках.
Это реализация под стандарт C++03, на чистом C++: без каких-либо кодогенераторов и дополнений. Цель — библиотека с простым и понятным интерфейсом для реализации возможности перегружать функций по типу (и даже по значению) во время выполнения (это была программа минимум, в конечном итоге получилось еще много вкусностей).
Для тест-драйва необходимо скачать исходники, и сделать парочку #include.Читать полностью »

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

Внешний вид

Правильные социальные share кнопкиЧитать полностью »

    В статье ниже я попытаюсь кратко рассказать о том, что такое Tarantool и как начать его использовать в уже существующем проекте если вы программируете на Java. Если же вы программируете на другом языке, то вам могут быть интересны некоторые инструменты доступные в коннекторе, такие как возможность редактирование xlog файлов и создание snap файлов из любых данных.
Читать полностью »

    В статье ниже я попытаюсь кратко рассказать о том, что такое TarantoolBox и как начать его использовать в уже существующем проекте если вы программируете на Java. Если же вы программируете на другом языке, то вам могут быть интересны некоторые инструменты доступные в коннекторе, такие как возможность редактирование xlog файлов и создание snap файлов из любых данных.
Читать полностью »

Компания GIGABYTE подготовила новый планшетный компьютер: десятидюймовый аппарат S1082 под управлением Windows 8 пришел на смену модели S1081. Новинка по желанию заказчика может комплектоваться как HDD объемом 500 ГБ, так и твердотельным накопителем объемом 256 ГБ.

GIGABYTE S1082

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

Наряду с Wintel-планшетом QH55 компания Fujitsu представила в Японии и его старшего брата — QH77. Продажи аппарата стартуют 26 октября, одновременно с выпуском ОС Windows 8, под управлением которой он работает, а предположительная стоимость новинки составляет $2000.

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

1. Особенности работы с переменными и литералами в Perl6
2. Perl6 — Операции над переменными, анонимные блоки
3. Perl6 — Условные операторы, циклы
4. Perl6 — Работа с функциями

Последние несколько дней я читал раздел по работе с объектами в Perl6. К сожалению я так и не смог понять некоторые моменты, и надеюсь что те кто уже смог их понять подскажут, в чем же дело. Как и раньше, все описанные возможности будут сопровождаться небольшими экспериментами или примерами, чтобы пояснить как это работает, или как нужно использовать.
Приступим:
Читать полностью »

Карты и навигация в последнее время не исчезают из фокуса внимания IT-общественности. С тех пор, как веб стал социальным, навигация оказалась одним из его столпов, на который опираются многочисленные сервисы и приложения. Сегодня мы расскажем немного о том, как мы собираем данные для наших карт – maps.nokia.com.

Как мы собираем данные для Nokia Maps

Картография, известная каждому с детских атласов наука, возраст которой – более 5 тысяч лет, в связке с компьютерами оказывается самым передовым рубежом совмещенных реальностей, превращением нашего мира в базы данных, пригодные для обработки. Самая прекрасная часть в создании карт состоит в том, что индексация физического мира по-прежнему требует от людей разъездов на автомобилях и обработки собранного материала за компьютером.
Читать полностью »

Карты и навигация в последнее время не исчезают из фокуса внимания IT-общественности. С тех пор, как веб стал социальным, навигация оказалась одним из его столпов, на который опираются многочисленные сервисы и приложения. Сегодня мы расскажем немного о том, как мы собираем данные для наших карт – maps.nokia.com.

Как мы собираем данные для Nokia Maps?

Картография, известная каждому с детских атласов наука, возраст которой – более 5 тысяч лет, в связке с компьютерами оказывается самым передовым рубежом совмещенных реальностей, превращением нашего мира в базы данных, пригодные для обработки. Самая прекрасная часть в создании карт состоит в том, что индексация физического мира по-прежнему требует от людей разъездов на автомобилях и обработки собранного материала за компьютером.
Читать полностью »