Pull to refresh
59
0

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

Send message

Восстановление приложения при запуске со стартового экрана без потери предыдущего состояния в WP8

Reading time3 min
Views9K
Windows Phone 8 принесла такую замечательную возможность, как быстрое возобновление состояния приложения после его перезапуска из списка приложений или через плитку начального экрана с полным сохранением состояния и истории навигации внутри приложения (для возможности последующей навигации используя кнопку Назад так, как если бы приложение никуда и не сворачивалось).

Если вы уже пробовали пользоваться Windows 8 и приложениями из Windows Store, вы, возможно, заметили, что при запуске приложения со стартового экрана вы вернетесь именно к тому месту приложения, на котором вы его оставили. Именно такого результата мы и добьемся в нашем приложении для Windows Phone 8.

Итак, начнем.
Читать дальше →
Total votes 42: ↑36 and ↓6+30
Comments2

Курс по Ruby на Codecademy

Reading time1 min
Views18K
По многочисленным пожеланиям трудящихся учебный портал Codecademy представил курс по языку программирования Ruby.

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

Наиболее интересен курс будет, по-моему, тем, кто начинает изучение Ruby не как очередного языка, а как первого, тем, кто начинает изучать программирования вообще. В частности для тех, кто знаком только с HTML+CSS, но хочет начать разработку приложений на базе фреймворка Ruby on Rails. Понятия «переменная», «объект» и т. п. вводятся по ходу изложения.

Курс на английском, но на простом и понятном даже для меня с моим Soviet English.

Ну и собственно ссылка на курс: www.codecademy.com/ru/tracks/ruby

P.S. НЛО, верни топики-ссылки!
Total votes 30: ↑25 and ↓5+20
Comments6

Работа с данными в WinRT. Часть 1. Хранение настроек и файлов

Reading time8 min
Views13K
В WinRT изменилась работа работа с данными и файловой системой и она немного отличается как от десктопного .NET так и Silverlight.

Для доступа к пользовательским файлам в системе нужны соответствующие разрешения и надо использовать контракты и расширения для работы с файлами (которые будут рассматриваться в отдельной статье). Однако каждое приложение получает доступ к изолированному хранилищу для хранения служебных данных и настроек. Все что необходимо для хранения данных находится в пространстве имен Windows.Storage в объекте ApplicationData.

В этой статье мы рассмотрим работу со следующими объектами:

Хранение простых данных в LocalSettings и RoamingSettings. (Хранение простых данных)

Хранение бинарных данных в LocalFolder, TemporaryFolder, RoamingFolder. (Хранение данных в файловой системе)

Особенности работы с RoamingSettings и RoamingFolder (Хранение данных в облаке. Синхронизация данных между устройствами).

Версионность данных в роуминге.

Прямой доступ к данным через Uri.


В следующей части будет рассматриваться работа с БД.
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments12

Живые тайлы (Live tiles) в Windows 8 (WinRT)

Reading time21 min
Views24K
UI Windows 8 был существенно переработан и появился стартовый экран с тайлами (tiles – далее в скобках буду указывать используемые английские терминологии). Одним из основных преимуществ тайлов перед иконками – это возможность «оживления» (live tile) и предоставления важной для пользователя информации непосредственно на тайле. Кроме того, есть возможность создать вторичные тайлы (secondary tiles), которая позволяет переходить в приложение с определенными параметрами или на страницу вглубь приложения. В качестве примера можно привести погодное приложение отображающее погоду на основном тайле и погоду в выбранных городах на вторичных тайлах.

Правильная и качественная реализация поддержки тайлов может существенно улучшить функциональность вашего приложения и будет побуждать пользователя зайти в приложение, замечая на тайлах что для него произошли изменения.

В этой статье рассмотрим следующие пункты.
подробнее
Total votes 62: ↑55 and ↓7+48
Comments6

Новый курс по разработке под Windows Phone, обновление центра Windows Phone и все-все-все …

Reading time3 min
Views3.9K


Каждый раз, когда я собираюсь писать статью, особенно если она часть курса, я пытаюсь понять, кому она будет нужна и как её будут использовать. И когда коллеги предложили мне взяться за написание небольшого вводного курса по разработке под Windows Phone, первое, что я сделал, я просмотрел все доступные материалы претендующие на роль обучающего курса или книги. Несмотря на то, что платформа Windows Phone достаточно молодая, материалов по ней, как русскоязычных так и англоязычных великое множество.
Читать дальше →
Total votes 77: ↑61 and ↓16+45
Comments14

Карты и гелокационные данные на Windows Phone

Reading time7 min
Views3.8K

Знакомство начнём с элемента управления Map, который предоставляет интерфейс к картам на Windows Phone. Давайте создадим новый проект из шаблона Windows Phone Application и назовём его ExploreMapControl.
Продолжить чтение
Total votes 39: ↑33 and ↓6+27
Comments21

Обновление Windows Phone SDK 7.1.1: 256 Мб устройства и Windows 8

Reading time2 min
Views8.9K
Обновление Windows Phone SDK 7.1.1, позволяющее разрабатывать для устройств с 256 Мб памяти, и под Windows 8, доступно для загрузки.

Поддержка разработки устройств с 256 Мб памяти, позволяет разработчикам уже сейчас начать адаптировать свои приложения для этого типа устройств, предназначеных для массового рынка. С другой стороны, есть возможность указать, что ваше приложение будет работать только на 512 Мб памяти.
Читать дальше →
Total votes 34: ↑28 and ↓6+22
Comments25

Верифицированный QuickSort на Agda

Reading time11 min
Views9.6K
Доброго времени суток, уважаемый хабраюзер!

Прочитав несколько книг по типизированному лямбда исчислению, а именно по зависимым типам, увидел интересную закономерность: везде первым примером приводится определение типа «отсортированный список». Все бы хорошо, но дальше этого определения ничего не было. Вот я и придумал восполнить этот пробел и реализовать функцию, принимающую список, и возвращающую другой список и два доказательства. Одно доказывает, что результат — это перестановка входа, а другое доказывает, что результат — отсортированный список.
Поехали!
Total votes 32: ↑31 and ↓1+30
Comments24

Почему программирование — хороший способ выражения малопонятных и туманно сформулированных идей

Reading time14 min
Views5.7K
В предисловии к первому изданию замечательной книги «Структура и Интерпретация Компьютерных Программ» (SICP) авторов Харольда Абельсона и Джеральда Джей Сассмана, есть цитата из статьи Марвина Минский «Почему программирование — хороший способ выражения малопонятных и туманно сформулированных идей.» Цитата короткая, а полная публикация на русском языке мне не попадалась.
Ниже вы можете ознакомится с переводом этой статьи, и хотя написана она довольно давно, всё равно интересно ознакомится с мыслями такого человека как Марвин Минский, оригинальную статью можно найти здесь.
Читать дальше
Total votes 40: ↑37 and ↓3+34
Comments15

Контракт Settings в WinRT (Windows 8)

Reading time4 min
Views3.6K
Одним из основных контрактов доступных в чудо-панели Windows 8 является контракт Settings.
Активация панели настроек осуществляется соответствующей кнопкой «Settings» в чудо панели:
image

Пользователь всегда может зайти в эту панель для того чтобы управлять настройками приложения. (К примеру отключить возможность определения местоположения).
Довольно логично было бы не заставлять пользователя думать, где искать настройки самого приложения и разместить свои настройки приложения в эту же панель.

В этой статье мы рассмотрим две темы:.
Добавление поддержки контракта Settings
Добавление собственной панели настроек.

Подробности
Total votes 35: ↑28 and ↓7+21
Comments11

Контракт «share» — передача данных в метро приложениях Windows 8

Reading time19 min
Views2.4K
В Windows 8 в метро-приложениях появилась возможность передачи данных (Share) между приложениями. В дальнейшем для простоты в статье буду употреблять термин «шаринг».
В целях безопасности передачей данных управляет сам пользователь и вызывается с боковой панели соответствующей чудо-кнопкой Share
image
или сочетанием клавиш Win + H.

В качестве примера можно привести возможность передачи своего местоположения с карт или понравившуюся фотографию в почтовое приложение или твиттер.

Реализация контракта «шаринг» может стать очень мощным маркетинговым инструментом. Вы можете предоставить возможность поделиться своими достижениями в игре или приложении с друзьями, что может способствовать увеличению популярности вашего приложения.

Здесь я буду употреблять термины приложение-поставщик для приложения которое «расшаривает» данные. И приложение-приемник для приложения который может принять расшаренные данные.
Читать дальше →
Total votes 43: ↑37 and ↓6+31
Comments6

Контракты и расширения Windows 8

Reading time5 min
Views11K
Если вы интересовались разработкой приложений в metro-стиле под Windows 8, вы, наверное, уже знаете, что жизненный цикл этих приложений ближе к жизненному циклу приложений на Windows Phone. Это означает, что приложение, фактически не исполняется, когда пользователь его не видит. Таким образом, возникает вопрос, как приложения могут взаимодействовать друг с другом и системой.

В Windows 8 для приложений в metro-стиле для взаимодействия приложений друг с другом используются контракты, а для взаимодействия с системой – расширения.

Разнообразных контрактов и расширений достаточно много. Написать пост про то, какие контракты и расширения доступны разработчику, меня натолкнула статья Windows 8. Контракт «поиск» в деталях, после которой я решил систематизировать свои знания и собрать в одном месте краткие, буквально в несколько строчек, «how to» по большинству контрактов и расширений, с примерами из Windows SDK Samples.
Подробнее о контрактах и расширениях Windows 8 со ссылками на примеры
Total votes 48: ↑39 and ↓9+30
Comments8

Заглавные и строчные буквы

Reading time3 min
Views46K
Я собрал здесь некоторые не очень очевидные факты о заглавных и строчных буквах, с которыми может столкнуться программист в работе. Многие из вас переводили строки во «все заглавные» (uppercase), «все строчные» (lowercase), «первую заглавную, а остальные строчные» (titlecase). Ещё более популярна операция сравнения без учёта регистра. В мировом масштабе такие операции могут быть весьма нетривиальны. Пост построен в виде «сборника заблуждений» с контрпримерами.

1. Если я переведу строку в uppercase или lowercase, число Unicode-символов не изменится.

Нет. В тексте могут попасться строчные лигатуры, которым не соответствует один символ в верхнем регистре. Например, при переводе в uppercase: fi (U+FB00) -> FI (U+0046, U+0049)

2. Лигатуры — изврат, ими никто не пользуется. Если их не учитывать, то я прав.

Нет. Некоторым буквам с диакритикой нет точного соответствия в другом регистре, поэтому приходится использовать комбинированный символ. Скажем, в языке африкаанс есть буква ʼn (U+0149). В верхнем регистре ей соответствует комбинация из двух символов: ʼN (U+02BC, U+004E). Если вам попадётся транслитерация арабского текста, вы можете столкнуться с (U+1E96), которой в верхнем регистре также нет односимвольного соответствия, поэтому придётся заменять на (U+0048, U+0331). В ваханском языке есть буква (U+01F0) с аналогичной проблемой. Вы можете возразить, что это экзотика, однако на африкаанс в википедии 23000 статей.

3. Ну хорошо, но давайте считать комбинированный символ (с участием modifying или combining code points) одним символом. Тогда длина всё же сохранится.

Нет. Есть, например, в немецком языке буква «эсцет» ß (U+00DF). При переводе в верхний регистр, она превращается в два символа SS (U+0053, U+0053).
Читать дальше →
Total votes 171: ↑169 and ↓2+167
Comments66

Безработный геймдизайнер сделал модель Солнечной системы на движке Unreal

Reading time1 min
Views25K


Канадский разработчик игр с семилетнем стажем Кристофер Альделун (Christopher Albeluhn) потерял работу, но не оптимизм. В свободное время он начал делать проект, который должен был усилить его портфолио — модель Земли на игровом движке Unreal.

Но затем его понесло: сначала появилась Луна, потом Солнце, другие планеты Солнечной системы, их спутники, пояс астероидов, гравитационное поле с геометрией пространства-времени, и напоследок Кристофер не удержался и добавил все существующие 88 созвездий. В итоге через пару месяцев работы это вылилось в потрясающе красивую модель Солнечной системы. Хотя работа ещё не закончена, сосед Кристофера по комнате втайне выложил видеоролик на Youtube, и тот оказался неожиданно популярным, собрав за сутки 50 тыс. просмотров.
Читать дальше →
Total votes 122: ↑113 and ↓9+104
Comments78

Восстановление расфокусированных и смазанных изображений

Reading time10 min
Views219K
Восстановление искаженных изображений является одной из наиболее интересных и важных проблем в задачах обработки изображений – как с теоретической, так и с практической точек зрения. Частными случаями являются размытие из-за неправильного фокуса и смаз – эти дефекты, с которым каждый из вас хорошо знаком, очень сложны в исправлении – именно они и выбраны темой статьи. С остальными искажениями (шум, неправильная экспозиция, дисторсия) человечество научилось эффективно бороться, соответствующие инструменты есть в каждом уважающем себя фоторедакторе.

Почему же для устранения смаза и расфокусировки практически ничего нету (unsharp mask не в счет) – может быть это в принципе невозможно? На самом деле возможно – соответствующий математический аппарат начал разрабатываться примерно 70 лет назад, но, как и для многих других алгоритмов обработки изображений, все это нашло широкое применение только в недавнее время. Вот, в качестве демонстрации вау-эффекта, пара картинок:



Я не стал использовать замученную Лену, а нашел свою фотку Венеции. Правое изображение честно получено из левого, причем без использования ухищрений типа 48-битного формата (в этом случае будет 100% восстановление исходного изображения) – слева самый обычный PNG, размытый искусственно. Результат впечатляет… но на практике не все так просто. Под катом подробный обзор теории и практические результаты.
Осторожно, много картинок в формате PNG!
Читать дальше →
Total votes 291: ↑289 and ↓2+287
Comments93

Уведомление о скачанных торрентах по SMS

Reading time3 min
Views3.3K
imageКак то вечером, ожидая загрузку любимых LOST и Breaking Bad, захотелось прогуляться по теплому вечернему Минску в сторону парка Горького. Но вот незадача, примерное время скачивания торрента прыгает то вверх, то вниз, объективный прогноз дождаться явно не получится.
Тут и пришла в голову, на мой взгляд, неплохая идея — почему бы не сделать уведомление о скачавшемся торренте по смске? Можно тогда вообще не заморачиваться томительным ожиданием и делать свои дела. :)

Вот что из этого получилось…
Читать дальше →
Total votes 128: ↑106 and ↓22+84
Comments64

Использование Skype API в С++

Reading time3 min
Views23K
Не так давно понадобилась написать приложение которое бы автоматически отправляло сообщение по Skype определенному пользователю, который есть в списке контактов. Задача была не много сложнее, но дело не в этом. Решил написать маленькую статейку по использованию Skype API.
Читать дальше →
Total votes 45: ↑41 and ↓4+37
Comments20

Где программе хранить свои настройки?

Reading time2 min
Views32K
Есть программа, которая должна сохранять и загружать некоторые настройки: позицию и размер главного окна программы, идентификатор выбранного языка, время последней проверки обновления. Я задался вопросом — где программа должна хранить свои настройки? Решил собрать информацию на эту тему и поделится ею с вами.

Возможные папки, для хранения настроек и файлов программы:
  • Program Files
  • My Documents
  • User\Application Data
  • User\Local Settings\Application Data
  • All Users\Application data
Читать дальше →
Total votes 117: ↑92 and ↓25+67
Comments286

Пишем свой плагин для Windows Media Center. Часть 1

Reading time3 min
Views2.4K
Здравствуй, хабра-сообщество!

Небольшое лирическое отступление


В этот замечательный день всех тех, кому не безразличны такие слова как разработка, код, компиляция и отладка, тех кто в данный момент набирает свою юбилейную 100 миллионную строку кода и тех у кого успешно скомпилировался и запустился первый в жизни «Hello, World!» хочу поздравить с профессиональным праздником. Желаю вам поменьше багов, быстрых компиляторов, взаимопонимания с дебаггером и самое главное, чтобы рядом были люди способные по-достоинству оценить Ваш труд!

А теперь — начнем


Недавно я начал писать свое приложение под WMC.
Заниматься переводом и цитированием SDK скучно и не интересно.
Поэтому сегодня я опишу пошагово создание простого плагина.
Давайте попробуем написать простенькие аналоговые часы.
Продолжить путешествие в волшебный мир MCML...
Total votes 48: ↑31 and ↓17+14
Comments9

Эпидемия «умного червя» под WordPress

Reading time1 min
Views725
Месяц назад стало известно о новой критической уязвимости в WordPress 2.8.3, позволяющей легко изменить администраторский пароль в удалённом режиме. Сразу же вышел WordPress 2.8.4, устраняющий эту уязвимость. Как оказалось, далеко не все блогеры следят за апдейтами.

В этот уикенд разразилась настоящая эпидемия нового вируса, поражающего блоги на движке WordPress 2.8.3 и более ранних версий в ветке 2.8. Червь регистрируется в блоге, запускает вредоносный код через структуру permalink и делает себя вторым админом, потом запускает скрипт для стирания себя со страницы юзеров и начинает втихую добавлять спам и ссылки на вредоносный контент в архивные топики.

Присутствие вредителя довольно сложно обнаружить сразу, тем более если он ещё ничего не опубликовал. Для этого нужно проверить фид permalinks/rss на присутствие нижеследующего кода.
Читать дальше →
Total votes 65: ↑60 and ↓5+55
Comments56

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity