
Дейвид Куинлан е нормален човек с ден работа и само за малко на кодиране опит. Но той и негов приятел са живели на съня и извит на обикновен апартамент iPhone в един уикенд. Ето как го направи:
"Thai, салата или Ramen?" Това е обедната почивка на типичен четвъртък и това ни удари, че милиони хора по целия свят се обмислят по същия въпрос. Този въпрос е нашият хвърлям, което ни направи част от хилядите хора, които искаха да се изгради iPhone App за "това".
Аз съм човек на продукта и търговия с някои дизайн и кодиране на умения.
Рой е разработчик с някои бизнес разбирам. Комбинираната, ние правим голям отбор и да се допълват взаимно и умения, но ние само започва да работи с Objective-C миналата година, както и много други, които се опитват се iPhone развитие. Ние вече построен един апартамент или две, така че ние сме запознати с езика и рамки. Въпреки това, както с всички нови проекти, обикновено трябва да направя малко изследвания, за да разберете как да подходите към различните предизвикателства ... особено в един свят, определени от 320 × 480 пиксела.
За най-дълго време, ние сме около играе с идеята за създаване на апартамент за забавление. След изхвърлянето няколко добри идеи (защото те са твърде сложни или бързо търсене в банките се съхранява показа, че някой друг вече се е добре), обяд ни земи на проста, идеята е забавно да помогне на хората да остана между решения.
Но докато повечето хора искат да се създаде голям апартамент iPhone, мой приятел и аз отивам с една стъпка напред, като пакт да завърши проекта в рамките на един уикенд или реалистично, ап ни никога няма да се приключи.

На един лист хартия, ние се драскам двеста и третата година wireframes и разработи схема за някои основни екрани. Ние решаваме по един апартамент, който предлага до три множество възможности за избор. Можете да напишете своя собствен отговор-например, Thai, салата или Ramen и просто изберете рандомизирани избор, за да видите отговора на вашето решение. Ние решаваме да използват карти за игра като тема. Веднага, ние кръг на "трябва да имам" черта (първи приоритет), след това на "искал да имам" функции (миналия приоритет), и накрая се нуждае от повече функции, които разследващите. Тръгваме обяд в четвъртък с малко домашна работа и план да се съберат в събота.
Моята домашна работа включва определянето на вида, не се колебайте и взаимодействие на всеки екран. Рой нужди за изследвания на някои от Xcode функции ние не са имали шанс да играете с още в нашата "истинска" работни места, главно анимации и рандомизацията.
В събота сутринта се срещаме на местно кафене, че е свободен Wi-Fi, претендира за голяма маса за да можем да седи рамо до нежелани и вземете първата от много големи чаши кафе. Тогава ние създаваме общи Dropbox папка за този проект-основен сметка е безплатно и се предлага с 2GB на съхранение. В Dropbox е важно, защото то ни позволява към множество по същия проект, с / всички промени синхронизиране в реално време. За по-големи проекти, може да искате да се помисли GitHub.
Ние издърпайте нагоре по-подробно описание на това, което ние искаме да постигнем за нашия апартамент, както и основни wireframes. Като се има предвид, че имаме само един уикенд да завършим този апартамент, ние решихме да се съсредоточи само върху "трябва да има" черта. Строителна фирма може да издава винаги актуална информация на по-късна дата, която ще включва "хубаво да имат" черта.
Going-екран от екрана, ние на елементите на страницата, лечение, стил, оформление, време и т.н. Ние също се дискутира какво Рой научих за постигане на обществена активност флип движение на картата, тъй като това беше една от основните функции на ап. Ние накратко преглед на Кварцови 2D и Core Анимация библиотеки, тъй като не бяхме преди това направи никаква работа с тях. Ние дори обсъди с помощта на UIWebView за да стане анимация в рамките на CSS WebKit's. В крайна сметка, ние се намери лесно решение използват стандартните UIViews и UIButtons. Класът UIView има някои методи анимация клас, както и на една от вградените в преход е флип ефект. Що се отнася до рандомизацията, знаехме, повечето езици предоставят произволна функция, Objective-C не е изключение. За целите на този апартамент, с всичко, което исках е прост метод за Randomize масив. Рой намерих няколко примера за това, но този, който се открояваше в сайта е над д-р Touch's. Той описва подход, с която да се приложи метод удължаване клас да можете лесно да претупвам всяко масив.
Ние се потопите в нашите специалисти MacBook с Борг-като се съсредоточи върху индивидуалните ни области на компетентност. АЗ отворен до Photoshop и започва изграждането на екрани. В първия екран по подразбиране е изображението. Това е първия екран, когато хората видят, ап започва и започва натоварване. Приложението може да бъде построен в портрет или пейзаж цел. Ако решите да изгради своя апартамент в ландшафта като нашата цел, все още трябва да се създаде образ, който показва по подразбиране в портретен изглед. Просто създайте вас пейзаж и върти обратно на часовниковата стрелка или обратно на часовниковата стрелка (в зависимост от това дали искате наляво или надясно, гледката на). Сега на товари по подразбиране изображението в портретен изглед, но тъй като изображенията се завърта, потребителят ще обрат на iPhone на ландшафта гледка.
След това през следващите няколко часа създаване Comps, фонови изображения, бутони, карти (отпред и отзад) и инфо страницата. Аз също прекарат известно време с акцент върху иконата на ап. Това е очевидно "лицето" на вашия апартамент-значка на чест-така че вие ще искате да поставите внимателно размишление в икона образност. Не забравяйте, че ще трябва иконата и в двете 57 × 57 и 512 × 512 размери. След като приключи, аз да го качите на Dropbox Рой, така че може да започнат да използват творческите елементи.

По времето, когато аз поглед назад към лаптоп на Рой, той е създаден нов проект, Xcode и вече играя наоколо с код, за да анимирате зелени кутии флип на клик. Докато работи върху прототип на iPhone тренажор, аз вземам на info.plist файлове и редактиране на някои от настройките - премахване на лентата на състоянието, ап излагам на показ име, отстранете блясък от иконата и др Ние тогава реши, че е време за нас, за да добавите някои недвижими изображения на нашите прототип. Ние събрахме в фоново изображение, предната и задната част на карти, както и бутони за навигация. Позиционирането е изключен (от много), но картите изглеждат добре и това е несериозност гладко. Ние правим някои лоши математика, но в крайна сметка се точното разстояние и позициониране, че ние искаме за всяка карта. Ние играем с около времето на флип, определени за включване / изключване-членки за навигация копче и сега това е доста добро чувство.

Виждайки на парчета идват заедно в апартамент ми показва, че има няколко изображения, които трябва фина настройка. Правя промени като Рой започва работа за персонализиране на екран и екран информация. Персонализиране на екрана е мястото, което позволява на хората да въведете каквото те искат да покажат на лицевата страна на картата. Ние го ограничи до 25 символа ... нищо повече от това и го записва над / извън картата. Ние говорим през този екран, за малко повече подробности. Взаимодействието във всяка област, как клавиатурата актове, както и как да спасим преди да се върне на картите. Ние прекарваме доста време в Interface Builder окабеляване до това как точно искаме тази страница, за да изглежда и да действа. Информационната страница е напълно по избор, но можем ли да го има, защото то включва допълнителни начини да стигнете до нас.
Уау, седем часа и четворки големи кафета по-късно, ние имаме много направено, но все още има много повече, за да отида. Какво имаме сега е ап че до пожари; показва основния екран за товарене; стане хора с екран, който показва три карти (гърба на картата се показват), те може да избере всяко / всички карти и картите обръща да се покаже предната страна на картата, те могат да кликнат върху бутона с етикет "Опитайте Отново" към проучване на картите, те могат да кликнат върху етикет бутона "Customize", който се отваря нов екран а "Customize" екран ви позволява да въвеждате текст в 3 отделни области с не повече от 25 знака във всяка област, както и можете да стигнете до екрана информация. Ние прекарваме през последния час на деня заедно почистване код и обсъждане на това, което ние оставихме да изпълни утре.

В неделя се срещаме в друго кафене с безплатен Wi-Fi. Кафе първи. Ние се чувстваме като ние сме около 80 на сто направено, преди да започнат работа отново. Основната работа замина за ден напред е спасяването на обичай текст, в израз на обичай текст на лицевата страна на картата, и randomizing текста. Имахме идеи допълнителна функционалност, но ние продължавахме да си честен, и се съхраняват в обхвата пълзене до минимум. Един пример за това е метод за съхраняване / запаметяване на потребителски текст на всяка една от трите карти. Рой би могло да създаде SQLite база данни или използва основни данни, но най-лесният подход е просто да използвате вградения в standardUserDefaults обект, намерени в NSUserDefaults клас. Използването на този метод съхранява стойности на настройките на ап само глоба за нуждите ни и ни спестява много време.

Докато Рой работи по тези позиции, това е една добра възможност за мен да се подготвят някои от нещата, които ние ще трябва по-късно същия ден. Когато се представя един апартамент на банките се съхранява, то не е просто качване на файл. Apple изисква следната информация за всеки апартамент подаване: Името на кандидатстване, Приложение Описание, изисквания Устройство, първични и вторични категория, подкатегории, авторско право, ап Рейтинг, ключови думи, КОД брой, Заявление URL, скрийншотове, Маркетинг Описание Подкрепа URL, поддръжка Email Адрес, лицензионното споразумение с краен потребител, и ценообразуване / Наличност.
Така че, аз подготвителния всички ап информация представяне, докато Рой е зает кодиране далеч, първо се търси в банките се съхранява за подобни приложения и имената им. Ние като "Stuck?" И за щастие никой друг не го използва, за да отидем с това име. Създам на ап описание, добави някои ключови думи, цената и се определи къде искаме да продаде ап (само в САЩ, някои страни и по света). Тогава се регистрира домейн име (stuckapp.com) да се използва за прилагане URL / URL подкрепа и свързани с новосъздадените сметка Tumblr. Аз също създадена необходимата подкрепа имейл адрес. Останалите елементи, които ще искат да се подготвят предварително, са: скрийншота (до пет), голяма икона (512 × 512), и ако това е вашият първи път подаване на апартамент, всички сертификати / провизии профили.
Нещата са склонни да отнеме по-дълго от очакваното и въпреки, че ние сме готови основно с апартамент от ранния следобед неделя, ние все още харчат повече от няколко часа го променяте и подготвя всичко за банките се съхранява подаване почистване код и фина настройка като отидем заедно. Ние прекарваме по-голямата част от деня, в един компютър бутане пиксела, форматиране и осигуряване на времето и взаимодействие потребител е точно така, както ние, така искаше. След близо пет часа на работа в неделя, имаме ап че и двамата представял. Ще започнем тестване в iPhone тренажор и след това върху устройства (iPhone, така и IPod Touch) за стабилност и функционалност. Отново, като това е просто апартамент, то е лесно и бързо да се тестват.
След доказване на неговата стабилност, ние решихме да публикува Stuck? на банките се съхранява. Моят първи опит за публикуване на друг апартамент от мен отне два дни опит, не успее, Google, опит, не успее, Google повече, и т.н.-докато накрая работи. Но втори път е много по-лесно и по-бързо. Ние копие / паста целият текст приготвено по-рано и след това добавят снимки на екрани и изображения. В крайна сметка, ние имаме ап качил в около 15 минути. В този момент, ние сме развълнувани, гладен и уморен, но също така доста горди, че сме завършили солидна ап над един уикенд в кафене.

Имахме нашите стискаме палци, че банките се съхранява ще одобри нашия ап. И, както и ние се учудвам, че можем да завърши един апартамент през уикенда, истинската изненада дойде, след като сме представени на банките се съхранява. Ние представено от апартамент в неделя вечерта. Той променен статут от Чакащи за преглед, в преглед, в понеделник. Във вторник, ние получихме имейл ни информира, че нашия апартамент е готов за продажба. Одобрени за два дни! Това трябва да е запис, особено преди празниците.
Особено след като говори за изграждане на един апартамент заедно за толкова дълго време, като толкова много хора, четете тази статия, аз трябва да кажа, изпълнението е огромно. Най-накрая го направих.

СЪВЕТИ за извършване на APP над УИКЕНД
1. Вие не можете да го направите сами. Можете да, но ти не би искал да. В идеалния случай, искаш ли да си сътрудничим с някой с друг, допълнителни умения. Партньор с някой, който знае и уважава вашата област на експертиза, но е още по-уверени и знаещи за собствените си умения. Добрата комуникация се подразбира в усилията си, като това, така че ще мине през периоди на бързи въпроси пожар подскачащи идеи на разстояние от всеки друг и след периоди на мълчание, докато работите на отделни задачи. Има много да се направи и многозадачност ще бъде от ключово значение.
2. Multitask. Както бе споменато по-горе, които работят с някой, който допълва вашите собствени умения ви позволява към множество. Какво имам предвид? Така например, в началото, след като изравям един Wireframe на една идея, един човек може да започне кодиране - поставяне на контейнера бутони и блокове на място. В същото време, на друго лице, което може да създаде Comps изрязани и след това всеки елемент да се използва, когато те ще получат правото етап. Също така, в края на опашката на проекта, един човек може да приключи проекта и почистване на код, докато други подготвя всички изображения и маркетинг копие на банките се съхранява подаване процес.
3. Ли поне едно нещо, добре. Разлика от повечето десктоп приложения или уеб-проект, трябва да помните, че най-добри мобилни приложения изпълни една нужда, която може да дойде навсякъде и по всяко време. Вашата идея ап не трябва да бъдат сложни, но добре изглежда приложения да направи едно или повече от тези неща, както и:
- Решава проблема, - е забавно, - Служи определена ниша, - ангажира потребител и / или - да се възползва от уникалните характеристики на iPhone.
4. Поставят цели и действия. Независимо дали целта ви е скоростта на пазара, само за да натрупа опит, или да се изгради най-дяволите апартамент, който не води (празен), ясно целите си. Първоначално, тя ще ви помогне да се съсредоточи върху областите, които са важни / от съществено значение за успеха. Тя също ще ви помогне по-късно по пътя, докато лицето трудни решения за "трябва-имам" се отличава и "като към имам" черта. Не забравяйте, че винаги можете да издава актуална информация, така се съсредоточават върху "-трябва да има" елементи и направи каквото е необходимо за постигане на тази цел.
5. Вземи Dropbox сметка. За малки и средни проекти, не може да победи Dropbox. Той ви позволява да съхранявате, споделяте и се синхронизират файлове с други хора. Спри споделяне на файлове и назад в паметта си USB стик. Вземи Dropbox сметка и споделяте файлове в реално време. Ние злоупотребява се разкарай от нашата безплатна, сподели Dropbox папка и тя работи безотказно. За по-големи проекти, може да искате да GitHub опитам.
6. Тест. Тест. Тест. Когато видите финалната линия, е лесно да се скрива важната стъпка на тестването си ап. Тест по iPhone вашия симулатор, но също така се опитват да си ръце на един IPod Touch и разбира се, от една iPhone както извор. В зависимост от сложността на Вашия апартамент, може да искате да се създаде план за тест, за да се уверете, че всички случаи на употреба и функционални задачи са покрити. Последното нещо, което искам е да има един апартамент в банките се съхранява, че блокира или не работи както се очаква. Вие никога не може да се възстанови от всички его-разбиващ обратна връзка.
7. Understand the App Store submission process. Apple provides a PDF document detailing to submission process. But that document is only available for registered developers. If you've already registered, read that document thoroughly before you begin the upload process. It will give you a good idea of what's involved, but also what you'll need to prepare in advance. Apple also provides some good tips for app store submission and approval .
Източник
gizmodo