기본적인 소프트웨어(게임 등) 개발의 흐름

요즘은 예전에 비하면 프로그램을 만드는 난이도가 매우 낮아졌다. 소규모의 인원들이 모여서 취미로 간단한 게임이나 프로그램등을 만들어 배포하기도 한다. 최근 유행한 언더테일이란 게임도 혼자서 게임메이커라는 도구를 사용하여 만든 게임이다. 혼자서도 만드는데 두명, 세명이서 모이면 못만들게 과연 무었이 있을까! 그래서 혼자서 혹은 둘셋 모여서 소프트웨어를 만든다고 하자. 그러면 어떻게 해야하는가? 처음에는 의욕이 넘쳐서 다들 이거한다 저거 한다 […]

동대문 에베레스트 [네팔 커리]

동대문에 에베레스트라는 네팔 요리집이 있다. 처음 가본건 약 10년전? 그때는 서빙을 보는 직원분이 한국어를 잘 못하셔서 메뉴판을 보면서 서로 ‘디스! 디스 플리즈!’ 하고 외치면서 주문을 했던게 기억난다. 이제는 한국어가 매우 능숙해지셨다. 여기저기 인도 요리집을 다녀보긴 했지만 동대문 에베레스트 만큼 맛있는 곳 도 드물었고 다른 집보다 가격도 훨씬 저렴하게 나온다. 이곳에 가면 밥보다는 난이다 특히 그중 […]

swift 테스트

swift가 발표되고 꽤 지났다. 실제로 swift만으로 앱을 개발하는 사람들도 늘은거 같다. 그래서 뒤늦게나마 스위프트를 시작해보려고 한다. 당장 언어가 문법이 너무 어색해서 버벅거리기는 하는데 하다보면 이거도 익숙해지지 않을까 싶다!

    테스트 프로젝트 다운로드

현재 실행중인 iOS디바이스의 종류(아이폰, 패드, TV, CarPlay) 구분하기

유니버셜 앱을 만들다 보면 현재 내 앱을 실행하고 있는 디바이스가 무었인지 알고 싶을떄가 있다. 그럴때는 UIDevice클래스를 호출해서 확인할 수 있다.

리턴값은 다음과 같다.

이번 블로그를 포스팅하며 알게 된거지만 이번에 iOS 9.x가 되면서 CarPlay 와 TV가 추가되었다. TV앱은 언젠가 시간이 된다면 한번 해보고 싶다

UIColor 색상 비교 하기

작업을 하다보면 여러가지 객체에 대해 비교를 자주 하게 된다 문자가 같은지 숫자가 같은지 등등… 여기서 NSString나 NSNumber같은 객체는 단순히 == 연산자로 비교가 안되어 애플에서 관련 비교 메소드를 만들어줬다 하지만 UIColor같은경우 비교 메소드가 없어서 따로 만들어 사용해야 한다.

  UIColor를 카테고리로 확장해서 만들면 좀더 편리해진다

Xcode에 iOS 시뮬레이터 다른 버전 추가하기

Xcode를 설치하면 기본적으로 최신 iOS말고 다른 버전의 시뮬레이터로 테스트를 할 수 없다. 개발을 최신 OS하나에만 맞춰서 할 수 있다면 참 좋겠지만 어디 그러한가. 하위 버전의 호환성도 테스트를 해야한다. 이럴때는 하단에 Download Simulators…를 누르면 다른 시뮬레이터를 추가 할 수 있다.   설치하기 원하는 시뮬레이터의 좌측에 화살표를 누르면 다운로드가 시작되고 설치가 끝나면 시뮬레이터 선택 옵션에 [디바이스 (펌웨어 […]

과천에 있는 한적한 한정식 밥집 -예밀-

서울에서 밥을 먹기보다는 조금만 밖으로 나가도 진짜 한상차림을 받을 수 있어서 좋아한다. 처음에는 과천에서 동물원을 들렸다 밥을 먹으려고 했었는데 그날 동물원이 조류독감으로 인해 문을 닫고 아무것도 못하고 와서 슬퍼할뻔하다가 맛있는 밥을 먹게 되어 조금은 풀린 곳이 있다.   외진길을 따라따라 ‘이런곳에 식당이 있을까’싶은곳까지 들어가면 예밀이란 건물이 보인다. 서울이 아닌 식당은 주차하기도 쉬워서 좋다! 야호! 시킨 […]

Autolayout을 이용하여 뷰를 n등분 하기 [iOS]

내가 처음 아이폰 개발을 했을때는 매우 행복했다. 디바이스의 해상도가 320 * 480 한가지 해상도만 생각하며 작업하면 됬고 그때는 뷰를 그릴때도 그냥 20픽셀 떨어져있으면 20픽셀이라고 쓰면 됬었다. 지금은 조금 틀려졌다. 일단 아이폰만 한다고 하면 아이폰4s, 아이폰5, 아이폰6, 아이폰6+ 네가지 화면을 확인해야하고 아이패드까지 가면 화면은 더 늘어난다. 해상도도 다 틀려 20픽셀을 20픽셀이라고 쓰면 안되는 몸이 되어버렸다. 물론 […]

AFNetworking을 사용하여 iOS 디바이스의 네트워크가 WiFi인지 셀룰러 데이터인지 확인해보기

AFNetworking은 현재 깃헙에서 별이 가장 많은 Objective-c 프로젝트로 알고 있다. 그만큼 안정적이고 좋은 기능들을 손 쉽게 쓸 수 있다. 아마  AFNetworking 없다면 꽤 고생을 했을거같다.  앱을 개발하다 보면 이런 화면을 볼때가 있다. 만약 앱을 구동하는데 필요한 리소스가 크다면 사용자의 셀룰러 데이터 플랜을 모르는 이상 안내도 없이 데이터를 쭉쭉쭉 다 써버리는건 친절한 개발이 아니라고 생각한다. 이런 […]

내가 생성한 하위 객체에서 이벤트를 상위객체로 보내는 방법! – 3부 Block패턴

이번에 소개할 패턴은 Block패턴이다 애플 레퍼런스에서 소해주지는 않은 방법이고 혼자 개발을 하면서 애플에서 추천하는 Block 문법과 KeyValue 코딩을 반반 섞은 방법이다. 처음 이 패턴을 고민한건  MVC패턴을 통해 작업을 진행하고 있었다. 그러다 뷰컨트롤러 안에서 커스텀 뷰를 만들어가지고 작업을 진행하는데 뷰 안에 UI처리가 아닌 데이터 처리등이 섞이는게 싫어서 어떤 방법을 써볼까 고민하다가 뷰 안에 블록을 통해 객체를 […]