[business trip] Chatting Infra test

Test scenario

1. Chat health check

2. Connection time out (stat of failure, success rate)

3. firewall

4. dns lookup delay, DNS server check

5. diagnosis network congestion

6. capture packet trace

How to capture a packet trace

https://support.apple.com/en-us/HT202013

Advertisements

[ios] NSObject respondsToSelector

http://stackoverflow.com/questions/3697058/when-to-use-respondstoselector-in-objective-c

1. 오래된 프레임워크 호환성을 위해 사용

if ([someObject responsToselector:@selector(newApiMethod)]) {
// ios 8
[someObject newAPiMethod];
} else {
// ios 6
[someObject oldAPiMethod];
}

2. Protocol Delegate의 optional로 지정된 메서드를 호출할 때 사용.

[ios] method naming guide

액션 이름 짓기

link : http://stackoverflow.com/questions/7222013/naming-conventions-on-ibaction-functions

1. prefix를 사용하지 말아라

2. 액션 이름은 동사로 시작한다.

3. do, dose와 같은 이름을 사용하지 말아라, 그 이유는 조동사는 의미가 없기 때문이다.

4. 그리고 부사(adverbs), 형용사(adjective)를 동사 전에 사용하지 말아라.

5. 만약 값을 반환하는 함수라면 get이라는 이름이 필요하지 않다. 값을 반환하는 이름을 바로 사용해라.

– (NSSize)cellSize;

6. 키워드를 적절히 활용 해라.
– (void)sendAction:(SEL)aSelector to:(id)anObject forAllCells:(BOOL)flag

-> 아름다운 문장이다….그러나 Objective-C ….swift가 어느면에서는 더 좋은점이 있다(안좋은 점도 있다…IPC 메시지 전송이 안된다고 했던 기억이…)

7. Argument가 오기 전에 argument를 표현 할 수 있도록 메서드 네이밍을 작성한다.

– (id)viewWithTag:(int)aTag;

코딩 가이드 라인

(결국 Apple 문서를 읽어라 인데…apple  문서는 너무나 길다 ㅋㅋ)

http://stackoverflow.com/questions/8410602/objective-c-method-naming-convention

구글 코딩 스타일

http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml