본문 바로가기
[Effective Objective-C] #9 클래스 클러스터 패턴을 사용해 구현의 상세 내용을 숨기라 [Effective Objective-C] #9 클래스 클러스터 패턴을 사용해 구현의 상세 내용을 숨기라 출처 : Effective Objective-C -클래스 클러스터(class cluster)는 추상 기본 클래스(abstract base class) 뒤편에 상세 구현을 숨길 수 있는 아주 훌륭한 방법이다.이 패턴은 오브젝티브-C 시스템 프레임워크 전반에 걸쳐 사용된다.아래 함수가 예이다.+ (UIButton*)buttonWithType:(UIButtonType)type; 클래스 클러스터 생성하기 -typedef NS_ENUM(NSUInteger, EOCEmployeeType){ EOCEmployeeTypeDeveloper, EOCEmployeeTypeDesigner, EOCEmployeeTypeFi.. 2017. 8. 11.
[Effective Java] 스레드 그룹을 사용하지 말자. [Effective Java] 스레드 그룹을 사용하지 말자. - 스레드, 락, 모니터에 더하여 스레드 시스템에서 제공하는 기본 추상체가 스레드 그룹(thread group) 이다. 스레드 그룹은 원래 보안을 목적으로 애플릿을 격리시키는 메커니즘으로 구상되었다. 그러나 실제로는 그런 기대를 충족시키지 못해 자바 보안 모델의 표준에서 언급되지 않을 정도로 쇠약하다. - 스레드 그룹은 기능이 별로 없다. 단지 Thread 클래스의 기본 메소드들을 여러 스레드가 포함된 그룹에 일괄로 한번에 적용할 수 있게 해준다. 그런 기본 메소드들 중 상당 수는 이미 사용금지 되었으며 남은 메소드들은 사용되는 경우가 드물다. - ThreadGroup 클래스의 API 메소드는 스레드 안전 관점에서도 빈약하다. 하나의 스레드 그.. 2017. 3. 20.
[PHP] 배열( array ) tutorial PHP Tutorial 배열 =====생성 $products = array ( 'Tires', 'Oil', 'Spark Plugs' );$numbers = range( 1, 10 );$odds = range( 1, 10, 2 );$letters = range( 'a', 'z' ); =====배열 element 추가 배열은 길이 상관없이 추가하는 것도 가능하고, 정의없이 사용하는 것도 가능하다. $products[4] = 'Fuses';$products2[0] = 'Good Tires'; =====foreach foreach( $products as $current ) 위와 같은 방식으로 foreach 를 쓰는 것이 general 하다. =====key-value array $prices = array( .. 2013. 11. 21.
반응형