czwartek, 28 listopada 2013


Witam,

Dzisiaj szybkie wejście w parsowanie plików csv. W przykładzie posłużę się plikiem zawierającym informacje na temat miast (nazwa, kraj, współrzędne itd.). Do czego oczekujemy tabela z opcją wyszukiwania - czyli prototyp aplikacji.



środa, 20 listopada 2013

NSCache - dlaczego by nie?

Zwykle programiści używają podręcznego cache przy użyciu nsdictionary. Chciałbym w dzisiejszym poście zwrócić uwage na coś czym bez problemowo możemy zastąpić nsdictionary a co oferuje nam SDK, niestety programiści Objective C, zbyt rzadko sięgają moim zdaniem po NSCache.


sobota, 27 lipca 2013

Lokalizacja - CLLocationManager, CLLocation

Czasami w projektach potrzebny są nam współrzędne użytkownika, poniżej chciałbym przedstawić bardzo prosty menadżer, który pozwoli bardzo łatwo korzystać z dostepnych funkcji bez konieczności kopiowania kodu w kilka miejsc w naszym projekcie, szczególnie jeżeli chcemy używać CLLocationManager w kilku kontrolerach.


#import <Foundation/Foundation.h>
#import <CoreLocation/CLLocation.h>
#import <CoreLocation/CLAvailability.h>
#import <MapKit/MapKit.h>

typedef void (^CLLocationManagerCompletion)(NSArray *locations);
typedef void (^CLLocationManagerError)(NSError *error);


Lekcja 4, Reference Counter cz.1

Witam ponownie po dłuższej przerwie, mam nadzieje ostatniej takiej m.in ze względu na zmianę pracy, przygotowań do ślubu etc. :).

Dzisiaj postaram sie poruszyć temat dosyć ważny i od który powinnien być jednym z tych najbardziej podstawowych - zarządzanie pamięcią w Objective C. Na chwile obecną są dwie drogi zaczynając przygodę z programowaniem własnie w tym języku. Zacznę od tej, która chronologicznie pojawiła się pierwsza.

Non Automatic Reference Counter:

Najprościej ujmując każdy obiekt dziedziczacy po NSObject posiada mechanizm referencje do danego obiektu, dziedziczy również protokół NSObject, który narzuca implementacje metod do zarządzania pamięcią.

Każdy nowo utworzony obiekt przy użyciu metody init, otrzymuje dla licznika referencji +1.



    SimpleObject *simpleObject = [[SimpleObject alloc] init];
    
    NSLog(@"Simple Object reference counter = %d", [simpleObject retainCount]);


    Simple Object reference counter = 1