달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

'SDK'에 해당되는 글 2

  1. 2010.05.07 [1일차]윈도우에서+Objective-C(1-1)
  2. 2010.03.08 [도서추천]IPHONE SDK 튜토리얼 1
2010. 5. 7. 19:07

[1일차]윈도우에서+Objective-C(1-1) Objective-C2010. 5. 7. 19:07


드디어 Objective-C 학습을 시작합니다.
개발 손놓은지가 언젠데.. -_- ;; 막상 다시 하려니 걱정이 반입니다.

어떻게 학습을 해야할까요? 음.. 그냥 순서대로 해보렵니다.

먼저 학습을 위한 환경을 만들어야겠네요.. 어차피 아이폰 개발을 위해 Objective-C를 공부하는거니 Xcode에서 개발해도 되겠지만.. 순서대로 차근차근히 해보겠습니다.

Objective-C의 기원은 어디일까요? 혹자는 C, C++이라고합니다.
정말 그럴까요? 어떻게 Objective-C가 만들어졌을까요?

Objective-C는 Brad j. Cox가 Smalltalk의 특징들을 C에 추가해서 만든언어입니다.
여기서 "Smalltalk"란 또 무엇일까요?

* Smalltalk *
간단히 말하면 객체지향언어입니다.
JAVA C++같은거요 그러나 C++같은거보다 더 객체지향적인 언어라고 알고있습니다

미국 제록스(XEROX)사의 Palo Alto 연구 센터(PARC)에서 개발한 객체 지향 프로그램 작성 언어와 개발 시스템.
제1판은 1972년에 개발된 Smalltalk-72이며, 그 후 개량이 계속되어 1980년에 완성된 Smalltalk-80이 처음으로 상품화되어 출시되었습니다.현재 널리 사용되고 있는 객체 지향 언어인 C++와 비교해 다음과 같은 장점이 있습니다.

㉠소프트웨어를 재이용하기가 쉽다.
C++보다 엄격하게 객체 지향적이어서, 프로그램은 반드시 논리와 데이터가 일체화된 객체의 형태로 실현된다.

㉡품질이 양호한 클래스 라이브러리(객체의 표본)가 풍부하다.
예를 들면, 대표적인 스몰토크 제품인 VisualWorks는 900종 이상의 클래스 라이브러리를 가지며, 이것들에 의해 응용 프로그램 개발 효율이 대폭 향상되었다.

㉢클래스를 검색하는 브라우저(browser)나 기억 장치의 비어 있는 영역을 자동적으로 확보하는 폐영역 회수(garbage collection) 등을 표준적으로 구비하고 있어서 개발 환경이 충실하게 되어 있다.

주요한 스몰토크 처리 시스템으로는 IBM사의 VisualAge, 스몰토크와 같은 Parkplace Digitalk사의 VisualSmalltalk 등이 있다. 최근 수년 간 기업용 클라이언트/서버 시스템 개발에 스몰토크가 이용되고 있으나, 객체 지향 언어로서 스몰토크와 비슷한 장점을 갖추고 있는 자바 언어가 등장하면서 자바 언어가 더 주목을 받고 있다.

StepStone이란 회사를 차려서 Objective-C 컴파일러를 만들었고 그것을 NeXT사에서 라이센스받아 NeXTSTEP에 넣음으로써 본격적으로 사용되어졌습니다. 그후 Dennis Glatting과 Richard Stallman이 GCC에 Objective-C 런타임을 추가하였습니다.
현재 리눅스에 깔려있는 gcc에서 사용가능하게 되었고 애플에서도 이 gcc를 Mac OS X에서 사용중입니다.
XCode에서 사용하는 컴파일러도 gcc 입니다.

Mac OS X의 가장 핵심적인 개발 Framework - Carbon과 Cocoa
- Carbon
C로 이루어진 API로 윈도우의 Win32 API와 상당히 유사하고
예전 Toolbox API셋으로부터 발전한 것입니다.
매킨토시의 레거시 코드의 재활용을 위해 만들어 졌다고 합니다.

- Cocoa
NeXTSTEP으로 부터 온 것으로 Objective-C로 만들어진 Framework
예전 NeXTSTEP API를 상당히 그대로보존하고 있습니다.
Mac OS X는 NeXTSTEP + Mac OS 로 이루어진 OS 입니다.

프로그래밍 언어로서 Objective-C는..?
- C 언어의 확장
C언어와 fully compatible 함.(C프로그램은 Objective-C 컴파일러로 컴파일되고 결과물도 똑같음)
하지만 Objective-C는 클래스, 메세지, 상속과 같은 객체지향 구조를 포함하고 있씁니다.. 
Objective-C가  Python, Ruby 와 더 유사하다는 주장하는 분도 계십니다.
Python, Ruby, Groovy 는 요즘 인기있는 스크립트 언어입니다.
Rails는 Ruby에서 사용하는 프레임워크로 Groovy는 Grails, Python에는 Django 등이 있습니다.
3개의 스크립트 언어 모두, 웹어플을 만드는데 주로 사용될 것 같습니다.

더 자세한 내용은 내공이 부족하여.. ㅠㅠ

- Objective-C의 객체모델.
Smalltalk-76의 객체모델(root class 구조, super class, 클래스, 메타클래스 관계구조)를 기반.
Smalltalk-80에서 사용된 메타클래스 구조는 Objective-C에서 사용되지 않습니다.

오늘은 여기까지... 오늘이 벌써 2일차인데.. 1일차도 다 정리를 못하네요..
1일차.. 계속 이어집니다.. 1일차에서.. 최소한 gcc 컴파일 환경까지는 세팅해야겠지요? ^^
:
Posted by 에너지발전소
2010. 3. 8. 14:50

[도서추천]IPHONE SDK 튜토리얼 아이폰2010. 3. 8. 14:50

아이폰 Apps 개발을 위해 이곳저곳 둘러보다 추천받은 책이다.
처음 시작하기 좋을듯 하다고 하는데 아직 구매하지는 못했다.
이번주 중 구매해서 보게될듯..

IPHONE SDK 튜토리얼

정  가 :  30,000원     
판매가 :  27,000원 (10%, 3,000원 할인)

책소개
아이폰 애플리케이션을 만드는 데 도움을 주는 책. 조금만 손보면 앱 스토어에 프리 앱으로 올릴 수 있는 수준의 예제를 만들어보는 데 중점을 두었다

목차
Chapter 01. 아이폰 App 개발환경
Section 01. 맥
Section 02. 아이폰 OS
Section 03. Xcode
Section 04. Interface Builder
Section 05. Instruments
Section 06. 하드웨어 사양
Section 07. 아이폰 App의 구분
Section 08 Do & Don't
Section 09. 인터페이스 가이드라인
Section 10. 참고자료
Section 11. 과제(Assignment)

Chapter 02. 최소한의 개념

Section 01. 오브젝티브-C, OOP를 위한 언어
Section 02. 메모리 관리
Section 03. 델리게이트(Delegate)와 서브클래스(Subclass)
Section 04. 용어 정리

Chapter 03. 무작정 시작해보기

Section 00. 예제 진행순서(Flowchart)
Section 01. LightTheCandle 프로젝트 만들기
Section 02. 인터페이스 구성
Section 03. 인터페이스와 코드의 연결
Section 04. 리소스 추가하기
Section 05. 기능 구현
Section 06. 정리

Chapter 04. Model-View-Controller

Section 00. 예제 진행순서(Flowchart)
Section 01. 클래스 만들기
Section 02. AppDelgate 수정
Section 03. 프라퍼티
Section 04. 반전 : NSDictionary
Section 05. 정리
Section 06. 과제(Assignment)

Chapter 05. 변동사항 감시하기

Section 01. 노티피케이션 이용하기
Section 02. SimpleHumanResource 프로젝트
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 07. Natural born navigator

Section 01. 얼굴 익히기
Section 02. WorldPhotos 예제
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 08. 맞춤형 테이블 뷰

Section 01. 테이블 뷰 셀의 분석
Section 02. 커스텀 테이블 뷰 셀 만들기
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 09. Core Graphics

Section 01. 쿼즈(Quartz)와 코어 그래픽스
Section 02. 코어 그래픽스 첫 삽 뜨기
Section 03. 코어 그래픽스 레이어
Section 04. 부가기능 구현
Section 05. 정리
Section 06. 과제(Assignment)

Chapter 10. 아이본에 앱 올리기

Section 01. 아이본 Developer Program
Section 02. 아이폰에 인스톨하기
Section 03. 개발용 아이폰이 추가된다면

Chapter 11. 뷰를 이용한 시계

Section 01. 모든 보이는 것의 슈퍼 클래스
Section 02. AnalogClock 만들기
Section 03. 환경설정 저장하기
Section 04. 사용자 사진 가져오기
Section 05. 정리
Section 06. 과제(Assignment)

Chapter 12. 애니메이션

Section 01. 애니메이션 방법론
Section 02. 뷰 애니메이션 연습
Section 03. 활약중인 코어 애니메이션
Section 04. 코어 애니메이션 클래스들
Section 05. 예제 : Helicopter
Section 06. 예제 : Simple Counter
Section 07. 정리
Section 08. 과제(Assignment)

Chapter 13. Archiving
Section 01. 예제 : Human Resource
Section 02. NSCoding Protocol과 NSCoder
Section 03. Human Resource 저장
Section 04. Human Resource Detail View
Section 05. 정리

Chapter 14. 코어 데이터의 기초

Section 01. 코어 데이터의 기초
Section 02. 코어 데이터 모델링
Section 03. 코어 데이터 프레임워크
Section 04. 예제 : HumanResource
Section 05. 정리

Chapter 15. 어드레스 북 API

Section 01. AddressBook 접근
Section 02. HumanResource에 주소록 기능 추가하기
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 16. 코어 데이터의 활용

Section 01. 프리디케이트 빌더(Predicate Builder)
Section 02. HumanResource 그룹 관리
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 17. GameKit

Section 01. 게임 엔진이 아닙니다.
Section 02. 예제 : SimpleCounter
Section 03. 정리
Section 04. 과제(Assignment)

Chapter 18. 가속도 센서

Section 01. 가속도 센서란?
Section 02. 예제 : SimpleSketch Accelerometer Ver.
Section 03. 정리
Section 04. 과제(Assignment)

출판사서평
이 책은 애플의 가이드북을 대체하기 위해 만든 책이 아니다.
전체적인 개념을 잡아줄 예제들을 가볍게 따라가다 보면 자연스럽게 자신의 프로젝트를 만들 수 있을 것이다.
이 책은 학교에서 한 학기 강의 분량 또는 40시간 분량의 제작자 과정을 운용할 수 있도록 만들어져 있다.
그러나 한 학기 또는 40시간 만에 책의 모든 튜토리얼을 공부하는 것이 어려울 수 있으니, 과정의 특성에 맞게 취사선택하여 활용하면 될 것이다.

:
Posted by 에너지발전소