출처 - http://www.cocoadev.co.kr/185




이번에는 CoreData를 이용하는 간단한 샘플을 만들어 보겠습니다. 이전에 Xcode 2.*대에서 이와 비슷한 어플리케이션을 만드는 "간단한 ToDo 어플리케이션 만들기"란 포스팅을 한적이 있습니다. 소스코드에 추가 없이 마우스 클릭만으로 간단히 만드는 예제였는데 Xcode 3에서는 그 마우스 클릭도 최소한으로 줄이고 자동화여, 누구나 쉽게 간단한 어플리케이션을 만들 수 있습니다.

Core Data에 대한 자세한 내용은 아래의  ADC 문서들을 참조하시기 바랍니다.



1. 프로젝트 생성
Xcode를 실행하고 새로운 프로젝트를 생성하기 위해 메뉴에서 File / New Project.. 를 클릭합니다. 아래와 같이 Mac OS X / Application 항목에서 Core Data Document-based Application을 선택하고 Choose...를 클릭합니다.
프로젝트 명에 'BookList'를 입력하고 save 버튼을 클릭하여 완료합니다.


2.  Data Model
1) Data Modeling tool
좌측과 같이 Xcode의 Groups & Files아래에 BookList / Models에서 MyDocument.xcdatamodel을 더블클릭합니다.

아래와 같은 데이터 모델링 툴이 오픈됩니다.
2) Entity 추가
위의 이미지에서 붉은색 화살표가 가르키는 Entity 항목 하단의 + 버튼을 클릭하여 새로운 Entity를 추가합니다. 생성된 항목을 더블클릭하거나 우측의 설정창에서 Name: 항목의 입력창을 이용하여 아래와 같이 'Books'로 이름을 변경합니다.


3) Attribute 설정
* 추가
이제 Books에 속성(Attribute)를 추가합니다. Property창 하단의 + 버튼을 클릭하여 나오는 항목중 Add Attrribute를 클릭합니다. 2번 더 반복하여 3개의 속성을 생성합니다.

* 설정
속성들의 이름을 각각 titile, writer, press로 입력하고 아래와 같이 항목들을 설정합니다.




3. 인터페이스 빌더
Xcode에서 MyDocument.xib를 더블클릭하여 인터페이스 빌더를 오픈합니다. 먼저 윈도우에 기본으로 생성되어 있는 "Your document contetents here'  라벨을 삭제합니다.

그리고 라이브러리 윈도우의 Cocoa / Objects & Controllers / Core Data 항목에서 좌측과 같은 Core Data Entity를 드래그하여 윈도우로 가져다 놓습니다.



1) Core Data Entity 생성
윈도우로 드래그를 완료하면 설장창이 오픈됩니다. 아래와 같이 entity를 Books로 선택하고 Next 버튼을 클릭하고 각 단계별로 아래와 같이 진행합니다.
2) 윈도우 크기 조절
생성된 항목에 맞추어 아래와 같이 윈도우의 크기를 적당히 조절합니다.

4. Build & Test
현재까지의 작업만으로 기본적인 동작을 수행할 수 있는 작업이 완료되었습니다. 이제 빌드를 하고 어플리케이션을 실행하여 테스트 합니다.
어플리케 이션이 실행되면 등록, 변경, 삭제, 검색 등과 파일 저장/오픈이 동작하는지 확인합니다.





출처 : http://blog.naver.com/PostView.nhn?blogId=seogi1004&logNo=110085700513
Posted by 오늘마감

댓글을 달아 주세요

아이폰어플개발정보2010. 6. 21. 23:56
[번역] Getting started with Data Management

번역을 링크로 올리지 말라는 카페 운영진에게 이멜을 받았습니다.
그래서, 이번 번역을 여기에 원본을 그대로 올리구요.
다음 번역부터는 제 블로그에만 올리겠습니다.
번역 문서는 계속 업뎃될 예정이구요. 필요하신 분들은 제 블로그로 와주세요.

역자주원문에서계속사용되고있는 라는단어는현재여기에서는가리키고있지만애플이이러한기술문서를특정하드웨어로국한시키지않으려는같아서역시도앞으로있을지모르는애플의행보를위해서원문그대로의뜻인 장치번역을했어요참고

데이터관리를시작하기

개요

모든 iPhone 어플리케이은데이터를가상적으로관리할필요가있습니다데이터관리는문자열대용량텍스트이진데이터날짜컬렉션속성리스트그리고데이터를포함하는프로그램에서사용가능한다양한데이터형의생성과처리를위해지원합니다어플레이케이션은로컬디비파일폴더그리고번들에데이터를저장하고가져오기위해데이터관리인터페이스를이용합니다이들은또한이벤트와알림같은다른형태의메시지를적절하게받고응답하기위해데이터관리인터페이스를이용합니다

데이터관리인터페이스들은몇몇의다른프레임웍에존재하고있습니다기본적인프레임웍들은다음과같습니다이것은기반의프레임웍이며위에서그래픽이벤트중심의어플리케이션을구현하기위한핵심환경을제공합니다사용자인터페이스데이터를관리하기위해 UIResponder, UIApplication, UIEvent 같은클래스를포함하고있습니다이것은기반의프레임웍이며어플리케이션의어떠한형태에서도사용될있는클래스들의기본계층들을정의하고있습니다클래스는수치형문자열컬렉션과같은기본자료형을위해서오브젝트포장또는이와동일한것들을제공합니다또한포트쓰레드그리고파일시스템과같은기본적인시스템개체와서비스로의접근을위한유틸리티클래스를제공합니다이것은객체도식관리와영속성을위해일반화된프레임웍입니다이것은취소재실행변경의전달과같은기능객체들사이의관계일치성을관리하는것과외부의데이터저장소객체를저장하는것들을포함하여위한지원을포함하고있습니다개념적으로프레임에서상속된프로그래밍인터페이스의집합입니다하지만이것은언어를이용하여구현되어있습니다데이터객체들문자열컬렉션시간날짜포트어플리케이션실행루프상호의사소통그리고선택대한추상형을정의합니다역자주문단에서선택으로번역했지만이러한데이터객체에대한의미는경험하고나야좀더의미에가깝게번역할있을같네요그리고역시현재로서는추상형외에는다르게다가오는의미가없네요기본

여러분이코드를작성하기이전에어플리케이션을설계하는방법에대해배우기위해서는iPhone Application Programming Guide안의The Core Application읽어야합니다프로그래밍인터페이스와이것을사용하는방법에대해배우기위해서는동영상자료인iPhone Application Development - Getting Started] 시청해주기바랍니다또한화학적인요소데이터를저장하고다른많은비주얼모드로데이터를표현하기위해속성리스트를사용하는어플리케이션TheElements] 샘플코드프로젝트를읽어주기바랍니다다음단계들여러분의소프트웨어에서데이터관리를지원하기위해여러분은여러분만의요구와경험을위해어느프레임웍을사용할것인지를결정해야합니다만일여러분의소프트웨어가사용자인터페이스를갖고있다면여러분은아마도멀티터치이벤트를처리해야것입니다여러분은어플리케이션수준에서사용자에게선택을제공하기원할것입니다여러분은또한장치의방향성가속도계의또는장치의위치위치값알기를원할것입니다 

어느프레임웍을사용할지를결정하기

몇몇의다른프레임웍은개발자들의어플리케이션에서그들이데이터를관리할있도록돕기위해서인터페이스들을지원합니다이것을시작하기위해서만일여러분이처음접한다면Foundation Framework Reference시작하면서프레임웍안의클래스들에대해서배우시기바랍니다프레임웍은배열딕셔너리문자열날짜그리고시간들과같은데이터와동작하기위한클래스들을포함하고있습니다이것은또한파일시스템과동작하기위한클래스들도포함하고있습니다만일여러분이코코아개발자이라면UIKit Framework Reference] 시작하면서프레임웍안의클래스들에대해서배우시기바랍니다프레임웍은가속장치화면이벤트응답기그리고터치와같은데이터와동작하기위한클래스들을포함하고있습니다만일여러분이이미개발에경험이있다면일반적인객체도식관리를위해사용하는방법에대해배우기위해서Getting Started with Core Data에서관련된경로를따라가기바랍니다만일여러분이기본적인데이터관리를위해인터페이스를살펴보고싶다면Core Foundation Framework Reference시작하십시오프레임웍은배열딕셔너리문자열번들그리고파일식별자같은데이터와동작하기위한추상형들을포함하고있습니다장치의현재위도와경도를결정하는방법에대해배우기위해Core Location Framework Reference으로시작하기바랍니다만일여러분이장치안에연락처에접근해야한다면Address Book Framework Reference으로시작하기바랍니다프레임웍을이용하여여러분은연락처디비안의사람과그룹들에여러분이원하는속성을추가하거나기존정보를가져올있습니다멀티터치이벤트를처리하기

에서터치는화면위에손가락의접촉또는움직이라는것을말합니다그리고이것은독특한멀티터치연속의부분입니다만일여러분의프로그램이사용자인터페이스를갖고있다면이것은아마도멀티터치이벤트를처리해야것입니다이것을시작하기위해서에서의이벤트에대해서는iPhone Application Programming Guide안의Event Handling읽어주기바랍니다그리고이러한이벤트들은멀티터치이벤트인터페이스모델을바탕으로하고있습니다TheElements] 샘플프로젝트를참고하십시오이것은멀티터치의확대축소그리고스크롤을처리하는것을보여주고있습니다어플리케이션수준에서의선택제공하기

선택이란어플리케이션의동작또는겉모습을설정하기위해사용되는세팅들입니다장치의사용자들은어플리케이션에게자신들이설정한환경을항상같은방식으로표현해주기를기대합니다이것을시작하기위해서시스템이제공하는어플리케이션을이용하여어플리케이션수준에서의선택을제공하는방법을배우기위해iPhone Application Programming Guide] 안의Application Preferences읽기바랍니다Metronome이라는샘플코드프로젝트를참고하십시오이것은진동자의박자를세는방법의간단한예를보여주고있습니다프로젝트는또한어플리케이션에제공된선택을저장하는방법에대한예도보여주고있습니다만일여러분이어플리케이션에의한제공되는것보다많은융통성을필요로한다면여러분은프레임웍안의클래스를사용하여여러분의어플리케이션에서선택을관리할있습니다자세한정보는User Defaults Programming Topics for Cocoa읽기바랍니다가속도계의이벤트에접근하기

가속도계는주어진선형경로를따라가는속도로변화를측정합니다장치는개의가속도계를갖고있습니다하나는장치의기본좌표의각각을기준으로하는것입니다만일여러분이가속도계의데이터를받는것에관심이있고여러분의어플리케이션에서값을받는것에관심이있다면여러분은 UIKit 프레임웍안의클래스를사용하여작업을있습니다이것을시작하기위해서가속도계의이벤트를설정하고받는방법을배우기위해서는iPhone Application Programming Guide] 안의“Accessing Accelerometer Events”읽어야합니다BubbleLevel] 샘플코드프로젝트를참고하십시오이것은시각적인버블수치역자주어떤벡터값을얘기하는같은데요버블레벨이몬지모르겠어서그냥 버블수치번역해요경사계값을생성시키기위해가속도계의값을사용하고있습니다이것은장치의현재방위값을확인하는방법도보여주고있습니다장치의위치값을얻어오기

장치는장치의현재위치이용가능한신호정보를갖고서위치고정을삼각법으로측정하여현재위치를결정할있는하드웨어를포함하고있습니다여러분은고도와고도의수직정확성장치의지리적좌표값을얻기위해프레임웍안의클래스를사용할있습니다이것을시작하기위해서Core Location Framework Reference읽기바랍니다여러분은위치관련의이벤트들의전송을설정하고계획또는예약시키기위해서프레임웍안의클래스들과프로토콜들을사용합니다위치값을업데이트시키고처리하는방법을배우기위해서는iPhone Application Programming Guide] 안의“Getting the User'™s Current Location”읽기바랍니다연락처정보에접근하기

역자주연락처로직접번역하기보다는아이폰의처럼하나의빌트인어플리케이션으로이해해야맞을같네요연락처와다른개인정보를위해한곳으로집중화된디비를말합니다연락처정보는이메일과채팅프로그램과같은소프트웨어에게는중요한것입니다시작하기위해서여러분의어플리케이션에서연락처디비를접근하는방법을배우기위해위한읽기바랍니다여러분은사용자의연락처데이터에접근할있을뿐만아니라데이터에여러분의속성과행동을구현할수도있습니다역자주개발자가연락처정보를마음대로가공할있다는의미를복잡하게설명하네요

Posted by 오늘마감

댓글을 달아 주세요

XCODE2010. 6. 21. 09:28
[펌] 2. 간단한 Core Data 예제
출처 - http://www.cocoadev.co.kr/185




이번에는 CoreData를 이용하는 간단한 샘플을 만들어 보겠습니다. 이전에 Xcode 2.*대에서 이와 비슷한 어플리케이션을 만드는 "간단한 ToDo 어플리케이션 만들기"란 포스팅을 한적이 있습니다. 소스코드에 추가 없이 마우스 클릭만으로 간단히 만드는 예제였는데 Xcode 3에서는 그 마우스 클릭도 최소한으로 줄이고 자동화여, 누구나 쉽게 간단한 어플리케이션을 만들 수 있습니다.

Core Data에 대한 자세한 내용은 아래의  ADC 문서들을 참조하시기 바랍니다.



1. 프로젝트 생성
Xcode를 실행하고 새로운 프로젝트를 생성하기 위해 메뉴에서 File / New Project.. 를 클릭합니다. 아래와 같이 Mac OS X / Application 항목에서 Core Data Document-based Application을 선택하고 Choose...를 클릭합니다.
프로젝트 명에 'BookList'를 입력하고 save 버튼을 클릭하여 완료합니다.


2.  Data Model
1) Data Modeling tool
좌측과 같이 Xcode의 Groups & Files아래에 BookList / Models에서 MyDocument.xcdatamodel을 더블클릭합니다.

아래와 같은 데이터 모델링 툴이 오픈됩니다.
2) Entity 추가
위의 이미지에서 붉은색 화살표가 가르키는 Entity 항목 하단의 + 버튼을 클릭하여 새로운 Entity를 추가합니다. 생성된 항목을 더블클릭하거나 우측의 설정창에서 Name: 항목의 입력창을 이용하여 아래와 같이 'Books'로 이름을 변경합니다.


3) Attribute 설정
* 추가
이제 Books에 속성(Attribute)를 추가합니다. Property창 하단의 + 버튼을 클릭하여 나오는 항목중 Add Attrribute를 클릭합니다. 2번 더 반복하여 3개의 속성을 생성합니다.

* 설정
속성들의 이름을 각각 titile, writer, press로 입력하고 아래와 같이 항목들을 설정합니다.




3. 인터페이스 빌더
Xcode에서 MyDocument.xib를 더블클릭하여 인터페이스 빌더를 오픈합니다. 먼저 윈도우에 기본으로 생성되어 있는 "Your document contetents here'  라벨을 삭제합니다.

그리고 라이브러리 윈도우의 Cocoa / Objects & Controllers / Core Data 항목에서 좌측과 같은 Core Data Entity를 드래그하여 윈도우로 가져다 놓습니다.



1) Core Data Entity 생성
윈도우로 드래그를 완료하면 설장창이 오픈됩니다. 아래와 같이 entity를 Books로 선택하고 Next 버튼을 클릭하고 각 단계별로 아래와 같이 진행합니다.
2) 윈도우 크기 조절
생성된 항목에 맞추어 아래와 같이 윈도우의 크기를 적당히 조절합니다.

4. Build & Test
현재까지의 작업만으로 기본적인 동작을 수행할 수 있는 작업이 완료되었습니다. 이제 빌드를 하고 어플리케이션을 실행하여 테스트 합니다.
어플리케 이션이 실행되면 등록, 변경, 삭제, 검색 등과 파일 저장/오픈이 동작하는지 확인합니다.





출처 : http://blog.naver.com/PostView.nhn?blogId=seogi1004&logNo=110085700513
Posted by 오늘마감

댓글을 달아 주세요