본문 바로가기
[Objective-C] 객체 기반 소프트웨어 작성 [Objective-C] 객체 기반 소프트웨어 작성 출처 : OS X 구조를 이해하면서 배우는 Objective-C Chap 1. Notice : 정리자(돼지왕 왕돼지)가 remind 하고 싶은 내용이나 모르는 내용 기반으로 정리하는 것이기 때문에 구체적인 내용은 책을 사서 보시기를 권장드립니다. 1.1 객체 개념 * 1.1.1. 소프트웨어를 기능 중심으로 설계 했을 때의 문제점 -기능은 상당히 쉽게 바뀔 수 있다.따라서 기능 중심으로 설계한 소프트웨어는 변경에 취약해서 유지 보수하는 데 비용이 많이 든다. * 1.1.2. 객체로 모델화 -객체를 사용해 작성한 모델은 사람이 생각하는 개념 사이의 관계를 반영한 것이므로 기능을 변경하더라도 큰 영향을 받지는 않는다. * 1.1.3. 메세지로 통신 -메시지는.. 2017. 12. 23.
[Kotlin Tutorial] 함수 정의하고 호출하기 #1 - Chap 3. Defining and calling functions [Kotlin Tutorial] 함수 정의하고 호출하기 #1 - Chap 3. Defining and calling functions 참조 : Kotlin in Action 3.1. Creating collections in Kotlin -아래와 같이 쉽게 collection 을 만들 수 있다."type”Of 의 form 이다.val hashSet = hashSetOf(1, 7, 53) // mutableval set = setOf(“Gamza”, “Goguma”) // immutable val list = arrayListOf(1, 7, 53) // mutable val map = hashMapOf(1 to “one”, 7 to “seven”, 53 to “fifty-three”) // mutable/.. 2017. 8. 3.
[Effective Java] 가급적 상속(inheritance) 보다는 컴포지션(composition)을 사용하자. 가급적 상속(inheritance) 보다는 컴포지션(composition)을 사용하자. - 상속은 코드를 재사용하는 강력한 방법이다. 그러나 일을 하는데 가장 좋은 도구는 아니다. 잘못 사용하면 부실한 소프트웨어를 초래한다. - 동일 프로그래머가 서브 클래스와 수퍼 클래스의 구현을 관장하는 같은 패키지 내에서 상속을 사용하는 것은 안전하다 상속을 위해 특별히 설계되고 문서화된 클래스를 확장(extends) 하기 위해 상속을 사용하는 것도 안전하다. 그러나 다른 패키지에 걸쳐 일반적인 실체 클래스로부터 상속을 받는 것은 위험하다. - 상속은 캡슐화(encapsulation) 을 위배한다. 올바른 동작을 위해 서브 클래스는 자신의 수퍼 클래스가 구현하는 상세 내역에 의존한다. 수퍼 클래스의 구현 내역은 소프.. 2016. 10. 27.
[Effective Java] 클래스와 그 멤버의 접근성을 최소화하자. [Effective Java] 클래스와 그 멤버의 접근성을 최소화하자. - 잘 설계된 모듈과 그렇지 않은 것을 구분 짓는 가장 중요한 잣대는, 모듈 자신의 내부 데이터 및 그 외의 상세한 구현 부분을 다른 모듈로부터 어느 정도로 숨기느냐에 달려 있다. - 모듈은 자신의 API 를 통해서만 다른 모듈과 상호작용한다. 정보 은닉(information hiding) 또는 캡슐화(encapsulation)이 그것이다. - 정보 은닉은 시스템을 구성하는 모듈들 간의 결합도를 낮추어(decoupling) 모듈 별로 개발, 테스트, 최적화, 사용 및 수정이 가능하도록 한다. 또한 이렇게 하면 병행 개발 ( parallel development ) 를 할 수 있어 시스템 개발이 빨라진다. 모듈을 더 빨리 파악할 수 있.. 2016. 10. 17.
Objective-C 의 기본 ( Basic Objective-C ) Object-C 의 기본 ( Basic Objective-C ) 출처 : http://www.tutorialspoint.com/objective_c/ > - OOP 언어로 Smalltalk-style 을 C 언어 에 가미한 언어이다. Apple 의 OSX 와 iOS 에서 공식적으로 사용되는 언어이다. > - Object-C 는 OOP 의 4가지 조건 ( Encapsulation, Data hiding, Inheritance, Polymorphism ) 을 모두 만족시키는 언어이다. - Foundation Framework 는 아래 명시된 기능들을 비롯해 많은 기능을 제공한다. * NSArray, NSDictionary, NSSet 과 같은 data type 을 제공 * file, string 등 많은 u.. 2015. 6. 16.
getter / setter 장단점 Getter / Setter 장단점 [ 장점 ] * 단순히 get, set 뿐만이 아니라 다른 일을 하고 싶을 때 유용하다. - validation 을 할 수 있다. - get, set 하는 값을 변형해서 set 하거나 return 할 수 있다. - 안의 구조를 숨길 수 있다. ( encapsulation ) - 안의 변수명을 숨길 수 있다. - 상속할 때 override 할 수 있다. - getter 와 setter 에 다른 access level 을 적용할 수 있다. - lazy loading 이 가능하다. - 몇몇 library, platform, framework 에서 이를 요구하기도 한다. ( reflection 등 이용 ) [ 단점 ] 단순한 get, set의 경우에는 mobile 환경에서 p.. 2015. 2. 12.
[android] ~Jelly Bean WebView vs. Kitkat WebView. [android] ~Jelly Bean WebView vs. Kitkat WebView. http://stefanodacchille.github.io/blog/2014/02/23/webview-explorations/ Hit test result. WebView 에서 어떤 element 를 touch 했을 경우,WebView.getHitTestResult() 를 호출하면 hitTestResult object 가 return 된다. HitTestResult 에는 element type 과 url 값이 들어있다.예를 들어 tag 를 touch 했을 때는 WebView.HitTestResult.SRC_ANCHOR_TYPE 이 type 으로 return 된다. 기존 WebView 는 이 녀석이 지원하지 않는 e.. 2014. 4. 10.
[VB6] 다른 Form 으로 값 넘기기 다른 Form 으로 값 넘기기 VB6 프로그램의 규모가 커지게 되면, 하나의 Form 으로 모든 것을 해결하지 못하는 경우가 많아진다.이럴 경우는 Form 을 여러개 생성하면서 메인 Form 에서 다루기 힘든 UI 들을Sub Form 에 생성하여 그곳에서 처리하게 하는 경우가 생긴다. 이 때 필요에 따라서 Main Form 에서 Sub Form 으로 값을 넘겨야 하는 경우가 생기는데,그 방법에 대해 알아본다. 먼저 전달받는 값을 저장한 변수를 정의하고,값 전달을 위해 사용될 public 함수를 만든다. Private passedVar As String Public Sub PassVar(newPassedValue As String) passedVar = newPassedValueEnd Sub 사실 Enca.. 2013. 6. 17.
반응형