Tworzenie aplikacji na platforme iOS 5 z wykorzystaniem Xcode Interface Builder Instruments GDB oraz innych kluczowych narzedzi.pdf

(833 KB) Pobierz
Tytuł oryginału: Pro iOS 5 Tools: Xcode Instruments and Build Tools
Tłumaczenie: Robert Górczyński
ISBN: 978-83-246-4887-0
Original edition copyright © 2011 by Brandon Alexander, J. Bradford Dillon, and Kevin Y. Kim.
All rights reserved.
Polish edition copyright © 2012 by HELION SA.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any
means, electronic or mechanical, including photocopying, recording or by any information storage
retrieval system, without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym
powoduje naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi
ich właścicieli.
Wydawnictwo HELION dołożyło wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie bierze jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za
związane z tym ewentualne naruszenie praw patentowych lub autorskich. Wydawnictwo HELION
nie ponosi również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania
informacji zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail: helion@helion.pl
WWW: http://helion.pl (księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/twapxc.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/twapxc
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
O autorach .............................................................................................. 11
O recenzencie technicznym .................................................................. 13
Podziękowania ....................................................................................... 15
Wprowadzenie ....................................................................................... 17
Rozdział 1
Zaczynamy! ............................................................................................. 19
Dla kogo jest ta książka? ...................................................................................... 19
Czym jest ta książka? ............................................................................................ 20
Czego potrzebujesz, aby rozpocząć pracę? ........................................................ 21
Co znajdziesz w tej książce? ................................................................................ 21
A więc do dzieła! ................................................................................................... 24
Pierwszorzędne narzędzia .................................................................... 25
Rozejrzyj się ........................................................................................................... 26
Tak wiele paneli! ............................................................................................. 29
Edytory i powiązane z nimi narzędzia ......................................................... 29
Pasek Jump Bar ............................................................................................... 31
Okno Organizer .............................................................................................. 32
Karty, karty i jeszcze więcej kart ................................................................... 33
Wracamy do kodu ................................................................................................ 34
Uaktualnienie modelu Core Data ................................................................ 34
Dodanie nowego kontrolera widoku ........................................................... 39
Podsumowanie dotychczasowych działań .................................................. 45
Praca z instrumentami narzędzia Instruments ................................................ 45
Praca z narzędziem Instruments .................................................................. 47
Tak wiele instrumentów ................................................................................ 48
Dostrajanie wydajności działania ....................................................................... 50
Podsumowanie ...................................................................................................... 51
Rozdział 2
Kup książkę
Poleć książkę
6
Tworzenie aplikacji na platformę iOS
Rozdział 3
Trzy ekrany i cóż… to działa ................................................................. 53
Praca z GitHub ...................................................................................................... 53
Nawiązanie połączenia z aplikacją Super Checkout ........................................ 55
Rozejrzyj się ........................................................................................................... 58
Uruchomienie aplikacji Super Checkout .......................................................... 59
Poruszanie się po projekcie (i po Xcode) .......................................................... 60
Podsumowanie ...................................................................................................... 61
Zarządzanie pamięcią i diagnostyka .................................................... 63
Gałęzie to nasi przyjaciele .................................................................................... 64
Automatyczne zarządzanie pamięcią ................................................................. 65
Konwersja na wersję w technologii ARC .................................................... 66
Wykrywanie cykli zachowania ..................................................................... 70
Powrót do ręcznego zarządzania licznikiem użycia obiektu .......................... 71
Najlepsze praktyki w zakresie tworzenia kodu ................................................. 71
Przytrzymać czy nie przytrzymać — oto jest pytanie ................................ 71
Łączenie właściwości oraz polimorficzne kropki ....................................... 73
Analiza statyczna ............................................................................................ 76
Zombie — nie, nie ten rodzaj Zombie ............................................................... 79
Zombie w innych wątkach .................................................................................. 83
Wycieki .................................................................................................................. 86
Powracamy do cyklu zachowania ................................................................ 91
GDB kung-fu ......................................................................................................... 92
GDB, nie zawiedź mnie teraz ........................................................................ 93
Rozpoczęcie pracy z GDB ............................................................................. 94
Ustalanie kontekstu — gdzie ja jestem? ...................................................... 95
Przegląd danych — co otrzymałem? ............................................................ 97
Wymuszenie awarii nie jest takie trudne .................................................. 100
Zebranie wszystkiego w całość ................................................................... 102
Usunięcie naszego błędu ............................................................................. 102
Kiedy wszystko inne zawodzi ............................................................................ 104
Błąd typu Heisenbug .................................................................................... 104
Telefon do przyjaciela .................................................................................. 105
Rozpoczęcie od nowa ................................................................................... 105
Skończyliśmy… prawie ...................................................................................... 105
Podsumowanie .................................................................................................... 107
Core Animation i płynne przewijanie ................................................ 109
Wykorzystanie wątku głównego ....................................................................... 109
Poznanie pętli zdarzeń ................................................................................. 110
Optymalizacja wykonywania kodu ............................................................ 111
Mały skok w bok, czyli wszystko o docelowych rodzajach plików
wykonywalnych .......................................................................................... 113
Powrót do profilowania ............................................................................... 114
Usprawnienie listy produktów ................................................................... 120
Rozdział 4
Rozdział 5
Kup książkę
Poleć książkę
Spis treści
7
Co się dzieje w tle podczas przewijania? ................................................... 123
Leniwe wczytywanie obrazów ..................................................................... 123
Nigdy więcej niezadowalającego przewijania ................................................. 133
Krótki opis technologii Core Graphics ...................................................... 133
Powrót do narzędzia Instruments .............................................................. 135
Ucz się od Apple ........................................................................................... 142
Podsumowanie .................................................................................................... 144
Rozdział 6
Sieć, buforowanie i zarządzanie energią ........................................... 145
Zrozumienie sieci i buforowania ...................................................................... 146
API po stronie klienta .................................................................................. 146
API po stronie serwera ................................................................................ 159
Spowolnienie sieci za pomocą Network Link Conditioner .................... 163
Kontrolowanie bufora .................................................................................. 164
Implementacja bufora na dysku ................................................................. 171
Zarządzanie energią ............................................................................................ 173
Sprzęt .............................................................................................................. 173
Techniki tworzenia kodu ............................................................................. 175
Podsumowanie .................................................................................................... 180
Przygotowanie wersji beta ................................................................. 181
Zarządzanie testowaniem wersji beta .............................................................. 182
Zdefiniowanie wersji beta ............................................................................ 182
Znalezienie testerów wersji beta ................................................................. 182
Przeszkolenie testerów ................................................................................. 184
Tworzenie wersji tymczasowych aplikacji ...................................................... 184
Certyfikaty, iOS Provisioning Portal, dystrybucja, jejku! ....................... 185
Alfa, beta, gamma? ............................................................................................. 203
Podsumowanie .................................................................................................... 203
Dlaczego to nie działa? ........................................................................ 205
Programowanie techniką Test Driven Development .................................... 205
Kiedy powinienem rozpocząć testowanie? ............................................... 206
Xcode ułatwia przeprowadzanie testów .................................................... 207
Dopracowanie testów ................................................................................... 218
Wykorzystanie w aplikacji zdobytej wiedzy .................................................... 220
Testowanie SCJSONParser ......................................................................... 220
Obiekt atrapa ................................................................................................. 221
Testowanie negacji ....................................................................................... 223
Negatywne testowanie i użyteczne porażki ............................................... 224
Interfejs użytkownika dla testowania i instrument Automation ................. 227
Rozpoczęcie pracy z instrumentem Automation ..................................... 229
Skryptowanie testów interfejsu użytkownika ........................................... 233
Wprowadzenie błędu ................................................................................... 237
Potęga automatyzacji ................................................................................... 240
Testuj w taki czy inny sposób ........................................................................... 241
Rozdział 7
Rozdział 8
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin