본문 바로가기
[Effective Objective-C] #26 카테고리에는 프로퍼티를 사용하지 말라. [Effective Objective-C] #26 카테고리에는 프로퍼티를 사용하지 말라. 출처 : Effective Objective-C -기술적으로 카테고리에 프로퍼티를 선언하는 것이 가능할지라도 되도록이면 하지 말아야 한다.그 이유는 클래스 확장 카테고리를 제외하고는 카테고리가 클래스에 인스턴스 변수를 추가하는 것이 불가능하기 때문이다.그렇기 때문에 카테고리가 프로퍼티에 해당하는 인스턴스 변수를 합성(synthesize) 할 수도 없다. -카테고리에 있는 인스턴스 변수는 합성될 수 없기 때문에 프로퍼티를 위한 접근자 메서드를 카테고리에 구현해야 하고,그렇게 하지 않으면 접근자 메서드를 @dynamic 으로 선언해야 한다.@dynamic 으로 메서드를 선언하는 것의 의미는 이 메서드를 실행 시간에는 사.. 2017. 9. 10.
[Effective Java] 새로 작성하는 코드에서는 원천(raw) 타입을 사용하지 말자. [Effective Java] 새로 작성하는 코드에서는 원천(raw) 타입을 사용하지 말자. - 하나 이상의 타입 매개변수(type parameter)를 선언하고 있는 클래스나 인터페이스를 제네릭 클래스 또는 제네릭 인터페이스라고 한다. 제네릭 클래스와 인터페이스를 합해서 제네릭 타입이라고 부른다. 각 제네릭 타입에서는 매개변수화 타입(parameterized type)들을 정의한다. ( 이용 ) 실 타입 매개변수(actual type parameter)들은 제네릭 타입의 형식 타입 매개변수(formal type parameter)와 각각 대응된다. ( List 에서 String 이 실 타입 매개변수이고, 기존 T 혹은 E 가 타입 매개변수이다. ) - 각 제네릭 타입에서는 원천(raw)타입을 정의하는데.. 2016. 11. 21.
[Effective Java] 추상 클래스보다는 인터페이스를 사용하자. [Effective Java] 추상 클래스보다는 인터페이스를 사용하자. - 인터페이스(interface)와 추상클래스(abstract class)는 비슷하지만 다르다. 추상 클래스는 구현된 메소드를 포함할 수 있는 반면 인터페이스는 그렇지 못하다. 추상 클래스로 정의된 타입을 구현하는 클래스는 반드시 추상 클래스의 서브 클래스가 되어야 한다. 인터페이스를 구현하는 클래스의 경우 인터페이스에 정의된 모든 메소드를 구현하기만 하면 된다. 자바는 단일 상속만을 허용하므로 추상 클래스로 타입을 정의할 때 심한 제약이 따른다. - 인터페이스는 추상 클래스에 비해 변경과 적용이 쉽다. - 인터페이스는 믹스인(mixin)을 정의하는 데 이상적이다. 믹스인은 클래스가 자신의 본래 타입에 추가하여 구현할 수 있는 타입으.. 2016. 11. 7.
[Effective Java] 상속을 위한 설계와 문서화를 하자. 그렇지 않다면 상속의 사용을 금지시킨다. 상속을 위한 설계와 문서화를 하자. 그렇지 않다면 상속의 사용을 금지시킨다. - 메소드 오버라이딩으로 인한 파급 효과를 분명하게 문서화해야 한다. 같은 클래스의 다른 메소드들이 호출하는지에 대해 반드시 문서화해야 한다. ( self-use ) - 각각의 public 이나 protected 메소드 및 생성자가 어떤 오버라이드 가능한 메소드를 호출하는지, 어떤 순서로 하는지, 호출한 경로가 다음 처리에 어떤 영향을 주는지에 대해서도 반드시 문서화해야 한다. 오버라이드 가능하다는 것은 final 이 아니면서 public 이나 protected 인 경우를 의미한다. - 관례적으로 오버라이드 가능한 메소드를 호출하는 메소드에는 문서화 주석의 제일 끝에 그런 호출에 대한 설명을 추가한다. 그리고 설명의 시작은 "이.. 2016. 11. 1.
양자역학에 대한 짧은 지식으로의 접근. 양자역학에 대한 짧은 지식으로의 접근. 참조 : http://terms.naver.com/entry.nhn?docId=1124387&cid=40942&categoryId=32249 영어로 Quantum Mechanics. 물리학의 일종으로, 원자, 분자, 소립자 등 미시적(보이지 않는 작은) 대상에 적용되는 역학(힘에 대한 학문)을 이야기한다. 고전역학( Classical Mechanism ) 은 현재의 상태를 정확하게 알고 있으면, 미래의 어느 순간에 어떤 사건이 일어날지를 정확하게 예측할 수 있다는 결정론(deterministic)적 입장을 취한다. 모든 것은 인과법칙에 기반하며, 우연(random)이란 없다고 주장한다. 양자역학은 확률론적(probablistic) 입장을 취한다. 확률론적 입장은 현.. 2016. 10. 11.
[책 정리] 불가능이라는 고정관념 ( 우리가 믿는 불가능은 불가능하지 않을 수 있다. ) - 1cm+ 불가능이라는 고정관념 세상에 불가능이라 불리는 수많은 것들은 단지 불가능하리라 믿는 고정관념이다. 2016. 5. 29.
[책 정리] 미움받을 용기 Intro - 인간은 변할 수 있고, 세계는 단순하다. 누구나 행복해 질 수 있다. #철학자인간은 변할 수 있다, 세계는 단순하다, 누구나 행복해 질 수 있다. #청년위의 전제는 아이에게만 해당한다. 무지할 때는 가능하지만, 세상의 복잡성을 알게 되면서, 성인이 되면서, 현실에 마주치면서 이것은 불가능하게 된다. #철학자그건 그 사람이 세계를 복잡하게 보고 있기 때문.인간은 누구나 "스스로 의미를 부여한 주관적인 세계에 살고 있다. 객관적인 세계에 사는 것이 아니다." 우물물은 1년 내내 18도를 유지한다.그러나 여름에 마시면 차갑게 느껴지고, 겨울에 마시면 따뜻하게 느껴진다.사람이 주관적인 세계에 산다는 증거. 우리는 "우리가 어떻게 보는가" 라는 주관에 지배받는다.세계를 복잡하게 본다면 복잡한 세계이지만, 단순하게 본다면 단순한 세계이다. 선글라스를 끼고 세상을 본다면 어두운 세상이.. 2016. 2. 3.
[부자가 되려면 더 열심히 일해야 한다] vs. [부자가 되려면 현명하게 일해야 한다] [부자가 되려면 더 열심히 일해야 한다] vs. [부자가 되려면 현명하게 일해야 한다] 출처 : 돈에 관한 생각 Chap 17. -"대부분의 사람들이 돈이 거의 바닥이 나야 관심을 갖기 시작한다.시간에 대해서도 마찬가지인 사람들이 많다." - 요한 볼프강 괴테 -"부자가 되려면 더 열심히 일해야 한다." 는 진실이 되어서는 안 되는 말이다."더 현명하게 일해야 한다" 로 바꿔 받아들이길 바란다. -부나 경제적 상황과 관계없이 누구에게나 하루 24시간이 주어진다. -부를 쌓기 위해서는 무조건 많이 일해야 한다는 가정이 문제다.만약 당신이 이 같은 조언에 충실한 편이라면 실제로 남들보다 더 열심히 일에 매진하는 스타일이겠지만동시에 실패를 맛보고 비참한 상황에 빠질 개연성도 높다. 한발 뒤로 물러서서 더 영리.. 2015. 7. 2.
내시는 어떻게 거세를 했을까? 어떻게 오줌(소변)을 봤을까? 내시는 어떻게 거세를 했을까? 어떻게 오줌(소변)을 봤을까? 광해를 보면서 내시의 거세에 대해 궁금해졌다. 그냥 답을 가르쳐 주면 될 것을 귀속말로 쑥덕쑥덕 하며 지들끼리만 알고 좋아하며 궁금증을 자아낸다. 그래서 제길! 내가 알아볼테다! 하며 조사에 나섰다. 내시의 세계는 생각보다 엄청 흥미로우면서도 무서우면서도 징그럽기도 했다. 아래 내시에 대한 자료는 중국 환관에 대한 자료와 조금 섞여 있다. 조선시대에는 음경까지 자르는 거세는 시행되지 않은 것으로 전해지는데 정확한 자료는 없다고 한다. 적당히 이해하시길... 내시는 언제부터 등장했는가? 고려시대 때까지만 해도 내시는 고자가 아니었고 거세도 하지 않았으며, 왕을 가까이서 모시던 엘리트 문관이었다.지금으로 말하면 비서의 역할에 가깝다. 우리가 소위 .. 2013. 2. 4.
반응형