ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 구쨩 집에보내기 어플 개발 일지(버스정보 확인 어플)
    iPhone/i폰 어플 개발 2012. 2. 1. 01:05


    요구사항 : 버스정보 단말기가 설치되지 않은 정류장에서, 아이폰 어플을 통해 버스정보를 확인하고 싶다. 



     V. 1 




    - 완료 : 2011. Sep 즈음.

    - 특징 : 
    ㆍ 뷰 갯수 = 1
    ㆍ Interface Builder 이용
    ㆍ html 스크랩 후 파싱하는데에 별도의 hpple 클래스 사용
      -> 누수 줄줄줄, 속도도 그닥 안좋음. 
    ㆍ refresh 버튼이 있으나, 작동하지 않음 -┌; 
    ㆍ 기본 cell view 이용
    ㆍ 늘 크래시 발생 -┌;





    V. 2




    - 기간 : 대략 3일
    - 완료 : 2012. Jan. 31. 

    - 특징   ( 색칠된 부분 = 이전과 달라진점 )
     ㆍ 뷰 갯수 = 1
     ㆍ Interface Builder 사용 안함
     ㆍ html 스크랩 후 파싱하는데에, regular expression 함수 사용.  
     ㆍ refresh 작동함
     ㆍ custom cell view 이용 
     ㆍ UIActivityIndicator 적용하여, 정보 불러오는중 을 나타냄. 
     ㆍ 누수 제로!!!
     ㆍ 크래시 없음!!

    - 느낀점 
     ㆍ release, retain 너무 어렵고 짱난다 ㅠ_- 

     ㆍ GUI 디버거 보다, 콘솔창 텍스트 명령어가 훨씬 편하고 좋다. (아직 GUI 디버거 쓸줄 몰라서 -_-ㅋㅋ)

     ㆍ NSZombie에 대해 알게되었다. 덕분에 크래시를 잡아낼수 있었다. 

     ㆍ 일일이 객체 주소값 찍어가면서 디버깅해가면서, reference count 에 대해 조금 감을 잡았다. 

     ㆍ ios5 부터는 ARC(Auto Reference Counting) 이 도입되어, release, retain 에 대한 스트레스를 줄였다고 한다.
      (난 아직 5 쓸맘이 없으므로 해당사항 없음.)

     ㆍ 배운게 완전 많다. ㅎㅎ 
        멤버 변수와 프로퍼티는 다르다★  프로퍼티는 멤버변수 중에서 외부공개하고싶은것만 적는것임!!!!
        프로퍼티는 반드시 dealloc 에서 뒷처리해주기!!!
     
        NSZombie, 커스텀셀뷰 만들기, IB없이 인터페이스 만들기, 쓰레드 사용,

        UIActivityIndicator 를 start하고 stop 할때 짜증나는거(동일 메소드 내에 있음 안됨. 따로 함수로 만들어서 별도로..
        , reference counter 에 따라 나타나고 안 나타날수도 있음. )

        화면 터치 못하게 = [[UIApplication sharedApplication] begin(end)IgnoringInteractionEvents];
       
        나(myRootViewController)를 호출한 부모(UlsanBusAppDelegate)를 타겟으로 부를때
           target:[UIApplication sharedApplication].delegate

        디자인 할때, 해상도는 320*480 에 맞춰서 하면 됨. 아이폰4 에서는 자동으로 두배 처리 해줌. 다만 2배 차이므로,
        항상 모든 객체의 길이는 짝수로!!!! 그리고, 아이콘도 아이폰4에서 쓸거는 꼭 파일명 뒤에 @2x를 붙여줘야 함.
        소스코드내에서는 손댈 필요 없음.(@2x 라고 안 붙여줘도 됨.) 아이폰3 용 디자인(아이콘)이 우선순위가 높으며,
        @2x가 붙은 아이콘이 없으면 그 다음에 아이폰4(레티나)용 아이콘을 찾아서 표시. 

        로딩시 배경화면은 파일만 넣어주면 됨. (Default.png)

        어플이름을 변경하고 싶으면(화면에 어플아이콘 밑에붙는 이름) 플젝명-info.plist 에서  Bundle Display Name 변경

        
     ㆍ 울산 버스 정보 진짜 개판이다. wap 은 포기한건지.. 어짜피 raw 데이터 가져와서 가공하는건 마찬가지 일텐데, 
      가공한 데이터도 뒤죽박죽이고, 일관성도 없고, 속도도 너무하고...  최근 아이폰 버스 어플을 내놨다는데, ios5부터 
      사용가능 하단다.. 아직 4점대 쓰는 사람도 많은데 헐이다... 지들 편할라고 그런것 같은.. 그나마도 후기 보면 개판이고... 
      차라리 api라도 공개해주면 좋을텐데.. 막무가내다.. 좀 거들어보겠다고 해도 이건 뭐.. 

    - 개선할점 
     ㆍ 현재 특정 정류장만 검색됨 -> 정류장번호 넣어서 검색되도록.


Designed by Tistory.