본문 바로가기

Development

[Java Design Patten] Thread Specific Storage 패턴 Thread를 사용하다보면 Local 변수는 상관없지만 다른 용도로 데이터의 저장이 필요할 때 Memeber변수를 사용하는 건 문제가 많을 수 있다. 그럴 때 사용하기 좋은 패턴이다. 여기서 핵심은 Log Class 이고 ThreadLocal을 사용한다는 점을 주목하자~! public class TSLog {private PrintWriter writer = null;public TSLog (final String filename) {try {writer = new PrintWriter (new FileWriter(filename));} catch (final IOException e) {e.printStackTrace();}}public void println(final String s) {writer.. 더보기
UIKit Dynamics iOS7부터 물리엔진처럼 UI를 애니메이션 효과를 줄 수 있는 라이브러리가 추가 되었다. 앞으로 많이 활용해보면 좋을 듯하다. 사이트로 이동하기 더보기
Open URL 활용하기 iOS 개발을 하다보면 웹사이트 연결 혹은 전화 등등 기능을 넣어야 할 때 간편하게 구현할 수 있는 방법이다. // 전화걸기[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://전화번호"]];[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://01012345678"]]; // 메일 쓰기[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://이메일주소"]];[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mai.. 더보기
Xcode auto-complete not working 간혹 Xcode를 쓰다 보면 Auto-Complete가 제대로 작동하지 않을 경우가 있다.그럴 때는 아래와 같은 방법으로 해결을 하면 된다. Clean/rebuildRemove Derived DataInstalling documentationRestart 하지만 이걸로도 해결이 되지 않는 경우가 있다. 본인의 경우가 이런 경우가 있었는데 아래의 방법으로 해결이 되었다. Xcode > File > Project Settings 이동Build 탭의 Derived Data Location 의 선택 값을 Default 에서 Project-relative 로 변경해 주는 방법이 있습니다. (형상관리 툴 사용시 ignore 꼭 할것!! ) 더보기
[Java Design Patten] Two-Phase Termination 패턴 쓰레드가 일반적인 처리를 실행하고 있는 상태를 [작업중]이라고 부르고 이 쓰레드를 중단하고 싶은 때는 [종료 요구]를 합니다. 그리고 종료에 필요한 뒷정리를 시작할 때 [종료 처리 중] 이고 여기서 끝나면 진짜로 쓰레드가 종료합니다. 종료하는 역할 public class CountupThread extends Thread {private long counter = 0;private volatile boolean shutdownRequested = false;public void shutdownRequest() {shutdownRequested = true;interrupt();}public boolean isShutdownRequested () {return shutdownRequested;}public.. 더보기
[Javascript] 동적으로 생성하는 텍스트 Component에서 높이 가져오기 동적으로 생성하면서 높이 값이 필요할 때 유용하다. 약간 꼼수인 것 같지만..... function textComponentHeight (component) { document.body.appendChild(component); var textHeight = component.offsetHeight; document.body.removeChild(component); return textHeight; } 더보기
Tomcat7 에서 Memory Setting 하기 1. /etc/tomcat7 이동한다. (또는 /usr/share/tomcat7 여기로 이동하여 목록을 확인하여)drwxr-xr-x 2 root root 4096 Sep 12 03:53 binlrwxrwxrwx 1 root tomcat 12 Sep 12 03:53 conf -> /etc/tomcat7lrwxrwxrwx 1 root tomcat 23 Sep 12 03:53 lib -> /usr/share/java/tomcat7lrwxrwxrwx 1 root tomcat 16 Sep 12 03:53 logs -> /var/log/tomcat7lrwxrwxrwx 1 root tomcat 23 Sep 12 03:53 temp -> /var/cache/tomcat7/templrwxrwxrwx 1 root tomc.. 더보기
Xcode 6.0 간편해진 마켓 업로드 Xcode에서 Archive를 하고 Organizer를 실행하자 그러면 Archive된 파일이 있고 이것을 Submit ~! 그러면 바로 Team provisioning을 선택하라고 한다.. 그러면 이제 보낼 준비를 한다. 업로드 시작~!! 알아서 마켓에 올린 어플리케이션에 iPA파일을 올린다. 그리고 iTunes Connect에 접속을 하면 Processing에 Uploaded되었다고 나오고.. 조금 기다리면 등록이 완료되었다고 알려준다.~! Xcode6를 아직 많이 써보지 못했지만... 정말 편한 것 같다. ㅎㅎ 더보기
App 아이콘을 만들어주는 사이트 1024 * 1024 사이즈 이미지를 넣으면 자동으로 아이콘을 알맞는 크기 및 이름으로 변경해준다. (iOS7으로 따로 항목을 지원해주시기 때문에 까다로운 사이즈에 편하게 적용할 수 있다.) http://makeappicon.com 더보기
yum 으로 tomcat7 설치하기 설치가능 확인하고 yum list tomcat7* | grep tomcat 설치하기~!yum install tomcat7 tomcat7-admin-webapps tomcat7-webapps 더보기