pinkred's mobile program

pinkred mobile programer

Archive for 3월 2010

글을 쓰고 알린다라는것..

leave a comment »

내가 이 wordpress를 하는 이유중에 하나인데 정말 어려운것 같다. 인기이는 블로그들의 대부분은 전달하는 것을 잘 정리해서 정말 남이 보더라도 이해하기도 쉽고 정보를 쉽게 얻을수 있도록 되어있다. 나도 그렇게 하고 싶은데 시간도 많이 가고 내용도 찾아야하니 이게 보통 어려운게 아니라는 것을 알았다. 블로그를 한다는 것은 정말 많은 노력과 시간이 들어가며 정성이 장난이 아닌것 같다. 역시 쉬운일은 없다.

Written by pinkredmobile

2010/03/31 at 4:04 pm

UI 설계가 변하고 있다.

leave a comment »

현재 모바일을 시작하는 사람이야 별다를것이 없겠지만 이전부터 어플리케이션을 짜오던 사람들은 화면 변경을 위해서 각각화면별로 Define을 하고 각각의 state를 바꾸고 모든 화면을
switch문으로 하여 각각의 화면별로 보여댜하는것들 이벤트들을 화면별로 구성하여 paint문, event문을 보면 너무나 길게 화면별 define문을 볼수가 있다.
내말이 잘 이해가 안된다면..예제로..이전에 자바 코드를 코딩할때
아래와 같이 프로그래밍 하였고 머 위피코드도 별반 다를게 없었다.
void paint()
{
switch(state)
{
case INTREO:
case PLAY:
….

}
}

이전에는 메모리가 중심이였기 때문에 메모리를 절약을 위해서 보기 힘든 코드를 작성하였다.

최근에는 화면단위로 코딩하는것을 추천하고 있다. 아무래도 메모리도 좋아지다 보니
실제 쉽게 코딩하고 누나가 이해하기 쉽도록 하는것이 더욱더 효율이 좋아지기 때문이다.

결국 화면에 필요한 부분만 해당 파일에 코딩하면 되는것이다. 지금 이글을 보실때 당연히 그렇게 하는것이 맞지 않느냐고 하실수도 있다. 머 이전에는 그랬다는 것이다.

참고로 왜 wordpress는 글을 쓸때 한번쓰고 다시 오면 내용을 입력하면 위아래로 스크롤바가 왔다갔다거리면서 현재 쓰고 있는 내용이 보였다가 올라갔다가 정말 귀찮게 한다. 이거 어떻게 수정안되나?

Written by pinkredmobile

2010/03/31 at 3:59 pm

프로그래밍(programming)에 게시됨

Tagged with ,

T아카데미 오픈

leave a comment »

ZDNet Korea의 기사
아이폰 이후의 개인 개발자, 1인 창업의 기회와 성공 사례가 생기면서 SKT에서도 활성화 차원에서 만든것 같다.
SKT 관련 Widget, SKAF가 있는것으로 봐서 역시 SKT 활성화에 한목 거들지 않을까 생각된다.

T아키데미 관련 홈페이지로서 안드로이드, 아이폰, 위피 등 관련 교육도 많이 있다.
의외로 프로그래밍 뿐만 아니라 컨텐츠/UI 등등에 관련된 교육도 있어 모바일 전반적인 부분에 대한 교육이 있어 마음에 든다.
저녁에 잠깐하는 것으로 알고 있었는데 교육시간도 9시30분터 18시30분으로 이거 완전히 모바일 교육센터라고 봐야할것 같다.

강사들은 아무래도 이노에이스에서 충당하지 않을까 생각된다. 현업에 종사하는 강사진이라고 했으니….

오늘 이노에이스에 많은 분들이 오셔서 .. 나야 멀리서 구경정도만 했다. 생각보다 높으신 분들이 많이 온것같다.
모바일 교육센터가 생긴것에 축하하면 현업에 종사하는 사람으로 시간내서 듣고 싶지만 아놔..하루종일 5일동안…아농ㄹ모양ㄴ미ㅣㄹ
회사에서 안시켜주지 않을까..

참고로 인재양성뿐만 아니라 프로그래머를 우대할수 있는 환경이 빨리와야한다고 생각한다. 언제까지 우리는 총알인것인가.

Written by pinkredmobile

2010/03/30 at 2:38 pm

프로그램(program)에 게시됨

Tagged with

우리는 정석을 지키고 있는가..

leave a comment »

대학교 수업시간에 프로그래밍의 기초를 보면 프로그래밍 순서가 나온다.

요구분석 -> 설계 …….. 등등의 순서가 맞는지 지금은 가물하지만 대략 이렇다한다면 우리는 지키고 있는지 의문이다.

많은 프로그래밍을 해보았지만 대부분의 혹은 일부분의 사람들(소심해졌다.) 은 일단 프로그래밍을 시작한다.

워낙 바쁘고 프로젝트 기간도 별로 없는데다고 요즘같은때에는 요구, 설계가 같이 진행되면서 바뀌는 부분이 너무 많아서 솔직히 힘들다가 정답일듯 하다.

하지만 그렇지 않은 프로젝트를 진행할때에는 한번쯤 해보는 것도 나쁘지 않으리라 생각된다.

설계를 해본다는 것은 전체적인 시나리오를 이해할수 있어야만 가능하고. 설계를 하면서 실제 클래스, 함수(메소드)등을 써가면서 할경우에는 더욱더 설계가 빛을 바란다.

또한 여기에다가 시쿼스 다이어그램까지 들어가면 아놔 이거 정말 멋진 프로젝트가 될수 있다.  문서정리 또한 깔끔하게 진행되지 않겠는가…

이렇게 당연한것을 안하고 있다는 것이다.

이런부분을 크게 느낀것이 최근에 한 프로젝트에서 내가 80%정도 이해할수 없는 분야의 프로그래밍을 급하게 진행해야하는데 정말 머가 먼지 모르겠더라.

설계고 모고 전체가 머리에 안그려져서 너무 힘들었던 경우가 있는데 전체가 안되어서 부분부분으로 해서 설계를 맞추다 보니 나중에 정말

몇번을 엎었는지 모를정도로 코드를 수정했다. 나중에 이해다 되고 코드가 안정화 되었을때는 기존 코드의 2/1 ~ 3/2정도가 빠졌다.

이런것이 설계의 중요성이다.  초보 프로그래머한테 꼭 말해주고 싶다. 일단 설계를 해보라고 꼼꼼히 내가 쓸 함수(메소드) 네이밍까지 해가면서 설계를 완성했을때

코드는 덤으로 따라온다.

Written by pinkredmobile

2010/03/30 at 2:06 pm

모바일 프로그래머는 소심해야한다.

leave a comment »

모든 프로그래머에 대해서 그렇다고는 말할수 없지만 프로그래밍을 할때는 소심해야한다.  지금은 예전과 같지 않지만 예전에는 힙사이즈가 128~300k 이던 시절이 있었다.

정말 어떻게든 적게 사용하고 최소한으르 프로그래밍해야하기 때문에 최적화가 정말 많이 필요하던 시절이였다. 그러다 보니 변수, 함수(메소드), 클래스, 이미지 등등 용량이 나가는 것은 무엇이든지 재보고 전체 메모리를 얼마나 차지 하는지 꼼꼼히 계산하던 시절이였다. 지금도 컴퓨터에 비하면 많지는 않지만 이런시절을 프로그래밍을 하던 나에게는 지금 모바일 프로그래밍을 하는 사람들과는 사뭇다르게 프로그래밍을 한다. 1픽셀의 오차, 이미지의 용량 등등을 고려하지 않을수가 없는 것이다.

소심 내가 만든 함수(메소드) 에 예외처리가 되어있는지 버그가 생기지 않을런지 등등의 걱정은 누구나다 한다. 하지만 걱정만 하고 코드에 실천은 실제 해당 버그가 생기고 나서야 들어간다는 것이다. 우리는 프로그래밍에 대한 많은 책들을 보면 언제나 내가 만든 함수에 대한 확실한 예외처리가 되어있다.

아래와 같은 코드가 있다고 하자 완벽해 보인다. 하지만 a, b의 변수값에 의해서 int형을 초과할수도 있고 a, b의 길이에 대한 요구 사항도 없다.

그러므로 버그가 발생할 확율이 올라가는 것이다.

int add(int a, int b)

{

    return a + b;

}

프로그래밍을 하다보면 함수길이가 길어지면 불안해지기 시작한다.  소심하기 때문이다. 그런데 보통 이런경우 100% 버그가 있기 마련이다.

책에는 함수하나에는 하나의 기능을 넣도록 되어있다. 여러가지 기능이 들어가면 분명 버그가 생길 확율이 높아지기 때문이다.

솔직히 함수(메소드)가 잘 정리되어서 소스가 작성되면 보기도 좋고 이해도도 높아진다. 정리가 되어있다면 긴 함수도 그렇지 아니한가? 맞다 하지만

조금더 깔끔하게 정리된다고 할수 있다. 속도에 대해서는 당연히 0.00001초 정도 긴소스가 유리하지만 지금 시대의 프로그래밍 기법은 내가 코딩한 내용을

주석없이 누구에게 오픈하더라도 이해할 수 있는 코드를 작성하는게 정석이라는 것이다. 이름하나하나 소심하게 지어야한다.

일상생활은 대범하게 프로그래밍은 소심하게…

Written by pinkredmobile

2010/03/30 at 1:41 pm

기본적인 속도 향상 프로그래밍

leave a comment »

이전에 남이짠 코드를 속도 이슈가 있어서 시간, 귀차니즘이 발동해서 조금만 고치고 싶은 마음에 아주 간단한 몇가지 수정으로 2~3배 정도의 속도 향상이 있었다.

누구나 생각하기 쉬운 부분인데 아쉽게 코드상에는 잘 방영되지 않는 방법으로 if, switch문의 사용이다.

문자를 파싱해야하는 코드여서 문자 비교에 많은 시간이 걸렸던 코드로 문자 비교를 전부 if문으로 처리해놓았다.

이는 모든 문자를 일일이 전부 비교를 해야하니 엄청난 부하가 걸리게 되었고, 단순히 switch문으로 변경해서 비교 문자열을 낮은차순으로 차례로 sort해서

넣어논 결과 2~3배 정도의 속도 향상이 생겼다.

머 대략 아래와 같다라고 할수 있다. 여기서 중요한 점음 switch문은 case가 sort되어있지 않으면 if문과 동일하게 동작한다는 것이다.

if( strcpy(“abcd”, temp) == 0)

else if(strcpy(“bcd”, temp) == 0)

…..

—>

switch(tem[0])

{

     case ‘a’:

        break;

….

}

Written by pinkredmobile

2010/03/30 at 1:16 pm

프로그래밍(programming)에 게시됨

Tagged with , , ,

도대체 wordpress.com 은 모하는 곳인가???

leave a comment »

최근 인터넷 검색 중 에스티마의 인터넷이야기 을 발견하고 나서 나도 한번 다시 새로운 변화가 있어야하지 않을까라는 생각이 들었다. 단지 그생가에 시작한곳이 wordpress.com이였다. 하지만 정말 여기는 머하는 곳인가 트위터도 아니고 내가 알아낸것은 단지 위키피디아 검색을 통한 정의 이다. 아 대 실망 여기는 정말 어떤곳이길래 우리나라의 어느정도의 파워있는 블로그를 작성하는 곳인가 생각이 든다.

블로그를 쓴것은 내가 예전에 이글루스를 쓴 이후로는 없다는것이다. 프로그래머 아니 나한테는 정말 귀찮은 존재인 것인가 아니면 또 다른 업그레이드 인가 하는 생각이 든다.

여튼 이왕 시작한거 한번 열심히 해보자는데 의미가 있다. 그리고 블로그 작성 방법점 공부해야하는 까탈스러움이 존재한다.

도대체 여기는 글을 다 쓰면 어떻게 완료를 해야하나…아놩래ㅗㅁ인ㄹ…5분이 지났으나 아직 완료를 못하고 있음..

Written by pinkredmobile

2010/03/30 at 1:00 pm