분류 전체보기

    [VC++] Google C++ Style Guide

    http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml Java를 좋아하긴 하지만 C++은 무시할 수 없지.

    Postgresql 랜덤값 출력

    개발중 테스트를 위해서 테이블에 가상의 데이터 수치를 넣어야 하는 경우가 생겼다. sql에서 제공하는 랜덤 함수를 이용하면 금방 될 것 같았다. Postgresql에서는 random이라는 함수를 제공한다. 최대값은 100에 소수점 2자리까지만 추출을 해보기로 했다. round(cast(random() * 100 AS numeric), 2) random()의 결과값은 0.~1.의 값이 나온다. 100을 곱해줘서 최대값 100을 만들어준다. 소수점 2자리까지 자르기 위해서 round()함수를 쓰고, random의 결과값은 double인가 그렇기 때문에 numeric으로 타입을 변환해준다.

    안드로이드 앱 'SD 카드로 이동', '디바이스로 이동' 기능

    안드로이드에서 설정 > 응용프로그램 > 응용프로그램 관리 > 에서 앱을 하나 선택하면, 'SD 카드로 이동', '디바이스로 이동'을 눌러서 저장위치를 선택할 수 있다. 물론 되는 앱도 있고 그렇지 않은 앱도 있다. 이 기능은 안드로이드 2.2부터 지원되는 기능이다. 따라서, 폰 펌웨어 자체가 2.1 이하라면 어떠한 앱도 이 기능을 지원하지 않는다. 펌 웨어 2.2이상 폰에서는, 이 기능을 지원하도록 설정해준 앱들만 사용 가능하다. 개발시, 이것을 지원해주기 위해서는 Platform 2.2, API Level 8이 필요하다. AndroidManifest.xml 에서 두가지만 잘 설정해주면 된다. 과 같이 최소 SDK 버전 8이상을 설정해주고 ... manifest태그에 android:installLocat..

    안드로이드 여러 버전의 APK 배포

    원래는 하나의 APK만 마켓에 올릴 수 있었지만 얼마 전(2011년 7월쯤)부터 마켓에서 여러 버전의 APK를 올릴 수 있도록 지원해준다고 한다.[1][2][3] 각기 다른 플랫폼 버전, 화면 구성, OpenGL 텍스쳐 압축 포맷에 따라서 APK를 따로 올릴 수 있는 것이다. 올리는 방법은 기존에 올라가있는 APK에 추가적으로 APK를 올리고 같이 활성화할 수 있는 듯하다. (아직 나도 안해보았다.) 개발자 입장에서 볼 떄, 한 가지 버전에 따라서 여러가지 장비에 맞춰 개발을 각기 하고 관리한다는 것은 매우 번거롭고 힘든 일이다. 굳이 따로 하고 싶지 않았지만 이것에 대해 찾아보게 된 이유는 기존에 올렸던 앱이 2.1만을 지원하게 해놓았는데, SD카드와 기기설치를 고를 수 있게 해달라는 요청이 있어서였다..

    어쩌면 인간은..

    지식채널 e "7일간의 기적" http://todayhumor.co.kr/board/view.php?kind=&ask_time=&search_table_name=&table=humorbest&no=391418&page=1&keyfield=&keyword=&mn=&nk=%B5%BF%B9%B0%C0%C7%C7%C7&ouscrap_keyword=&ouscrap_no=&s_no=391418&member_kind= 재미있게 보고있는 지식채널 e의 이번 내용은 7일간의 기적이다. 죽어가고 있던 노인들이 20년 전처럼 말하고 활동하고 생각하다보니 신체나이가 그 당시인 50대 수준으로 향상되었다는 놀라운 실험내용이었다. 인간은 단순히 육체가 노화함으로서 죽어가는 것이 아니라, 생각과 행동이 정지하면서 죽어나는가보다. ..

    끝나기 전까지는 끝난 게 아니다.(It ain't over till it's over)

    그냥 문득 회사일을 하다가 너무 힘이 들고 짜증이 나기 시작했다. 이것보다 더 힘들 때도 많았는데 겨우 이정도를 견디지 못하는 것은 누적되는 삶의 무게 때문인지도 모르겠다. 고생하고 힘들다고 해도 더 나은 미래를 위한 투자라고 생각하며 버텨왔는데 시간이 지나도 제자리인 나를 발견할 때면, 나는 견딜 수 없이 짜증이 나기 시작했다. 그런데 문득 "지붕 뚫고 하이킥"에서 본 대사가 떠올랐다. 야구에서 나온 명언. 끝나기 전까지는 끝난 게 아니다.(It ain't over till it's over) 그래. 어차피 내 인생이 끝나기 전까지는 끝난게 아니다. 힘을 내자고.

    request.getRemoteAddr()가 0:0:0:0:0:0:0:1이 나오는 이유

    개발할 때 request.getRemoteAddr();를 쓸 경우 보통은 ip가 제대로 나오지만 서버에 접속할 때 localhost로 접속한 후에 request.getRemoteAddr();를 하면 0:0:0:0:0:0:0:1가 나온다. localhost 대신에 ip를 제대로 적어주어야 올바른 ip가 출력된다.

    Windows Phone7 개발 관련 사이트

    개발자 커뮤니티 1. AppHub (http://create.msdn.com/ko-KR/) - 기존의 XNA Creators Club이 2010년 10월 11일에 App Hub로 개편됌 - 윈도우폰7과 XBox Live 인디 개발자들을 위해 무료 툴, 소스 , 커뮤니티 등 제공 2. XNA 게임 스튜디오 익스프레스(http://cafe.naver.com/xna) 3. 윈도우 모바일 개발자 카페 (http://cafe.naver.com/winmodev) 블로그 1. 곰동의 연금술사 (http://gomdong-alchemist.tistory.com/) 2. 서진호의 윈도우7 이야기 (http://blogs.msdn.com/b/jinhoseo/) 3. Think out of the Box (http://bl..

    [WIndow Phone7] The type 'System.IObservable`1<T0>' is defined in an assembly that is not referenced.

    Error3The type 'System.IObservable`1' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Observable, Version=2.0.5.0, Culture=neutral, PublicKeyToken=24eec0d8c86cda1e'.... 내가 제일 싫어하는 에러다. 무엇이 문제인지 모호하게 뜨는 에러, 이래서 MS 개발을 싫어했다. 당연히 국내에는 이런 형태의 문제에 대한 웹 문서가 없다. 하지만 역시 구글신님께서 알려주셨다. [1]을 보면 아래쪽에 친절하게 System.Observable를 Reference에 추가하지 않아서 생긴 문제라고 알려주었다. 괜히..

    [안드로이드] TabActivity에서 startActivityForResult의 결과 받기

    잠깐 이 문제로 많은 난항을 겼었다. 일반적인 Activity의 경우에는 startActivityForResult로 호출하고 호출되어진 Activity에서 setResult에 결과를 넣어주면 호출한 Activity에서 onActivityResult를 통해 결과를 받을 수 있다. 그런데, 문제는 TabActivity를 호출해서 TabHost의 Activity에서 결과를 돌려주려면 문제가 생겼다. 다음 상황이다. A.class - 메인 페이지, B 클래스를 startActivityForResult로 호출 B.class - TabActivity로서 TabHost로 C 클래스를 갖고 있다. C.class - setResult로 결과를 돌려준다. 이러한 구조를 갖고 있을 경우에 결과를 돌려줄 때, C 클래스에서 ..