Coding/Java 삽질기2020. 5. 14. 08:54

자연스러운 카드 이동 화면 구현

카드를 마우스로 드래그 하여 이동할 경우, 드래그를 시작한 마우스의 좌표(smx, smy) 와

카드의 좌측 상단 포인트 (scx, scy)에서 가로, 세로 차이 W (scx - smx), H (scy - smy)를 구합니다.

그리고 마우스를 드래그 하는 동안 마우스 커서 위치에 카드를 그려야하는데,

현재의 마우스 좌표 (mx, my) 에서 위 에서 구한 W, H 의 거리만큰 이동한

(cx = mx - W, cy = my - H)를 시작 점으로 하여 카드 이미지를 그려주면,

자연스러운 카드 이동 화면을 구현 할 수 있습니다.  

 

참고소스:

https://github.com/chobocho/solitaire/commit/cf83dcc10c0c890aaf0cda1f73323a33f7092d87

Posted by chobocho

댓글을 달아 주세요

Tip/Life2020. 5. 11. 23:41

사무실에서 나의 느린 문제해결 속도에 답답해 하면서,

문득 내가 신입 때 이런 걸 알고 준비했면 지금 더 좋지 않았을까 하는 것들이 무엇일까 생각해 보았다.

 

1) 문제해결 방법

몇 달 전 친구와 이야기를 하다가, 네가 면접관이면 새로운 멤버를 구할 때, 어떤 질문을 할 것인가 하고 물어 본적이 있었다. 친구 曰 "문제가 주어졌을 때, 어떻게 해결 할 것인가?"를 물어보겠다고 했다. 그 답을 듣고, 내가 문제를 받고 어떻게 처리하는가를 되돌아 보았다. 그리고 주위에 일을 잘하는 분들을 보면, 일을 잘하는 분들은 차이점이 있었다.

첫째, 문제를 받으면 문제를 명확하게 정의 한다.

문제가 주어지면, 문제의 해결 방향을 정의 한다.

이 문제가 컨셉에 따른 올바른 동작인지,

단순 버그여서, 프로그래밍으로 수정하면 되는지,

과거에 이력에 있는 문제이어서, 수정을 하려면 관계된 다른 부서와 협의가 필요한 것인지,

단순 협의로 정리 할 수 있는 문제인지 등등 문제를 보고 진행 방향을 빠르고 정확하게 판단을 한다.

물론 올바른 판단능력을 가지기 까지는 많은 시행 착오와, 좋은 기억력이 있어야 하고, 자주 선임자들에게 물어서 이력을 파악하고 있어야 하는것도 중요하다.

둘째, 문제 진행 사항 보고

문제의 진행사항을 자주 윗 사람에게 보고하여서, 호미로 막을 일을 가래로 막는 일을 방지한다.

알지 못하는 숨은 이력이 있을 수 있기 때문에, 문제의 진행 상황 보고는 중요하다

셋째, "이 일은 내꺼" 라는 마인드

일을 잘하는 분들은, 모든 일이 자기 일이라는 마인드로 임한다. 문제의 주인 의식이 있다.

어려운 문제가 주어지더라도, 대부분의 사람은 해답의 근처까지는 간다.

그런데 거기서 해답을 찾느냐 못찾느냐가 실력이다.

해답의 근처에서 해답을 찾으려는 노력의 차이가 쌓이고 쌓여서, 고수와 하수가 갈린다.

끝까지 포기 하지 않고 답을 찾는 자세 이것이 중요하다.

 

2) 프로그래밍 스킬

초딩 시절, 생활의 길잡이라는 교재에서 성공한 사람들은 10년간 하루 4시간씩 공부한다는 내용의 글이 있었다.

365일 x 4시간 x 10년 = 14600 시간이고, 주말을 제외하고 계산해도 10440 시간, 10000 시간이 넘는다.

아웃라이어에서 이야기한 1만 시간의 법칙을 우린 초딩 시절에 배웠으나 잊고 살고 있었다.

일을 잘하는 분들은 보면, 끊임 없이 배우고, 공부한다. 남들이 짜놓은 코드를 보면서, 공부하고,

왜 그렇게 짰는가를 생각한다. 그리고 최신 트렌드에 뒤쳐지지 않도록 끊임없이 공부한다.

내가 신입때로 돌아간다면...

Design pattern, Refactoring, 알고리즘 공부에 시간을 많이 쏟았어야 하는 아쉬움이 남는다.

 

3) 어학

글로벌 시대에 어학의 중요성은 아무리 강조해도 부족함이 없다.

영어는 RFC 문서는 자유롭게 읽고, 외국인과 전화 회의를 할 정도의 어학 실력은 반드시 갖추어야 한다.

큰 IT 기업에서 외국인과의 협업은 필수 이고, 컴퓨터 관련 최신 기술은 모두 영어로 나오기 때문에,

영어는 생존을 위한 필수이다. 그리고 미래를 위해 중국어도 반드시 공부해야 한다.

 

4) 체력 

미생에 보면 "좋아 하는 일을 발견하면 체력을 길러라" 라는 문구가 있다.  나이가 들면 결국 체력 싸움이다.

본인이 좋아해도 체력이 안되면 할 수 가 없다. 평소에 꾸준히 건강관리를 하는 것이 중요하다.

'Tip > Life' 카테고리의 다른 글

신입 사원때 알았으면 좋았을 것들  (0) 2020.05.11
Posted by chobocho

댓글을 달아 주세요