Как стать автором
Обновить
0
0

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

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

Coin Keeper. iPhone приложение на C#

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

Вчера разработанное нами приложение Coin Keeper заняло третье место в топе платных приложений русского AppStore.

Интересно то, что мы разрабатывали его не на привычном Objective C, а на C#, используя фреймворки Monotouch и Monodroid.

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

технические подробности проекта...

MVC в Objective-C или калькулятор для iOS 5

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

Предыстория


Воодушевившись тем, что в недавном времени затарился i девайсами решил научится таки под них программировать. Конечно, в выбранном мной пути web разработчика это мало чем поможет, но мне всегда были интересны новые языки.

Первое на что упал мой взгляд- это виртуальная школа iTunesU. Здесь я нашел лекции курса CS 193P которые ведут разработчики эпл для студентов Стэнфордского университета. Лекции достаточно хорошо охватывают базовые особенности языка и нативных фрэймворков, однако есть одно НО– лекции на английском и никакого перевода к ним нету. Для меня лично проблем это не вызвало, потому что Aple по всей видимости выбирает на эти лекции только кандидатов с хорошо поставленной речью, и прожитые в США 8 месяцев дали мне возможность смотреть лекции в оригинале и учится у «носителей языка» (шучу-шуткую).

Так как каждый год выходит новая версия Xcode, а лекции стэнфорда в которых рассматривается именно текущая версия становятся доступны с опозданием в семестр, я решил написать серию статей, которые будут идти по практической части (!) данного курса. Так как я слушал лекции осени 2010 для меня будет практическт полезным написать программу в xcode 4.2 который был изначально разработан под 3ю версию. Здесь я не буду углублятся в особенности ObjC а буду давать голую практику.
Читать дальше →

Как делалось iPhone-приложение для ServerClub

Время на прочтение5 мин
Количество просмотров1.8K
В преддверии осени я завершил разработку iPhone-приложения для хостинга ServerClub.com. Теперь выдалась свободная минутка, и мне хотелось бы воспользоваться ею, чтобы поделиться с Хабрасообществом некоторыми усвоенными в ходе проекта уроками, а также поведать о «граблях», которые встретились на пути.

Итак, началось все с того, что в HQ компании ServerClub.com, предоставляющей в аренду серверы и сопутствующий сервис, родилась идея дополнить веб-сайт мультиплатформенным мобильным клиентом, который предоставлял бы пользователям доступ к их серверам, данным по трафику, датчикам, тикетам, финансам, счетам на оплату, а также позволял бы заказывать серверы прямо из приложения. Вообщем, задумали они повторить весь функционал веб-клиента, переосмыслив и упаковав его в мобильное приложение. Сразу было понятно, что работы предстоит немало, но все же, как это часто бывает, оптимизм переборол разум, и я оценил работу в 1 календарный месяц, по прошествии которого я рассчитывал опубликовать приложение в App Store. Вот только в ходе разработки, согласования и уточнений каждая крупная фича «обросла» еще и мелкими нюансами, на реализацию и полировку которых ушло дополнительное время. Кроме того, неожиданные сюрпризы преподнесли ревьюверы, но обо всем по порядку.
Читать дальше →

Как создать визуальную библиотеку изображений с HTML5 Canvas

Время на прочтение14 мин
Количество просмотров4.6K
Сегодня утром, открыв почту, получил очередную рассылку от Code Project, в которой был описан интересный путь создания галереи изображений при помощи Canvas элемента. Статья показалась достаточно интересной и я решил опубликовать ее перевод
здесь

Обзор свежих материалов, сентябрь 2011

Время на прочтение6 мин
Количество просмотров1.3K
Этот материал продолжает серию ежемесячных обзоров свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-август 2011.

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


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

Обзор свежих материалов, октябрь-ноябрь 2011

Время на прочтение10 мин
Количество просмотров1.8K
Этот материал продолжает серию ежемесячных обзоров свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-сентябрь 2011. В связи с повышенной конференционной активностью этой осенью вышла пауза с публикациями, но дальше такого наплыва мероприятий не будет.



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

Сканируем в 3D с помощью фотоаппарата или 123D Catch

Время на прочтение3 мин
Количество просмотров134K
В современном мире трехмерные технологии стали очень популярны. 3D стремительно и разнообразно входит в жизнь даже обычного человека. Начиная от 3D телевизоров, 3D сканеров и даже принтеров. Хотя последние два устройства в большей степени пока доступны только специалистам. Но технологии не стоят на месте. Появляются трехмерные принтеры стоимостью около $2000, что уже приближает время, когда они появятся, если не у каждого школьника/студента на столе, то как минимум, у каждого инженера или дизайнера. Что касается методов получения трехмерной модели с реального физического объекта, то тут тоже не все однозначно. Требуются наличие либо дорогостоящего лазерного сканера, либо можно попытать счастье с помощью лазерного строительного уровня, веб-камеры и специального программного обеспечения. Наличием всех этих вещей тоже не может похвастаться абсолютно любой человек.
Однако есть очень простой способ “сканировать” объект в 3D модель, используя обычный цифровой фотоаппарат. Как это сделать? Об этом и пойдет речь далее.
Читать дальше →

Работа с PySide

Время на прочтение9 мин
Количество просмотров58K
Этот пост участвует в конкурсе «Умные телефоны за умные посты»


В Сети имеется некоторое количество информации по проекту PySide, но русскоязычной не так много.

Данная статья является попыткой восполнить этот пробел. Далее будет описана сборка проекта, запуск приложений на эмуляторе, пример создания собственной привязки. Некоторые ключевые особенности PySide будут показаны на примерах.
Читать дальше →

Blender 2.6 + Python 3.2 – задействуем устройства ввода в собственной игре

Время на прочтение26 мин
Количество просмотров15K
Прошлый топик, посвященный простейшему способу использования клавиатуры в Блендере с помощью Питона, дал нам только начальные знания об интерфейсе Блендера, а так же принципах работы с Питоном в Блендере.

Однако, если мы хотим разработать полноценную игру, то нам нужно более серьезное решение – современная игровая индустрия предлагает гораздо более широкий выбор устройств ввода, чем одна только клавиатура, а список возможных действий и событий в игре не исчерпывается движением единственного игрового объекта.
В данном топике мы попробуем создать законченную, расширяемую, универсальную систему взаимодействия с устройствами ввода в игре при помощи программирования на Python 3.2 в Blender 2.6.

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

Blender 2.49b + Python 2.6 – используем клавиатуру в своей игре

Время на прочтение5 мин
Количество просмотров6.1K
Blender – свободно распространяемая программа с открытым исходным кодом для создания трехмерной графики и компьютерных игр, которая поддерживает Python в качестве «встроенного» языка программирования.

Python – интерпретируемый язык программирования.

Данный топик пытается укрепить иллюзию, что, обладая минимальными познаниями в Блендере и Питоне, каждый сможет создать свою игру. Из всего, что можно сделать с помощью Питона в Блендере, для начала рассматривается простейшее взаимодействие с клавиатурой. Так же в топике пошагово в скриншотах описаны минимально необходимые методы работы с Блендером: запуск, сохранение сцены, манипуляции с объектом, добавление сенсоров и контроллеров и т. д.
Читать дальше →

Кто создал, кто обновил или пишем своё встраиваемое приложение на django

Время на прочтение4 мин
Количество просмотров12K
Как вы знаете, django очень мощный и гибкий фреймворк. Для него создано огромное количество приложений, как и каких-то личных так и публичных. Приложения могут быть как и достаточно монотонными, так и достаточно гибкими и даже встраиваемыми в другие приложения.
Читать дальше →

Процессор

Время на прочтение8 мин
Количество просмотров155K
Сколько я себя помню, всегда мечтала сделать процессор. Наконец, вчера я его сделала. Не бог весть что: 8 бит, RISC, текущая рабочая частота — 4 кГц, но он работает. Пока что в программе моделирования логических цепей, но все мы знаем: «сегодня — на модели, завтра — на деле!».

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

Как работает yield

Время на прочтение6 мин
Количество просмотров728K
На StackOverflow часто задают вопросы, подробно освещённые в документации. Ценность их в том, что на некоторые из них кто-нибудь даёт ответ, обладающий гораздо большей степенью ясности и наглядности, чем может себе позволить документация. Этот — один из них.

Вот исходный вопрос:
Как используется ключевое слово yield в Python? Что оно делает?

Например, я пытаюсь понять этот код (**):
def _get_child_candidates(self, distance, min_dist, max_dist):
    if self._leftchild and distance - max_dist < self._median:
        yield self._leftchild
    if self._rightchild and distance + max_dist >= self._median:
        yield self._rightchild

Вызывается он так:
result, candidates = list(), [self]
while candidates:
    node = candidates.pop()
    distance = node._get_dist(obj)
    if distance <= max_dist and distance >= min_dist:
        result.extend(node._values)
        candidates.extend(node._get_child_candidates(distance, min_dist, max_dist))
        return result


Что происходит при вызове метода _get_child_candidates? Возвращается список, какой-то элемент? Вызывается ли он снова? Когда последующие вызовы прекращаются?

** Код принадлежит Jochen Schulz (jrschulz), который написал отличную Python-библиотеку для метрических пространств. Вот ссылка на исходники: http://well-adjusted.de/~jrschulz/mspace/

Подробный и обстоятельный ответ
12 ...
54

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность