Первое приложение для iPhone

3,695 views

Published on

Семинар для начинающих iOS разработчиков

Published in: Technology, News & Politics
2 Comments
1 Like
Statistics
Notes
  • Ребята если вдруг кто-то из ваших знакомых решит создать нечто подобное, только со своей идеей, могу порекомендовать хороших реализаторов. Вот эти ребята http://appmaker.ru/razrabotka-mobilnyx-prilozhenij-na-zakaz.html очень талантливо и креативно создадут для вас приложение для андроидов или iPhone.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • видео тут http://lib.custis.ru/2011-06-09-iphone
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
3,695
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
59
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide

Первое приложение для iPhone

  1. 1. Первое приложение для iPhone Глеб Тарасов CUSTIS
  2. 2. Почему мобильная разработка? 2 / 48
  3. 3. Для десктопов сложно что-то придумать 3 / 48
  4. 4. Веб — перепаханное поле 4 / 48
  5. 5. Мобильные приложения — наше всё! 5 / 48
  6. 6. Но надо спешить! 6 / 48
  7. 7. Динамика роста AppStore 7 / 48
  8. 8. Какую мобильную ОС выбрать? 8 / 48
  9. 9. США 9 / 48
  10. 10. Россия 10 / 48
  11. 11. Языки, платформы iOS Objective-C MacWindows Phone 7 C# Win Android Java Win, Mac, Linux Symbian C++ Win Blackberry Java Win 11 / 48
  12. 12. Мобильные фреймворки• jQTouch • Wink Toolkit• jQuery Mobile • iUI• Sencha Touch • Dojo Mobile• Xui (не популярен в России) • dHTMLx Touch http://lib.custis.ru/Мобильная_веб-разработка_(Андрей_Ребров,_ADD-2011) 12 / 48
  13. 13. Компиляция веб-приложений в нативные• PhoneGap• MotherApp• Big5• Rhodes• Titanium 13 / 48
  14. 14. Wunderlist http://www.6wunderkinder.com/wunderlist/ Titanium 14 / 48
  15. 15. Дзен-мани http://zenmoney.ru/ PhoneGap 15 / 48
  16. 16. Что нужно для разработки? 16 / 48
  17. 17. Попробовать• Хакинтош под виртуальной машиной (устанавливаем Mac OS на VirtualBox)• XCode 4 ($5) 17 / 48
  18. 18. Полноценная разработка• Макинтош• iPhone для тестирования• Подписка разработчика Apple ($99 / год) 18 / 48
  19. 19. Objective-C 19 / 48
  20. 20. История1981 — Object-Oriented Pre-Compiler (OOPC). Компания StepStone.Tom Love & Brad Cox1986 — Objective-C. «Object-Oriented Programming,An Evolutionary Approach» (Brad Cox).1988 — NeXT лицензирует Objective-C1996 — Apple покупает NeXT. Objective-C — основной языкдля Mac OS.2007 — Objective-C — основной язык для iPhone OS 20 / 48
  21. 21. Основные особенности• объектно-ориентированный• компилируется в машинный код• полностью совместим с Си• header-файлы 21 / 48
  22. 22. Сравнение с другими языками• Нет статических полей• Нет абстрактных методов и классов• Нет protected методов• Нет generic-ов• Нет namespace-ов• YES/NO вместо true/false. nil вместо null 22 / 48
  23. 23. Сравнение с другими языками• Есть свойства• Есть лямбда-функции• Можно писать без статических проверок на типы• Логичная иерархия коллекций (readonly базовый для mutable)• Именованные параметры методов• Все методы виртуальные 23 / 48
  24. 24. Не вызовы методов, а отправка сообщенийObjective-C [myObject doSomething:myArgument]; C++ myObject->doSomething(myArgument);C#, JAVA, Python myObject.doSomething(myArgument); PHP, Perl $myObject->doSomething($myArgument); 24 / 48
  25. 25. Непривычный синтаксис C# Objective-C a[i] [a objectAtIndex:i] a[key] [a objectForKey:key] a+b [a stringByAppendingString:b]a.Replace("a", "b") [a stringByReplacingOccurrencesOfString:@"a" withString:@"b"] 25 / 48
  26. 26. Зато C# Objective-Ca.Process(q, r, t, f) [a processQuery:q withRadius:r withTime:t callWhenFinish:f] 26 / 48
  27. 27. Управление памятью• счетчик ссылок retainCount• retain: retainCount++• release: retainCount--• dealloc, когда retainCount = 0 27 / 48
  28. 28. Model – View – Controller 28 / 48
  29. 29. Демонстрация 29 / 48
  30. 30. Публикация приложения 30 / 48
  31. 31. Регистрация в AppStore• Покупаем в Яндекс.Деньги виртуальную карту на 3000 рублей• Заполняем электронную форму регистрации• Отсылаем факс через онлайн-сервис• Ждем подтверждения 31 / 48
  32. 32. Что нужно?• Название• Имя приложения в iPhone• Поддерживаемая версия iOS• Выбрать категорию• Иконка• Описание• Скриншоты 32 / 48
  33. 33. iTunes Connect 33 / 48
  34. 34. Продвижение 34 / 48
  35. 35. Полезные советы 35 / 48
  36. 36. Поддержка старых версий iOS 36 / 48
  37. 37. Поддержка iPad, iPod Touch 37 / 48
  38. 38. Поддержка Retina 38 / 48
  39. 39. Вызов метода,создание объекта — долго! 39 / 48
  40. 40. Действие Количество LLVM GCCВызов Objective- 10’000’000 1 сек. 0.9 сек C методаВызов C функции 10’000’000 0.2 сек. 0.2 сек. Создание 1’000’000 6.3 сек. 5.3 сек. объекта Создание С 10’000’000 1.9 сек. 0.7 сек. структуры Измерялось на iPhone 3GS 40 / 48
  41. 41. Избегать autorelease. Особенно в цикле. 41 / 48
  42. 42. Все вычисления делать заранее 42 / 48
  43. 43. Обратная связь:кнопка «написать письмо» 43 / 48
  44. 44. При тестировании приложения удалите его с телефона и сбросьте настройки 44 / 48
  45. 45. Логотип Google 45 / 48
  46. 46. Логировать все 46 / 48
  47. 47. Что и где почитать?• ADD-2010. Никита Фролов. Как начать разрабатывать для iPhone.• Objective-C 2.0 и программирование для Mac• iTunes-U. Stanford 47 / 48
  48. 48. Все! gleb34@gmail.com 48 / 48

×