안드로이드와 아이폰 SDK에 대한 결론

1. 애플은 사용자 경험뿐 아니라 개발자 경험까지 고려해 API를 만들었다.

그에 반해 안드로이드는 개발자 경험은 전혀 별로 고려하지 않았고

사용자 경험마저 살리기 어렵게 만들었다.

2. 애플 SDK에서 스택 구조가 직관적이기는 하지만 좀 더 고수준으로 끌어올렸더라면

어떨가 하는 생각을 한다. 그에 반해 안드로이드의 인텐트와 액티비티는

uni-tasking을 프로그래밍적으로 잘 정의한 백미라 할 수 있다.

3. 전반적으로 안드로이드 프로그래밍은 파편화의 연속이다. 따라서 안드로이드 프로그래밍을

할 때는 기본 프로그래밍 요소 외에 파편화에 따른 예외 처리 및 코드 분기가 꼭 필요하다.

4. 안드로이드 구 버전 API도 좀 더 고수준으로 만들어준다면 어떨까 하는 생각을 한다.

아니면 새로운 API에서 하위 버전 호환성을 최대한 지원한다면 개발하기가 한결 쉬울 것 같다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/05/25 01:17 2011/05/25 01:17
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/33

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

세상에는

스프링을 아는 개발자와

모르는 개발자가 있다.

스프링을 아는 개발자는 행복한 거고

모르는 개발자는 조금 불행한 거다.

-끝-
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/04/23 04:18 2011/04/23 04:18
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/29

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

adios는 아무 때나 쓰지 말자ㅠ

요즘 개콘을 보면

마지막 봉숭아 학당 끝날 때

adios라고 한다.

그런데 이건 잘못된 표현이다.

adios는 a (to) + dios (신)이란 뜻으로

프랑스어의 adieu와 어원적으로나 의미적으로 같으며

'영원한 안녕'이란 뜻이다.

따라서 adios라고 하면

적어도 살아 생전에는 다시 보면 안 된다.

개콘처럼 매주 다시 볼 거면

스페인어로는 hasta luego나 hasta la proxima semana(또는 vez)라고 해야 한다.

아니면 프랑스어로는 Au revoir라든가 A bientot라고 하든가.

여튼 adios는 아니다ㅠ

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/04/22 22:30 2011/04/22 22:30
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/27

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

기본적인 웹 보안

이게 전부는 아닐지언정

이 정도는 해야 제대로 된 거 아닌가 싶다.

1. 비밀번호/개인 정보 암호화

당연하다. 그런데 너무 안 지킨다. 최근 일어난 일련의 보안 침해 사례를 가만히 보면서

'과연 비밀번호를 암호화했을까?' 하는 고민에 빠졌다.

이에 대해서는 내가 내부 개발자도 아니고 공식적인 입장을 들은 바도 없으므로

그냥 '과연? 과연?'이라고 추측만 할 뿐이지만

만약 비밀번호나 개인 정보를 암호화하지 않았다면

정말 안타까운 일이 아닐 수 없다.

물론 가만히 있는 사이트를 먼저 침해한 해커가 나쁘다.

그런데 웹 사이트도 만일의 사태에 항상 대비할 책임은 있다.

기본적인 비밀번호, 개인 정보까지 암호화를 하지 않았다면

정말 유감이다.

2. 비밀번호 솔트

이건 선택 항목이지만 필수처럼 생각하고 꼭 적용하기를 바란다.

비밀번호 솔트를 적용하면 레인보우 테이블 같은 공격을 피할 수 있다.

예를 들어 해커가 충분히 많은 값을 입력해 레인보우 테이블 공격을 하면

비밀번호 암호화를 했다 하더라도 비밀번호를 역추적할 수 있다.

하지만 여기에 소금(salt)을 뿌려서 해커를 혼란케 하면

레인보우 테이블 공격조차도 무력화할 수 있다.

즉, 자동화된 프로세스만으로는 비밀번호를 알아내 사용자 계정에 침입하기가

몹시 어려워지는 것이다.

3. 보안 프로토콜의 사용

익명 접근이 가능한 곳에서는 http 프로토콜을 사용하더라도 상관없지만

일단 로그인한 후에는 https 프로토콜을 사용해 패킷을 암호화하는 게 좋다.

4.  사용자 크리덴셜 요청

사용자 인증 정보를 제공해 한번 로그인하면 쿠키가 만료될 때까지

자동 로그인을 지원하는 사이트라 하더라도

주요 개인 정보에 접근해야 할 때는 꼭 별도로 로그인을 거치게 하는 게 좋다.

예를 들어 온라인 쇼핑 사이트라면 카트에 담는 것까지는 익명으로 또는

자동 로그인 인증 정보를 바탕으로 얼마든지 지원할 수 있지만

실제 구매 시에는 항상 로그인을 명시적으로 요청하는 게 좋다. 이렇게 하지 않으면

중간자 공격 등을 통해 다른 사용자 계정에 침입한 해커가

사용자의 주요 개인 정보를 마음대로 사용해 이를테면

값 비싼 물품을 웹사이트에서 구매하거나

개인 정보를 빼갈 수 있다.

5. 웹 사이트의 권한 영역을 세분화한다

4번과도 일맥상통하는 얘기인데 이를테면 guest/user/purchaser/admin 등으로

웹 사이트의 권한 영역을 세분화하고 각 권한 역할에 따라 보안을 강화한다.

6. 기왕이면 보안 프레임워크를 활용한다.

보안 프레임워크를 활용하지 않으면 전체 사이트에 보안을 적용하기가 몹시 어렵다.

예를 들어 한 곳에는 보안을 제대로 적용했지만 다른 곳에서는 특정 보안 요소를 빼먹기 일쑤고

이를 검증하기도 쉽지 않으며, 더불어 똑같은 보안 요소를

적용하기 위한 코드를 반복적으로 적용(boilerplate 코드의 양산)해야 한다.

따라서 가능하다면 스프링 시큐리티 같은 프레임워크를 사용해 사이트 전체에 보안을

일관되게 적용하는 게 좋다.

7. 지금까지의 내용은 모두 내가 번역한 스프링 시큐리티 3 책 (위키북스)에 나오는 내용들이다.

-끝-
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/04/21 00:18 2011/04/21 00:18
, , , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/23

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

감정 노동

가끔 난

번역이 감정 노동이 아닌가 싶다.

본래 번역을 끝내고 나면

다른 저자나 역자들이 그렇듯이

책을 다시 안 펼쳐보는 나로서는

어떤 책은 가끔...

이대로 보내버리기엔 너무 좋은데...

하고 나 혼자 계속 읽어버리는 경우가 있다.

하지만 헤어질 때를 알아야 하기에

가끔은 헤어지기 싫어도 책을 손에서 놓아야 한다...

지금도 2권의 책을

손에서 내려 놓으려 한다...

언젠가 또 만날 날이 있겠지+_+

Je me suis bien amusé! Au revoir et merci :)
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/04/20 21:47 2011/04/20 21:47
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/22

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

Gmail의 놀라운 사용성

오늘 외국 저자한테 메일을 보내는데

파일을 첨부한다고 하고는 깜박하고

 '첨부한 파일은(attached is the file...)' 하고 쓰고 나서

 전송을 누르는 순간!

 제명이 됐어요;;;

Did you mean to attach files?

You wrote "attached is" in your message, but there are no files attached.  

Send anyway?

이런 경고창이 뜬다+_+

보통 파일 첨부한다고 하고 깜박하기가 쉬운데

이런 상황을 고려해 gmail에서는 메일을 전송하기 전에

한 번 내용을 스캔하고 '파일 첨부한다고 했는데

첨부된 파일은 없네? 확실해? 이게 최선이야?' 하고 물어봐주네

완전 소름 돋넹ㅠㅠ
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/04/13 12:49 2011/04/13 12:49
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/20

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

안드로이드 앱을 만들다가

SQLite랑 자바 커스텀 VO랑 일일이 매핑하는 게

너무 싫어서 자동화할 방법이 없을까 찾던 중

PropertyUtils를 써서 자동화 해야겠다 생각했는데

웬걸... beans.jar가 없어서 안 된다.

그래서 고민 끝에 속성 조회 시점에

메서드를 모두 추출해서 getter와 setter를 각기 다른 맵에 넣고 이걸 꺼내서 사용하기로 했다.

이렇게 하고 나니 VO에서 SQLite로 갈 때도 코드를 반복해서 쓰지 않아도 되고

필드를 빠뜨릴까 염려하지 않아도 되고

타입이 틀릴까 걱정하지 않아도 된다.

참 편하넹...
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/03/16 03:18 2011/03/16 03:18
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/9

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

Drive, she said!

지금 번역 중인 플래시 게임 완벽 가이드 (가칭)에

있는 게임 제목 중 하나가 'Drive, she said'인데

영어로 해도 이상하고 한글로 '드라이브 쉬 새드' 해도 이상하고

해서 그냥 '오빠, 달려'로 번역할까 생각 중이다.

게임 스토리도 여자 친구가 삐졌는데 드라이브 하면서 하트를 몇 개 먹으면

삐진 게 풀린다나 뭐라나;; 그런 내용이다.

참고로 이 책 대박이다...

게임 아이디어뿐 아니라 기술적으로나 철학적으로도 훌륭하고

한 번 봐서는 아무리 집중해서 읽어도 그 내용을 다 뽑아 먹을 수 없는

대박 책이다.........

문득 한국의 플래시 게임 개발자들도

이런 식으로 게임을 만들고 있을까? 하는 생각이 들었다.

만일 그렇지 않다면 꼭 이 책에 나온 대로 게임을 개발하기를 바란다.

게임 프레임워크, 디자인 패턴, 재사용성, 반복(iteration)을 통한 두 번째 게임의 개발,

비트맵 드로잉, 최적화 원칙, 인공지능까지...

게임에 필요한 모든 내용을 다루는 책이다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2011/03/13 12:29 2011/03/13 12:29
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/8

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

It's so funny...

to have my name as a related keyword to spring security 3 on naver :)

I've never been this related with spring security or any framework before ^^

A lot of thanks to Peter Mularien and Wiki books publishing corp.

Vous m'avez fait beaucoup rire =)
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by joshy21

2010/12/17 20:31 2010/12/17 20:31
Response
0 Trackbacks , 0 Comments
RSS :
http://joshy21.com/weblog/rss/response/6

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다


블로그 이미지

- joshy21

Archives

Authors

  1. joshy21

Recent Trackbacks

Calendar

«   2012/02   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      

Site Stats

Total hits:
3587
Today:
2
Yesterday:
2