Jun 132012
 

코딩을 하다보면, 테스트를 해야 할 부분, 주석을 더 달아야 할 부분, 기능개선을 해야 할 부분 등 코드의 각 부분마다 제각기 할 일이 있다.
그런데 이 모든 것을 기록하기도 쉽지 않고, 그 위치를 기억하기는 더더욱 어렵다.

이럴 때 유용한 것이 Task Tag다.
말 그대로 소스의 특정 부분을 태그를 달고, 태그별로, 우선순위별로 보고, 완료 여부도 기록할 수 있다.
일단  Java 코딩용으로 사용하는 방법을 알아보자.
환경설정에서 C, C++, PHP, Javascript 등에 Task Tag 항목이 있다면 동일하게 사용할 수 있다.

 

[개발환경]
Mac OS X 10.6.8, Snow Leopard
Eclipse 3.7 Indigo version

1.Task Tag 추가 및 변경
환경설정 > Java > compiler > task tags
기존 Tag(FIXME, TODO, XXX)에서 XXX를 제거한다.
도대체 XXX는 무슨 의미인지 모르겠다. ㅠ.ㅠ
XXX 대신에 NOTE라는 Tag를 Low 우선순위로 생성한다.

각 태그는 다음과 같은 용도로 사용하면 될 듯 하다.

FIXME : 높은 우선순위, 버그 발생 부분, 시급한 수정을 필요로 한 부분에 대한 표시용으로 사용
TODO : 중간 우선순위, 테스트 필요, 주석 작성 필요 부분에 대한 표시용으로 사용
NOTE :  낮은 우선순위, 기능 개선 등이 필요한 부분, 기타 기록용

추가 할 때는 line number 공간에 오른쪽 마우스 클릭 후 Add Task하면 추가 가능

Show View > Task 선택 후 Task Tag를 우선순위 등에 목록으로 보고, 바로 이동가능
완료된 경우 목록 선택 후 오른쪽 마우스 클릭 후 Mark as completed를 하면 됨

종류별로 보고 싶으면 Task View 창의 오른쪽 상단의 역삼각형 클릭해서 Configure Contents 클릭해서 설정 가능
TODO만 보기, 완료되지 않은 것만 보기 등등의 세부 설정이 가능

Jun 122012
 

이전 Posting에서는 키보드 관련한 설정을 해봤고, 이제는 여기 저기 다른 환경에서 코딩하는 사람을 위해 탭, 공백, 들여쓰기 관련한 설정을 살펴보려고 합니다.

참고한 url : http://yatoyato.tistory.com/26

다음은 탭 대신에 공백으로 대체하고, 요즘의 추세에 맞춰서 편집 폭을 좀 늘려주는 것에 관련된 설정들이다.

 

[개발환경]
Mac OS X 10.6.8, Snow Leopard
Eclipse 3.7 Indigo version

1. General > Editor > Text Editors
Displayed tab width : 4
insert spaces for tabs 체크
show line number 체크

2. java > code style > formatter > active profile에서 Eclipse[built-in] 선택 후 edit
(1)indentation 탭에서
tap policy: spaces only
indentation size : 4
tab size: 4

(2)Line Wrapping 탭에서
maximum line width: 120

==> Profile 이름을 다르게 지정해서 저장

3.xml > xml files > editor
Line Width : 120
split multiple attributes each on a new line 체크
indent using spaces 선택

이 정도면 될듯 하다.

Jun 112012
 

iPhone 어플 개발"도" 해볼까 하고, 2년전에 구입한 맥북 화이트 2010를 가지고 스타2만 하다가, 이제 심심해서 ㅠ.ㅠ 슬슬 "코딩"도 해볼까 워밍업 중이다.
천천히 준비중이라서, 맥 환경에서 이클립스와 유용한 플러그인 쓰는 방법을 열심히 공부하고 있다.
한동안 그 결과물들을 정리해 나갈 예정인데, 이번은 그 처음으로 키보드 설정이다.

개발자 혹은 코더 관점에서 애플 키보드를 쓰면서 견디기 정말 힘든건 -.-a Home, End, Page Up, Page Down키가 없다는 거다.
물론 Fn이나 Command 키를 조합해서 쓰면 되는 걸 알고는 있지만,
습관이란 것은 쉽게 바뀌지 않아서 습관인거고,
한 손으로 누르던 것을 다른 손과 함께 눌러야 하는 게 불편한 것은 부인하기 어렵다.
게다가 맥북에다 일반 윈도우 PC용 키보드를 물려 쓰고 있고(애플 키보드 비싸다 ㅠ.ㅠ) 앞으로도 그럴 예정이라서,
적어도 이클립스 쓰면서는 편하게 살고자 방법을 2년만에, 이제서야 찾아 보았다.

[개발환경]
Mac OS X 10.6.8, Snow Leopard
Eclipse 3.7 Indigo version

1.KeyRemap4Macbook http://pqrs.org/macosx/keyremap4macbook/

필수 어플(?)이라고 하는데, 난 2년만에야 구글의 도움으로 찾게 되었다.
여러 기능이 있지만, 오로지 목표에만 집중하자.

2.Eclipse에서 환경설정

환경설정 > General > Keys 에서 다음을 찾아서 맵핑을 변경

Line Start : Home
Line End : End
Page Up : PgUp
Page Down : PgDn
Quick Fix : Ctrl + 1
Content Asistant : Ctrl + Space
Select Line Start : Shift + Home
Select Line End : Shift + End
Select Page Up : Shift + PgUp
Select Page Down : Shift + PgDn

이제 Home, End, Page Up, Page Down과 함께 Shift 누르고 Home, End, Page Up, Page Down 사용이 가능해진다.
아~ 행복하다 ^^

Sep 232011
 

Mysql의 문자열 관련 함수를 보면 구분자를 가지고 분해하는 함수가 없다. ㅠ.ㅠ
varchar로 선언한 컬럼에 'a,b,c,d,e'의 값을 넣고서 첫번째 값은 a, 두번째 값은 b처럼 얻어내고 싶어서 찾아보았더니 해당 문자열 함수 관련 페이지에 다른 사용자가 구현해놓은 것을 발견했다.

test라는 table의 ip 컬럼에 '192.168.1.1;192.168.1.2,192.168.1.3'의 값이 들어있을 때,
첫번째의 192.168.1.1을 얻어내려면, select replace(substring(substring_index(ip, ';', 1), length(substring_index(ip, ';', 1 – 1)) + 1), ';', '') from test
두번째의 192.168.1.2를 얻어내려면, select replace(substring(substring_index(ip, ';', 2), length(substring_index(ip, ';', 2 – 1)) + 1), ';', '') from test

ip 컬럼에 '192.168.1.1'만 들어있어도(구분자가 없어도) 문제없음을 확인했다.
'192.168.1.1;192.168.1.1' 처럼 같은 값이 들어있어도 잘 되는 것으로 수정완료함

참고한 원문 : http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring-index (하단 사용자 Comment 중)

Oct 132010
 

소스 코드 보호할 일이 있어서 몇년만에 찾아봤더니 장난 아니게 많아졌네.
뭐 암호화니 보호니 Encoder니 해도 결론은 그저 읽기 힘들게 만드는 것일뿐 그 이상도 그 이하도 아니다.
어떤 Encoder로 했느냐만 알면 해당 Decoder로 풀면 끝인 것이다.
그래도 시간적으로는 어느 정도 딜레이를 줄 수 있으니까, 혹시나 하는 마음에 하는 것이다.

찾아보니 상용으로 PHP Guard, ionCube PHP encoder, 오픈소스로 PHP Screw가 있었다.
이중에 PHP Screw로 일단 도전해보기로 했다. ^^*

 

다운로드 http://sourceforge.net/projects/php-screw/
설치 http://aramjo.blog.me/120099234678