Item 47: Familiarize Yourself with the System Frameworks Item 48: Prefer Block Enumeration to for Loops - Fast Enumeration // Array NSArray *anArray = /* ... */; for (id object in anArray) { // Do something with 'object' } // Dictionary NSDictionary *aDictionary = /* ... */; for (id key in aDictionary) { id value = aDictionary[key]; // Do something with 'key' and 'value' } // Set NSSet *aSet = /..
GCD is the associated technology and provides an abstraction to threading, based on so-called dispatch queues. Blocks can be enqueued on these queues, and GCD handles all scheduling for you. It creates, reuses, and destroys background threads as it sees fit, based on system resources, to process each queue. Moreover, GCD provides easy-to-use solutions to common programming tasks, such as thread-..
Item 29: Understand Reference Counting NSMutableArray *array = [[NSMutableArray alloc] init]; NSNumber *number = [[NSNumber alloc] initWithInt:1337]; [array addObject:number]; [number release]; // do something with 'array' [array release]; As explained previously, this code won’t compile under ARC, owing to the explicit calls to release. In Objective-C, a call to alloc will result in the return ..
Item 23: Use Delegate and Data Source Protocols for Interobject Communication @protocol EOCNetworkFetcherDelegate - (void)networkFetcher:(EOCNetworkFetcher*)fetcher didReceiveData:(NSData*)data; - (void)networkFetcher:(EOCNetworkFetcher*)fetcher didFailWithError:(NSError*)error; @end A delegate protocol is usually named as the class name followed by the word delegate, using camel casing for the ..
Item 15: Use Prefix Names to Avoid Namespace Clashes Item 16: Have a Designated Initializer Item 17: Implement the description Method - (NSString*)description { return [NSString stringWithFormat:@"", [self class], self, _firstName, _lastName]; } If this were to be used, the output for an object of type EOCPerson would now look like the following: EOCPerson *person = [[EOCPerson alloc] initWithFi..
- Total
- Today
- Yesterday
- 액션바
- CaseIterable
- 전화연결하기
- 안드로이드
- 표현패턴
- prepareforreuse
- 제스처디텍터
- 뷰페이저
- 프래그먼트매니저
- 데이터
- 카카오톡열기
- 알림대화상자
- 페이저타이틀스트립
- allcases
- objc
- 전화걸기연결
- ios
- 어댑터
- 스낵바설정
- 인플레이터
- Objective-C
- 부가데이터
- 쉐이프드로어블
- 비트맵버튼
- 상태드로어블
- 프래그먼트
- 다이얼연결
- 터치리스너
- subscript
- swift
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |