Всем привет! В этот раз я хочу рассказать, как я реализовывал альтернативу iBooks. В своем предыдущем посте я писал об алгоритме расстановки мягких переносов в тексте. Он как раз и пригодился при создании своей читалки, оценить его работу можно наглядно в приложении. Но помимо этого, при реализации проекта мне пришлось столкнуться с многими другими интересными вещами, такими как парсинг и рендеринг HTML с CSS, реализация элементов управления с кастомным дизайном и т.п. Наш дизайнер rashapasta очень любит подкинуть мне задачек с эдаким нестандартным интерфейсом, который нужно реализовывать ручками, но обо всем по порядку.
Читать полностью »
Рубрика «разработка под iOS» - 209
[recovery mode] Алгоритм Ляна-Кнута в реальном проекте, или как я делал читалку для iOS
2012-05-31 в 7:49, admin, рубрики: iOS, ipad, iphone, ipod touch, mobile development, NeoBook, бесплатные книги, Блог компании «Apps Ministry», книги, разработка под iOS, метки: iOS, iPad, iPhone, iPod touch, NeoBook, бесплатные книги, книгиПара слов о Header Map в XCode
2012-05-29 в 22:05, admin, рубрики: xcode, Программирование, разработка под iOS, метки: xcode Семейство языков Си/Objective C/C++ нуждается в препроцессоре. Препроцессор пропускает компилируемый исходник через себя, прежде чем отдать текст на вход компилятору. Пожалуй самая важная часть работы препроцессора заключается в подстановке на место директив #include<имя-файла> содержимого указанного файла. Обычно указывают относительный путь (ex: stdio.h, sys/stat.h). Возникает закономерный вопрос — как препроцессор находит заголовочные файлы?
Классический ответ такой: препроцессор последовательно перебирает пути в INCLUDE_PATH начиная с первого. Относительный путь из директивы include разрешается относительно (sic) папки из INCLUDE_PATH. Если файл не найден, переходим к следующему элементу INCLUDE_PATH. Если INCLUDE_PATH исчерпан, компилятор сообщает об ошибке.
Но Apple как всегда вносит свои коррективы. При сборке в XCode дополнительно используются т.н. header map. Это индекс всех заголовочных файлов в проекте. Если XCode «знает» про foobar.h, то данный файл будет доступен просто по имени (#include<foobar.h>), вне зависимости от фактического размещения на файловой системе.
Это прекрасное решение — до тех пор, пока оно работает как задумано. К сожалению, механизм header map плохо документирован, что не способствует быстрому разрешению проблем. Постараюсь восполнить этот пробел.
One More Thing Conference 2012
2012-05-29 в 13:04, admin, рубрики: apple, Conference, iOS, ios development, iphone development, разработка под iOS, метки: conference, iOS, ios development, iphone developmentДень добрый.
Недавно довелось побывать на One More Thing Conference 2012. Я какое-то время думал, писать об этом или нет. В конце-концов решил рассказать что это за событие и что познавательного я там узнал. Если вам интересна тема разработки для iOS и истории с этим сзвязанные, то добро пожаловать под кат.
Читать полностью »
Разработчик Dropzone заработал 8000$ за день, сбросив цену с 14$ до 2$
2012-05-29 в 7:35, admin, рубрики: iOS, mac os x, разработка под iOS, скидки, успех, метки: iOS, скидки, успех 
Всем известно, что людям свойственно покупать совершенно не нужные или не интересные им вещи в периоды скидок. Такой эффект испытал на себе разработчик приложения Dropzone для Mac OS X. Обычная цена на его приложение составляла 14$, но он решил поучаствовать в акции Two Dollar Tuesday и сбросил цену до 2$.
Статистика загрузок и немного текста под катом.
Читать полностью »
Искусство на кончиках пальцев. iOS иконки
2012-05-28 в 15:03, admin, рубрики: iOS, арт, графика, Дизайн в IT, иконка, Иконосказ, красота, приложение, разработка под iOSОдна из главных особенностей App Store — он пробуждает в дизайнерах креативное мышление. Кажется, будто каждую неделю появляются отличные идеи для интерфейсов, что очень радует все коммьюнити.
Один из подразделов мобильного дизайна — дизайн иконки в App Store. Он, похоже, превратился в отдельную форму искусства. Очень талантливые художники находят все более и более интересные способы, чтобы продемонстрировать приложение в небольшом пространстве.
От переводчика: примеры красивых иконок и еще немного текста под катом.Читать полностью »
Тестирование iOS-приложений
2012-05-28 в 7:20, admin, рубрики: bdd, cedar, cucumber, guard, iOS, objective-c, rspec, tdd, ui testing, Песочница, разработка под iOS, метки: bdd, cedar, cucumber, guard, iOS, objective-c, rspec, tdd, ui testing, unit-testing В этой статье я хочу рассказать о тестировании iOS приложений и небольшой автоматизации этого процесса.
Под катом будут рассмотрены инструменты для модульного и функционального тестирования и приведены простые примеры.
Читать полностью »
Оптимизируем работу SQLite с NSCalendar
2012-05-27 в 6:16, admin, рубрики: iOS, ios development, ipad, iphone, sqlite, разработка под iOS, метки: iOS, ios development, iPad, iPhone, sqlite

В предыдущей статье мы решили проблему некорректного использования SQLite week based calendar, написав свое расширение для этой СУБД.
Наш расчет сошелся, однако скорость его работы оставляла желать лучшего. Обработка таблицы, содержащей всего лишь 2500 записей занимала около 6 секунд. В то время как запросы, использующие strftime() исполнялись за десятые доли секунды.
Читать полностью »
Вышел непривязанный jailbreak для iOS 5.1.1 Absinthe 2.0
2012-05-25 в 12:59, admin, рубрики: apple, cydia, iOS, ipad, iphone, ipod, jailbreak, mac os x, разработка под iOS, метки: apple, cydia, iOS, iPad, iPhone, ipod, jailbreakПривет всем!
Буквально полчаса назад вышла утилита для непривязанного jailbreak iOS 5.1.1.

Читать полностью »
Практические советы начинающим iOS разработчикам
2012-05-24 в 11:46, admin, рубрики: game development, идея для стартапа, разработка под iOS, метки: идея для стартапаПриветствую всех читателей. Несколько месяцев не публиковал никаких постов, и сказать честно накопилось множество различных мыслей и идей, которыми и хотел поделиться особенно с начинающими iOS разработчиками.
Ну, во-первых, не секрет, что яблочный рынок сейчас развивается в геометрической прогрессии, растет не только количество приложений, но и конкуренция, становится больше тематических сайтов, владельцев девайсов, обсуждается каждая мелочь, связанная выходом нового продукта, миллион различных слухов и т.д. На фоне всех этих событий многие разработчики плавно перетекают в разработку iOS приложений, начинают осваивать Objective C и все сопутствующие необходимые для разработки компоненты. Я недавно общался с несколькими компаниями, которые из веб-разработки почти полностью перешли на разработку заказных приложений под мобильные платформы. Наша компания не исключение. Мы, как и многие, начинали свою деятельность в далеком 2001 году с веб-разработки, а теперь на нас как волной нахлынула мобильная деятельность. Причин несколько, но основная это все-таки перспектива развития.Читать полностью »
Учим SQLite работать с локализированным календарем
2012-05-24 в 8:16, admin, рубрики: iOS, ipad, iphone, sqlite, разработка под iOS, метки: iOS, iPad, iPhone, sqliteУчим SQLite работать с локализированным календарем

Недавно мне довелось портировать (точнее, переписывать) под iOS приложение для анализа посещаемости сайта. Поскольку данные подходили под реляционную модель, мы решили использовать SQLite. Насколько я знаю, других реляционных СУБД под iOS просто нет.
Долго ли, коротко ли… Пришло время подсчитать понедельный КПД для определенного диапазона дат.
Читать полностью »
