[태그:] Programming
-
2017년 9월 XPer – TDD 실습 후기
9월 4일에 넷스루 오재훈님께서 TDD 를 주제로 2시간동안 워크샵을 진행하신다고 해서 참석했다. 그동안 TDD를 해봐야지 하고 책도 봤지만 막상 실무에 적용 하려면 막막했었다. 과연 어떤 힌트를 얻을 수 있을까 기대를 품고 갔는데, 다녀오길 잘 했다는 생각이 든다. 가장 막막했던 첫 시작을 어떻게 해야 할까? 시작점 : 요구사항 TDD는 “1 실패 케이스 작성” -> “2 성공하는…
-
사용자 스토리 작성
요즘 박준표님의 도움으로 작은 실습을 하고 있다. 최종 목표는 실습한 것을 바탕으로 교육 프로그램을 만들어 보는 것이다. 오늘은 트렐로에 할 일 목록을 각자 작성했다. 각자 작성한것을 살펴보니 나는 화면과 그 화면에 어떤 컴포넌트가 들어갈지 적었다. 준표님은 ‘누가 어떤일을 할 수 있다(왜)’는 식으로 적었다. 내가 작성한 방식은 정밀하게 적지 않으면 마음이 답답해지는 단점이 있다. 또한, 어디까지…
-
사용자 스토리 작성
요즘 님의 도움으로 작은 실습을 하고 있다. 최종 목표는 실습한 것을 바탕으로 교육 프로그램을 만들어 보는 것이다. 오늘은 트렐로에 할 일 목록을 각자 작성했다. 각자 작성한것을 살펴보니 나는 화면과 그 화면에 어떤 컴포넌트가 들어갈지 적었다. 준표님은 '누가 어떤일을 할 수 있다(왜)'는 식으로 적었다. 내가 작성한 방식은 정밀하게 적지 않으면 마음이 답답해지는 단점이 있다. 또한, 어디까
-
GCD 제대로 쓰기
출처 : Modernizing Grand Central Dispatch Usage WWDC 2017 GCD 최적화 하기 결론부터 말하자면, GCD Queue (다른 동시성 프로그래밍 기법도 동일한 원리가 적용될 것이다)를 이용 할 때 1)너무 잦은 Context Switching 이 일어나게 프로그래밍 하지 말라는 것이다. 또한 2)GCD 큐의 계층화를 최적화 하라. 이것만 개선해도 1.3배의 속도 증가가 나왔다. 이런 견지에서 애플은 iOS, Mac OSX 양측…
-

GCD 제대로 쓰기
출처 : GCD 최적화 하기 결론부터 말하자면, GCD Queue (다른 동시성 프로그래밍 기법도 동일한 원리가 적용될 것이다)를 이용 할 때 1) 너무 잦은 Context Switching 이 일어나게 프로그래밍 하지 말라는 것 이다. 또한 2) GCD 큐의 계층화를 최적화 하라. 이것만 개선해도 1.3배의 속도 증가가 나왔다. 이런 견지에서 애플은 iOS, Mac OSX 양측 모두에서 성
-
Understanding Undefined Behavior
소개 Undefined Behavior (이하 비정의 동작)을 이해하고 디버깅하는 방법을 소개하는 세션입니다. C 언어 계열(C/C++,ObjectiveC/C++)에 특히 유용한 세션이 되겠습니다. 바로 전에 관련된 글(WWDC 2017 – Finding Bugs Using XCode Runtime Tools)을 썼으니 먼저 읽고 오시면 더 좋겠습니다. 저번 포스트에도 몇가지 유형을 적었는데 실제로 200개 이상의 유형이 있다고 합니다. 출처 : Understanding Undefined Behavior 참고링크 Clang Documentation…
-

iOS 멀티 스레드를 고려한 변수 사용
Multithread 그림 1. iOS App’s Threads 모든 iOS Multithread 앱이며, 간단하면서도 유의해야 할 원칙들이 있다. 1. 모든 UI 갱신에 관련된 작업은 main thread (그림 1의 Thread 1) 에서 수행되어야 한다. 2. Thread unsafe 변수는 서로다른 스레드에서 동시에 접근하면 위험하다. 여기에서는 2번째 경우에 관해 얘기를 하겠다. 이
-
iOS 멀티 스레드를 고려한 변수 사용
Multithread 그림 1. iOS App’s Threads 모든 iOS Multithread 앱이며, 간단하면서도 유의해야 할 원칙들이 있다. 모든 UI 갱신에 관련된 작업은 main thread (그림 1의 Thread 1) 에서 수행되어야 한다. Thread-unsafe 변수는 서로다른 스레드에서 동시에 접근하면 위험하다. 여기에서는 2번째 경우에 관해 얘기를 하겠다. 이것이 중요한 이유는 이런 것들을 잘 지키지 않으면 프로그램이 죽기 때문이다. 왜 죽는지 디버깅…
-
Objective-C Literals
Objective-C Literals Literals의 소개 리터럴은 소스코드상에 표시된 고정된 값이다. 숫자, 문자, 집합형(배열형, 사전형)이 있다. XCode 4.4 부터 새롭게 추가 되었다. OSX 10.8과 iOS 5.1 부터 지원한다. OSX 10.7 에서도 지원하려면 OSX 10.8 SDK로 컴파일 해주기만 하면 된다. XCode 4.5 에 포함된 최고 버전의 SDK를 이용한다면 OSX 10.6과 iOS 4 이상에서 이용 가능하다. 자세한 사항은 예제만…