예전부터 아이팟(아이폰) 어플리케이션을 만들어보고 싶었습니다.
그런데 수능, 등등 여러가지 문제로시간이 부족했었는데, 수능이 끝나고 겨울방학까지 한 지금은 시간이 넘치므로 ;) 어플리케이션 제작에 도전해보려고 합니다.
우선 아이팟(아이폰) 어플리케이션을 제작하려면 iPhone SDK를 설치해야 한다고 하더군요. 그런데 그 조건은 반드시 MAC OS여야 하고, 레오파드 10.5.8 이상의 버전에만 설치가 가능해서 우선 MAC의 운영체제를 준비해야하는데요.
제가 사용하고있는 데스크탑에 Vmware라는 프로그램으로 가상의 공간을 만들고 맥을 설치해서 그곳에 아이폰 SDK를 설치하여 사용할까 했습니다만, 데스크탑의 성능이 그닥 좋지못해서...[각주:1]
그냥 나중에 외부에서도 사용할 수 있도록 제 넷북에 설치하기로 했습니다.
우선 인터넷에서 제 넷북(HP mini 1013tu)과 맥OS의 호환성을 확인해야 하는데요,
'웹초보'께서 블로그에 차트형식으로 정리를 해놓으셔서 손쉽게 확인할 수 있었습니다.(관련링크 : 맥 OS X의 넷북 호환성 차트)
제 넷북은 mini1000버전과 하드디스크가 SSD형식인 것만 다를 뿐, 그 외에는 모두 같으므로 mini1000의 호환성을 확인하면 되었습니다.
그리고 torrent에서 OS X를 구해서 설치하려는데,, 처음에는 넷북에는 CD-ROM이 없어서 가지고있는 4GB USB에 CD영역을 생성해 그것을 이용해서 설치하려고 했습니다. 그런데,, 그게 뜻대로 잘 되지않더군요. 울트라iso를 이용해서 iso파일을 열어보면 위에 "부팅가능"이라고 표시되지 않고 "하이브리드"라고 표시가 되더군요. 뭔가 좀 다른 것 같습니다.
그래서 결국 넷북에 제 CD-ROM을 연결시키기 위하여 용산가서 IDE:SATA-USB 젠더를 구입한뒤, iso파일을 네로를 이용해서 DVD를 구운 뒤 넷북에 연결해서 그것으로 부팅을 도전했습니다.
그런데도 이번에도 또 안되더군요 ㅜㅜ
부팅은 되는데, 도스화면에서 안넘어갔습니다.
그래서 결국 네이버링을 이용해서 우연히 같은 1013tu기종에 MAC을 설치하신 분의 글을 읽고 그것대로 따라했습니다.
(관련링크 : 1013tu 레오파드 설치기)
름베르님께서는 우선 iDeneb v1.3(10.5.5)를 설치한 뒤, 업데이트를 이용하여 10.5.8로 올라가는 방법이었습니다.
iDeneb의 상위버전(v1.6-10.5.8)도 존재하지만, 설치를 도전하면 호환성에 문제가 있는지 오류가 발생하더군요[각주:2]
iDeneb v1.3은 구글링을 통해 손쉽게 토렌트를 손에 넣어서 금방 다운로드를 할 수 있었습니다.
그것을 이용해 름배르님의 글과 제공해주신 링크를 봐가면서 차례차례 해나아갔습니다.
(관련링크: 외국 사이트: OS X 인스톨 가이드)
꾀부리면서 외국 사이트에 나와있는 중간단계를 SKIP한적도 있었는데[각주:3]...그러면 안되더군요..
바로 뒤에서 막혀서 처음부터 다시 설치 한 것이 여러번이나 됩니다 ㅜㅜ
그렇게 iDeneb v1.3을 설치하고, 제공해주는 것을 따라서 각종 드라이버를 설치하고 카멜레온 버전을 올리고, DSDT Patcher를 이용하여 패치를 한 다음 업데이트를 했습니다. 시간은 꽤나 오래걸렸지만 다행히 무사히 업데이트를 하여 10.5.8로 올렸습니다.
아, 외국사이트에서 제공해준 패치파일에 그래픽드라이버도 들어있지만[각주:4]거기서 말하는대로 절대 설치하면 안됩니다. 그거설치하면 바로 커널패닉 발생해서 처음부터 다시해야합니다 ㅜㅜ
10.5.8업데이트를 한 다음에, 그래픽드라이버를 설치하시려면, 구글링 조금만하시면 금방 그래픽드라이버를 받으실 수 있습니다.
저같은경우는 여기에서 압축 파일을 받은 다음 그래픽 드라이버쪽만(Gma950폴더) Kext helper를 이용하여 설치하였습니다.
아, 비밀번호 걸리지 않은 상태에서는 Kext helper가 작동하지 않으므로, 도로 비밀번호 설정을 해줬습니다 :)
이렇게 모든 셋팅을 마친 다음 아이폰 SDK를 설치하고 용량을 확인해보니 1GB도 안남더군요..아슬아슬...
역시 SSD는 무리인가,,라는 생각도 가끔 듭니다 ㅜㅜ
정 안되면 Hdd로 돌아갈까...하고 생각도 하게됩니다.(물론 다시 설치할 것을 생각하면 머리아프지만..)
그래도 '드르륵 드르륵'하고 HDD 돌아가는 소리가 나지않고, HDD에 비하면 충격에 강해서 그걸로 위안을 가지렵니다~
그럼 나중에, XCode를 이용하여 어플리케이션 제작에 대한 내용과 스크린샷 몇장 올리겠습니다.
아아, 맞아.제가 아이폰 SDK를 배우기위해 구매한 책이 있는데요.
제목이....아.이책이예요.
책 제목은 『터칭! 아이폰 SDK 3.0』 저자는 '강덕진[각주:5]'이란 분이시고, 기본적인 설치부터 각각 툴에 대한 설명, 예제 등 모두 탄탄하게 제작된 책입니다.
책값은 32,000원 전 교보문고에 직접 가서 구매하면 더 쌀까 생각하고 다른책도 살겸 교보문고에서 구매했는데...
정가 그대로 받더군요ㅜㅜ!!! 더구나 실수로 회원카드도 두고와서...적립도 못했답니다ㅜㅜ
쨋든 아이폰 SDK 개발에 대하여 배워보고 싶으신 분께서는 ↑↑위의 책 강력 추천합니다!
아, 프로그래밍에 대하여 아직 접해본 적이 없으신 분께서는 C나 어떠한 한 언어로 기초적인 개념을 배우시고 접하시면 다가가는데에 더욱 손쉬우실 것이라 예상합니다!
듀얼과 쿼드가 대세인 세상에서 아직도 싱글코어[펜티엄4 프레스캇] 사용중입니다.. [본문으로]
요즘 '자신의 블로그에 광고를 다는 것'만으로도 수익을 올려 손쉽게 용돈 벌이를 할 수 있다는 점으로 인하여 많은 블로거들이 자신의 블로그에 광고를 설치하기 시작하였습니다. 물론 저도 보다시피 블로그에 광고를 설치하고 있습니다^^;
하지만 몇몇 블로그에 가보시면 화면의 절반. 혹은 그 이상이 광고로 가득 차 있어서 블로그에 방문하는 유저들의 눈살을 찌푸리게 합니다.
그런 유저들을 위한 프로그램으로 hipple.pe.kr에서 제공하는 프리웨어 '센스부족'이라는 프로그램이 있습니다.
이 프로그램은 사용자의 컴퓨터에 가상의 웹 서버를 생성하고(서버를 생성하나, 빈 페이지만 나오도록...) 광고를 차단할 시, hosts파일을 이용하여 광고의 주소를 자신의 컴퓨터에 생성된 웹 서버(빈 페이지)로 연결하는 형태였습니다.
프로그램을 공부하고 있는 저는 「이 프로그램을 한번 만들어보고 싶다」라는 생각이 들었습니다. 제작자님께서 원리를 친절히 적어주셨고, 가상 웹 서버를 만드는 방법은 모르지만, 인터넷에서 찾아보다가 movsd님의 티스토리 블로그에서 로컬 웹서버를 생성하는 방법을 찾았습니다.
이렇게 저렇게 구한 자료들을 이용하여 부족한 실력으로 시간을 투자하여 결국 만들긴 만들었습니다만...아직 API에 대한 지식은 기초적인 것들밖에 없어서, 결국 콘솔로 만들었습니다^^;
그래도 간신히 만들고 나니 이것을 제작하면서 「많은 것을 배웠다」라는 기분이 들더군요.
프로그램 구성입니다.
기본 실행 프로그램인 'NoAdProject'와 그 아이콘, 그리고 가상 웹 서버 생성 파일인 brhttpd,
그리고 License와 Read_Me파일이 들어있습니다.
License와 Read_Me파일은 이름 그대로, 저작권 관련 정보(원작 '센스부족'에서 따왔다는 것, nosense라고 적혀있는 호스트 파일 정보의 출처는 hipple.pe.kr이라는 것, brhttpd는 movsd님의 블로그에서 가져왔다는 것 등등..)와, 사용 관련 정보가 들어있습니다.
일단 주요 프로그램인 NoAdProject를 실행하면 아래와 같은 화면이 나옵니다.
심플합니다. a,b,c,d와 각각의 기능이 표시되어있습니다.
써있는 그대로, a는 광고차단 패치, b는 광고차단 복구, c는 Hosts파일을 메모장으로 열기,
d는 제작자 정보, e는 제작자 블로그로 이동-
'센스부족'에서 가져온 만큼, 기능도 비슷합니다^^;;;
여기서 a를 눌러 패치하면...
이렇게 나올 것입니다.
현재 디렉토리에 대한 정보를 가져온 다음, brhttpd를 이용하여 가상 웹 서버를 생성하기 위한 콘솔(cmd)명령어를 생성합니다. 그리고 system함수를 이용하여 명령을 내립니다.
만약, 이미 패치가 되어있거나, brhttpd가 같은 폴더에 위치하지 않은 경우에는 오류가 발생할 것입니다.
원래 인스톨, 언인스톨을 수행할 때 웹서버 생성패치를 하려고했는데,,몰라서..^^;;
그래도 이것도 나름 좋다고 생각합니다.
이렇게 패치를 하고 네이버에 접속을 하면...
보다시피 광고페이지에는 빈 공간으로 표시됩니다.
광고차단이 이루어지고 있는 것입니다. 프로그램을 다시 실행한 다음에 b를 누르시면 해제하실 수 있습니다.
◎ 주의 : 프로그램 실행 위치를 이용하여 디렉토리를 확인, brhttpd를 실행하는 것이므로,
바로가기 기능을 제공하지 않습니다. 프로그램을 설치하실때, 경로를 잘 확인해주시기 바랍니다.
◎ 광고차단 기능을 사용하고 있을 때 프로그램 삭제를 하실 경우, 오류가 발생할 수 있으니,
프로그램을 삭제하실 때에는 광고차단 기능을 해제해주시길 바랍니다.
일단, 많이 부족한 프로그램이지만...업로드 해두겠습니다.
◎ 만약, 키플러님께서나, Movsd님께서 이 프로그램의 공유를 원치않으시면 바로 내리겠습니다. 원치 않으실 경우, E-mail(liberta@hizzle.net)주세요..
인스톨 형식, 알집exe형식 두종류입니다. 별 다른 점 없습니다.
입맛대로, 둘 중 하나 골라서 설치하시면 됩니다. 개인적으로 알집exe형식을 추천해드립니다.
단, 처음 설치하신 뒤, '광고패치'를 하시면, NoAdProject의 폴더 이동에 문제가 생길 수 있으니, 폴더이동을 하실 때에는 꼭 광고패치를 해제해주시길 바랍니다.
-추가-
넷북에 설치한 윈도우7으로 실행시켜 봤더니, 사용자 계정 컨트롤이 실행되고 있으면 오류가 나오더군요. 호스트 파일을 수정하는 부분에서, 프로그램이 마음대로 파일을 수정하는 점에서 문제가 발생한 것 같습니다. 아마 비스타도 같은 증상을 보일 것입니다. 예상치 못하였네요^^;
만약, NoAdProject를 이용하시려면, 사용자 계정 컨트롤을 제일 밑으로 조절해주시길 바랍니다.
아마 비스타도 비슷할 것이라고 생각합니다.
「제어판 -> 시스템 및 보안 -> 사용자 계정 컨트롤 설정 변경」에 들어가셔서, 위의 스크린샷처럼 가장 밑으로 조절해주시길 바랍니다.
현재 호기심이 생겨서 제작중인 프로그램명입니다.
이름 그대로 「광고를 차단하는 프로그램」이라고할까요?
이것을 만들게 된 계기는 광고차단 프로그램 '센스부족'을 보고 제작하게 되었습니다.
마침 그곳에 원리도 잘 적어놓으셔서 '이정도면 나도 만들 수 있을까?'하는 생각으로 제작하게 되었습니다.
그런데, 의외로 어려워서...(아니, 제 실력이 부족해서...) API로 윈도우창을 사용하는 프로그램으로 제작할까...하다가 아직 콘솔이 더 쉬울 것 같아서 콘솔형태로 제작하였습니다.
채 50kb가 되지도 않는 용량의 프로그램을 제작하는데, 오랜 시간이 걸렸습니다.
'센스부족'을 따라 만든 프로그램인 만큼, 거의 대부분 유사한 형태입니다.
그래서, 아무래도 프리웨어라도 따라만든 프로그램인 만큼 「'센스부족'에서 따왔다」라는 문구를 잘 표기해놨습니다.
거의 완성되었지만, 몇몇 잡다한 것 수정을 한 다음에 올리겠습니다.
프로그래밍 초보라 부족한 점이 많아서요^^;
학교에서는 비주얼 스투디오6으로 배우고 있지만, 나중에 취직하고 난 뒤에는 2008로 쓰게 될 것 같아서, 집에는 2008을 사용하고 있습니다.
그런데, 너무 많이 변했군요...익숙치 않습니다.
분명히 비주얼 스투디오6에서는 잘 먹혔던게, 2008에서는 안될 때도 있고...심한경우 명령어 자체가 변한 경우도 있고...
너무 어렵습니다~~@_@
이것 못해서, 만들고 싶은 프로그램이 있는데 못만들때, 1시간동안 겨우 한가지 문제 해결할때, 이럴때 너무 답답하군요..
수학 문제를 풀거나 그와 관련된 생각, 혹은 일을 할 때, 그래프를 그려야 하는 일이 발생할 경우 굉장히 번거롭다.
몇몇 수를 대입하고 그으면 되지만, 그것마져도 귀찮을 때가 있다.
그럴때를 위하여 비주얼베이직 노가다를 하여서 간단한 프로그래밍을 하였다.
아직 미완성이다.
1차식 부터 사인, 사인 변형 까지, 각각 필요한 수 (알파, 베타, 감마, 델타)값을 입력하여서 변형을 줄 수 있고,
계산간격(x값에 대입하는 수 간격)을 이용하여서 세밀하게 할 수도 있고, 간단하게 하여 시간단축을 할 수도 있다.
이제 코사인, 탄젠트도 추가할 것이다.
하지만, 아직까지 문제점은
x,y값을 직접 확인 할 수 없고, 간단히 형태만 보는 정도이고,
선을 귿는 것을 타이머로 1을 주어서, 아무리 낮춰도 시간적 한계가 있고.
저 앞에 한 창을 띄울 경우 저 선을이 다 지워진다 ㄱ-
그런 문제점을 개선하면 멋진 프로그램이 될 듯 하다.