Pull to refresh

Comments 26

давно пользуюсь вашим порталом, теперь попробовать и приложение (осталось айфон прикупить).
Наймите себе дизайнера. Впервые вижу обычную белую кнопку в аппсторе.
А сколько чистого времени потратили на разработку такого приложения?
Очень сложно сейчас оценить «чистое время», т.к. разработка шла вместе с обучением программиста (решили обойтись своими силами). Ушло около 2 месяцев на всё про всё, которые состояли из чтения книг, документации, копания на stackoverflow и консультаций с более опытными в разработке на objective-c программистами.
грамотный программист под objective-c с опытом от 1 года сделает в принципе такое приложение полностью (с заранее готовыми макетами, картами переходов, дизайном в psd, серверной частью) за 25-30 рабочих часов, с полным покрытием тестами и выкладыванием в appstore. Если не верите — можно устроить тест)
Не воспринимайте в обиду, я хотел больше отметить рациональность в собственных разработок, чем нанять программиста на 30 часов по 500руб/час.
Что вышло бы в 15 000 рублей, но экономило бы 98% времени.
Я не обижаюсь, просто я верю в следствие из закона Мёрфи: «Всякая работа требует больше времени, чем вы думаете» ;)
Приложение годное. Хотелось бы лишь некоторого тюнинга интерфейса в более кастомном виде, а то нативный iOSовский вариант несколько скучноват.
оффтопик: Подскажите, плз, скриншоты какой программы для iPad приведены? Которая для прототипинга интерфейсов…
Над интерфейсом, безусловно, будем работать. Сриншоты — приложения iMockups
Хотел бы сделать пару замечаний и предложить более широкий вид приложения.

Во первых, по самой статье — зачем такое подробное расписание UIKit элементов, базовых форм и обычного построения приложения — мне кажется, имеет смысл это расписывать, если Вы, как минимум, сделали какой необычный протокол, базу данных, архитектуру приложения, сложный графический элемент, внедрили новую библиотеку. Тут так сказать, все стандартно. Простите, если обидел.

Во вторых, по графической части — как было сказано выше, не сильно оригинальное и броское приложение, с другой стороны есть очень много приверженцов стандартно-системного стиля apple, как itunes-appstore-settings. Так что, в этом плане юзабилити и интерфейс настраивают на лаконичность и точность и не раздражают.

В третьих, как и обещал, более перспективный вид:
еще давно хотел развить идею стартапа (но нашел кучу трудностей, так что реализация пока не оправдывает себя), чтобы сделать совмещенную карту поиска заведений / баров / ресторанов по близости + бронирование мест в них + просмотр отзывов + просмотр меню.
Также, когда Вы сидите уже внутри ресторана, можно продолжать пользоваться приложением для заказов внутри заведения, общения с соседними столиками, вызову официанта, интерактивному просмотру меню и прочего.
1. У большинства статей на хабре, в которых люди пишут о своих приложениях — появляются комментарии вроде «зачем нам ваша реклама, не относящаяся к тематике Хабра? Расскажите лучше про реализацию». Мы постарались так и сделать. Необычный протокол создавать смысла нет — решение для подобных вещей давно придумано — есть REST, этой идеологии и следовали. Про БД мы вкратце рассказали — учитывая то, что большинство проектов на SQL базах данных, по-моему не лишним получилось небольшое освещение нашей связки с CouchDB, к тому же по CouchDB наш программист писал отдельную статью для Хабра, ссылка на которую приведена в статье. Библиотек нам тоже пока не понадобилось, из внешнего пока только framework для JSON, в будущем карты Яндекса.

2. Тут сказать пока нечего, работаем над этим. Больше были сосредоточены на том, чтобы сделать реализацию, поэтому пользовались элементами интерфейса «из коробки».

3. «реализация пока не оправдывает себя» — тут можно долго говорить о том, насколько сложно сделать такой проект достойным с нуля и сколько сил и денег он требует. Многие вещи уже реализованы на различных порталах, но чтобы охватить сразу всё — нужно много времени и людей.
> общения с соседними столиками
я пожалуй пойду спать.
Что-то я сомневаюсь, что ВКонтакте таббар лежит внутри navigationController-а. Достаточно выставить hidesBottomBarWhenPushed = YES, когда пушишь в навбар, тогда нижний таббар уедет.
Наверное, я слишком смело написал в тексте про «так работает», я, всё-таки, имел ввиду не реализацию в коде (исходников я не видел), а про визуальную часть — как это видит пользователь. Тем не менее, когда вы в табе «Новости» приложения ВКонтакте нажимаете на конкретную новость — отчётливо видно, как Таб Бар уезжает влево вместе со всем остальным: www.youtube.com/watch?v=P3WE12DlayU
Ага, как раз для этого нужно свойство hidesBottomBarWhenPushed. Просто логически в каждом табе должен быть свой навбар, так корректнее, можно писать [self.navigationController pushViewController...]
Здорово. Это я про приложение. Два вопроса.

1) Почему пины красные? Если привязать цвет пинов к часам работы, то красные значит закрыто или на спецобслуживании или вдруг все занято, зеленые заходи дорогой.

2) расскажите про организацию БД картинок и загрузку картинок из приложения на сервер.

Где два там и три

3) База данных никак не кешируется в телефоне?

Спасибо.
1) Пины стандартные, как-то не привязывали мы это к часам работы, но идея интересная, подумаем.
2) Берётся изображение (из альбома или свежесделанное), преобразуется в NSData через UIImageJPEGRepresentation или UIImagePNGRepresentation, после чего эти данные идут на сервет PUT-запросом в теле.
NSMutableURLRequest *putRequest = [NSMutableURLRequest requestWithURL:url];
[putRequest setHTTPMethod:@"PUT"];
[putRequest setHTTPBody:putData];
[NSURLConnection sendSynchronousRequest:putRequest ... ]


По серверной стороне, надеюсь, ответит вам 1999.

3) Не кешируется, но и не все данные повторно запрашиваются. Например, открыв ресторан, данные о нём получаются и не загружаются повторно до следующего открытия информации о ресторане.
спасибо, стандартных пинов 3 — грин, пурпле, ред.

А как сделали видео? Ссылочка есть?
Про организацию рассказывать думаю нечего. В CouchDB есть свой механизм вложений и теоретически мы могли бы хранить фотографии к отзывам в качестве вложений, но от этого разрастались бы документы отзывов, а с учетом того, что мы используем вот эту оболочку для связки memcached-couchdb (https://github.com/1999/couchdb-php), то мы рискуем легко выбраться за пределы 1Мб, что недопустимо.

Плюс к этому лично мое мнение, что не мог разработчик CouchDB написать более эффективную отдачу статики, чем nginx. Потому картинки хранятся у нас в файловой системе, распределенные по датам загрузки и пльзователям.
спасибо, найтин найти найн, хотел отблагодарить в карму, но понял, что тебе это нафик не надо)
В точку, тем более у меня есть друзья, помогающие рассказывать о каких-то интересных вещах.
Хотел скачать — а нету в американском аппсторе. =( Выложите туда тоже, пожалуйста!
Как я уже писал в посте — никуда кроме России и Эстонии нас не пустили, т.к. в других странах приложение не выполняет своих функций.
Sign up to leave a comment.

Articles