Programming(175)
-
[JAVA] volatile
얼핏보면 C volatile과 다른 문맥으로 쓰인 것 처럼 보였지만 알고 보면 같은 의미이다.첫번째로 C에서 volatile 선언은 optimize를 포기하겠다는 의미로 표현될 수 있다.가령 어떤 변수에 i = 0;i = 10;i = 20;i = 50;이라는 값을 대입했을 경우 volatile로 선언하지 않았을 경우, C 컴파일러에서는 optimize를 위해서 최종 50에 해당하는 값만 의미가 있다고 판단을 하고 나머지 0,10,20에 대한 값은 누락시킬 것이다.하지만 이를 방지하고 단계적 순차과정을 알아야 한다면 volatile로 선언을 해주어야 한다.두 번째는 멀티쓰레드 환경에서의 무결성 보장을 위한 측면으로 사용될 수 있다.프로그램은 메모리에 대입한 변수에 대해 매번 메모리로부터 값을 가지고 오는 ..
2012.12.27 -
[PERL] 정규식
.영문 딱 한자 h.t hat, hit, that ^문자열의 맨 처음 ^h.t hat, hit (that은 안됨) ^.e he, me, regard $문자열의 맨 마지막 h.t$ hat, hit, that *0 이상의 문자. 앞에 항상 문자가 있어야 한다. h*t, (*t는 에러 발생) hat, gt, ht, t, tst, haaaaaat +1 이상의 문자 h+t (+t는 에러 발생)hat, haaaat, hiiit ?0 또는 1개의 문자 s?he (?he는 에러 발생) she 또는 he [st]he she 또는 the ^[st]he문자열의 처음에 있는 she 또는 the [a-z]소문자 한 문자. [a-zA-Z]소문자 또는 대문자 한 문자. [0-9]십진수 한자 ..
2012.12.26 -
[PERL] perl 시작
#/usr/local/bin/perl#hello.pl print "Hello World\n"; perl의 실행> perl
2012.12.26 -
[IOS] UIDevice의 userInterfaceIdiom
UIDevice의 userInterfaceIdiom은 현재 디바이스가 ipad인지 iphone인지를 구분시켜주는 프로퍼티.해당 값이 UIUserInterfaceIdiomPad 이면 ipadUIUserInterfaceIdiomPhone이면 iphone을 나타낸다. if ([UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad){// 아이 패드}
2012.12.24 -
[IOS] UIViewController 의 wantsFullScreenLayout 프로퍼티
아이폰에서는 statusbar 때문에 view가 항상 20px 아래에서부터 시작하게 된다.해당 프로퍼티를 YES로 선언해주면 0px부터 view가 시작할 수 있다.self.wantsFullScreenLayout = YES
2012.12.24 -
[IOS] key-value observing
MVC 모델에서 Model의 값이 변경되었을 때 변경된 정보를 View에 반영하기 위해서 Controller는 Model의 변경된 값을 알아야 할 필요가 있다. Cocoa에서는 notification 혹은 delegate를 사용하여 이를 전달할 수 있도록 구성되어 있다. 하지만 이를 위해서 notification이나 delegate 함수를 매번 써주어야 하는 불편함이 있다.key-value observing이란 프레임 워크 수준에서 값에 대한 변경 사항을 추적해 주도록 하는 역할을 하는 매커니즘을 말한다. 어떠한 객체에 대한 키를 등록하면 이 키 값이 변경될 때 자동으로 옵저버에게 통보가 된다.인스턴스 변수에 대해서도 마찬가지로 key-value observing 매커니즘을 적용시킬 수가 있다.[self..
2012.12.24