Ace-T's Blog 내 검색 [네이버 커넥트 이웃 합니다~^-^/ 요청 大 환영~~]

5일차 : Objective C 오후

Language/iPhone 2012.03.30 14:09
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


TableView

테이블뷰의 셀은 UIView의 서브클래스인 UITableViewCell의 인스턴스 이다.

contentView,  textLabel,  imageView,  accessoryView,  detailTextLabel:textLabel

테이블뷰는 데이터 소스와 델리게이트 오브젝트를 필요로 한다.

데이터소스는 테이블 뷰에 정보를 뿌려줄 책임이 있는 오브젝트이며, 델리게이트는 테이블 뷰에서 발생한 여러가지 이벤트를 대신 처리해줄 오브젝트 이다.


데이터소스 델리게이트 : Controller의 데이터소스 프로토콜 메서드와 델리게이트 프로토콜 메서드를 통해 직접

특정 데이터를 뿌리도록 구현.

필수적인 메서드 3가지(프로토콜을 선택할 경우 무조건 구현해야한다.)

-(NSInteger)numberOfSectionsInTableView:(UITableView *)TableView

-(NSInteger)tableView:(UITableView *)TableView numberOfRowsInSection:(NSInteger)section

-(UITableViewCell *)tableView:(UITableView *)TableView

그림



계산기를 만들업자!!

storeFracPart




저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

5일차 : Objective C 오후  (0) 2012.03.30
5일차 : Objective-C 오전  (0) 2012.03.30
제4장. Objective c 하편  (0) 2012.03.29
제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

5일차 : Objective-C 오전

Language/iPhone 2012.03.30 10:38
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


교육의 막바지까지 왔구나!!..

여러가지 자바와 다른 개념들이 있고 공통적으로 쓰이는 개념도 많다.

특히 메모리 관리나 API들이 광건 인 것 같다.


@@@@촛불켜기@@@@@

AppDelegate.h

더보기


AppDelegate.m

더보기



저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

5일차 : Objective C 오후  (0) 2012.03.30
5일차 : Objective-C 오전  (0) 2012.03.30
제4장. Objective c 하편  (0) 2012.03.29
제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제4장. Objective c 하편

Language/iPhone 2012.03.29 15:03
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

1. iPhone개발을 해보자!!

- viewContraller

      1) .h      : view의 컨트롤을 위한 코딩을 해준다 물론 해더니깐 선언만

      2) .m   : 헤더에 대한 구현부

      3) xib  : 여기에서 마치 비주얼베이직이나 MFC에서의 컴포넌트들을 마우스로 끌어다가 만들어주며

                   연결시켜주는 부분이다.

                   IBOutlet과 IBAction 이 있다.


헤더 파일 소스


#import <UIKit/UIKit.h>


@interface ViewController : UIViewController

{

    UILabel *note;

    UITextField *display;    

}


@property (retain, nonatomic)IBOutlet UILabel *note;

@property (retain, nonatomic) IBOutlet UITextField *display;


-(IBAction)click1:(id)sender;


@end



구현파일 소스


#import "ViewController.h"


@interface ViewController ()


@end


@implementation ViewController

@synthesize note, display;

-(void) click1:(id)sender

{

    NSString *string;

    string = [NSString stringWithFormat:@"입력된 문자열 : %@",

              display.text];

    [note setText:string];

    

}


- (void)viewDidLoad

{

    [super viewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

}


- (void)viewDidUnload

{

    [super viewDidUnload];

    // Release any retained subviews of the main view.

}


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

{

    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);

}


@end


XIB에서는 File's Owner와 연결을 시켜준다.




저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

5일차 : Objective C 오후  (0) 2012.03.30
5일차 : Objective-C 오전  (0) 2012.03.30
제4장. Objective c 하편  (0) 2012.03.29
제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제 4장. Objective C

Language/iPhone 2012.03.29 10:37
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

객체 직렬화와 역직렬화


소스

더보기


키-벨류 코딩(KVC)

핵심 메서드 : -valueForKey: 와 setValue:forKey: valueForKeyPath 이다.

참고 소스

더보기


NSPredicate

객체의 컬렉션이 어떤 값을 가지는지 검색하고 평가 할 경우 사용.

쓰임새는 마치 SQL문을 쓰는 것 처럼 보인다.

예제]

더보기


저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

5일차 : Objective-C 오전  (0) 2012.03.30
제4장. Objective c 하편  (0) 2012.03.29
제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27

설정

트랙백

댓글

  • Favicon of http://www.jaketjfleece.com/ BlogIcon toko jaket online 2012.10.17 21:48 신고 답글 | 수정/삭제 | ADDR

    왠일이야. 아주 멋진 웹 사이트! 사람 .. 우수 ... 뛰어난 .. 난 당신의 블로그를 즐겨 찾기에 추가하고 또한 피드 할게요 ... 전 게시물에서 바로 유용한 정보를 많이 찾을 수있어 기뻐요. 공유를위한 감사합니다 ...

  • Favicon of http://acet.pe.kr BlogIcon String Ace-T 2012.10.18 19:32 신고 답글 | 수정/삭제 | ADDR

    인도네시아..홈페이지인데..홍보한건가..아님 레알 번역해서 올린건가=ㅁ=;;

  • Favicon of http://www.jaketjfleece.com/category/jaketonline BlogIcon toko jaket online 2012.11.12 12:22 신고 답글 | 수정/삭제 | ADDR

    매우 깨끗하고 아름다운 스타일과 디자인뿐만 아니라 내용을 - 다른 사이트 소유자가 모델로이 사이트를 가져야한다고 생각해. 이 주제에 전문가입니다!

    • Favicon of http://acet.pe.kr BlogIcon String Ace-T 2012.11.12 14:09 신고 수정/삭제

      Thank you for your visiting:D
      And If you speak in English you can do it~
      anyways..Have a nice day~~:D good~

  • Favicon of http://bestcafeshops.com BlogIcon jual jaket online 2012.11.28 12:43 신고 답글 | 수정/삭제 | ADDR

    안녕하세요! 당신은 트위터를 사용하고 계십니까? 당신이 괜찮 발견 할 것이다 그 경우 개인을 따라하고 싶어. 나는 완전히 블로그를 즐기는하고 새로운 업데이트를 즐길거야.

    • Favicon of http://acet.pe.kr BlogIcon String Ace-T 2012.11.29 01:42 신고 수정/삭제

      반가워요! 전 트위터를 사용하지 않고 있어요 대신 페이스북을 사용 한답니다. 번역해서 올리시느라 수고가 많네요^-^;;
      Nice to meet you~~!!

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제3장. Objective C[오전+오후]

Language/iPhone 2012.03.28 10:14
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T
AutoReleasePool

먼저 풀을 생성
================
객체1               객체2
================

Pool        // 미리 풀을 만듬.

[pool release]


카테고리 : 동적 런타임 디스패치(Dynamic Runtime Dispatch)

카테고리는 기존의 클래스에 새 메서드를 추가 하는 방법이다.(상속 받지 않고도 가능!) - 만능은 아니다!

단점 : 

1) 인스턴스 변수를 새로 추가 할 수 없다.

2) 이름 충돌-카테고리 메서드가 기존의 메서드와 동일한 이름을 갖게 되면 카테고리 메서드가 우선시 된다.

기존 메서드를 돌려 사용할 방법이 없다.(하이딩 된다.)

장점 :

1) 클래스 구현을 여러파일로 나누거나, 여러 플랫폼으로 나눌 때


카테고리로 구현 분리하기

거대한 클래스의 구현을 한 파일에 다하기는 힘듬. 카테고리를 논리적인 그룹으로 분리.


[소스]

더보기


몇개의 그룹으로 작업 분할(카테고리)

[소스]

더보기


프로토콜

프로토콜은 선언만 하며, 구현은 하지 않는다. 규약만 지정.

프로토콜로 인하여 다중 상속이 가능하다. 

UI 할 때 약방의 감초 처럼 애플에서 만든 프로토콜을 채택한다고 한다.

여기에서는 상속이라는 말보다 프로토콜을 채택한다고 흔히 말한다.

채택할려면 프로토콜 이름을 클래스의 @interface 선언에 나열해주어야 한다.

- 자바나 C#의 인터페이스와 같다.


다시 정리 해보면

* 프로토콜 : 규약, 규격, 호환성을 위한 부분.

(USB단자, PCI버스)

                            홈씨어터

                            삼성TV

                 (영상 : 컴포넌트, 컴포지트 단자)

      ---------------------->

소니블루레이플레이어                                데논 엠프

      ---------------------------------------->

    (음성 : 광단자, 동축단자)


[선언]

@protocol NSCopying

-(id)copyWithZone:(NSZone *)zone;   // copyWithZone 메소드를 반드시 구현해야한다. (강제사항)

@end

* 구현

더보기

// 아래와 같이 < >  사이에 있는것이 프로토콜 명이다. 해당 클래스의 메소드는 반드시 구현되어야 한다.

@interface Engine : NSObject <NSCopying>

@end // Engine


전체적인 소스

더보기


Fondation 프레임 워크

1) NSNumber : 값을 객체형식으로 다룰 경우에 사용.

힙에다가 저장 해놓고 씀.  값을 살짝 포장했다고 보면 된다.

2) NSRange : 문자열을 검색할 경우 사용.(구조체 형식임.)

Hello,Objective C!

         7           15

range.location=7, range.length=15-7

3) NSString : 문자열을 처리하는 클래스

 - NSString이 가지고 있는 메소드 : stringWithFormat,  isEqualToString: , hasPrefix

4) NSMutableString : 문자열을 변경해야 하는 경우

 - stringWithCpapcity

더보기


5) NSarray : 배열

더보기


저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제4장. Objective c 하편  (0) 2012.03.29
제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제2장. Objective C (하편)

Language/iPhone 2012.03.27 14:10
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

 

 

컴포지 이란?

상속은 ~은 ~의 일종이다(is a )라는 관계

컴ㅍ지션은 ~은 ~을 가진다(has a)라는 관계

모든관계가 상속은 아니므로 자료구조를 만들 때 고민해 본다.


접근자 메소드

1. 오브젝트C에서는 set은 사용하지만 get이라는 명칭은 사용하지 않는다.


참조 횟수

1. 객체가 alloc 또는 new, copy 메시지를 통해 만들어지면

객체의 참조 횟수는 1이 된다.

2. 참조횟수를 증가시키려면 retain메시지를 보내고, 감소 시키려면 release 메시지를 보낸다.

3. 참조횟수가 0이 되어 객체가 소멸되려고 할 때 오프젝트C에서는 자동으로 dealloc메시지를

해당 객체에 보낸다.

- (id)retail;

-(void) release;

-(unsigned) retainCount;

* 참조 카운트 : 객체 스스로 참조 카운트를 저장.

stack(지역변수..)                    heap(객체를 저장하는 메모리 공간)

=============                 =======================

demo ---------------------------------> demo 객체(참조카운트 : 1)

x(10)                                                 demo 객체(참조 카운트 : 0)  <--release일 때

=============                 ========================

DemoClass *demo = [DemoClass new];

int x = 10;

[demo release];


위에 소스 처럼 객체를 생성했으면 공간을 해제 해줘야 한다. 그래야 메모리 누수가 일어나지 않는다.

메모리 관리가 반자동이기 때문이다.

예제 소스

더보기


객체 초기화

1. 객체 생성 할 때 포인트 변수는 nil로 초기화 된다.


저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제 4장. Objective C  (6) 2012.03.29
제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26
제 1장. Objective C  (0) 2012.03.26

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제 2장. Objective C

Language/iPhone 2012.03.27 11:29
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

 


1. @property,    @synthesize

     @property : getter, setter 를 구현해준다.

     @ synthesize : 동기화를 해준다.(@property 관련해서.)

ex) @property int numerator, denominator;

      @synthesize numerator, denominator;


2. 상속 

상속 받을 때는 ":" 을 사용.

오브젝트 C는 단일 상속만 지원

다중상속X, 다중상속을 사용 할 때는 프로토콜 사용(자바에서의 interface)

id : 모든 객체를 받을 수 있음.

1. source

더보기


2. source

더보기

3. 범위(private, protected, public)

메소드는 디폴트로 public, 변수는 protected 이다.

액세스 수정자 :

public      >   protected     >     private     >     지역변수 

내부외부에서      자기내부나             자기내부만          해당메서드 내부만 액세스

마음대로         파생형식 내부만 접근

접근            (자식클래스)

더보기

4. 

저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26
제 1장. Objective C  (0) 2012.03.26
iPhone 시작!  (0) 2012.02.16

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

(+)와 (-)함수의 차이는?

Language/iPhone 2012.03.26 17:28
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T

 



//

//  main.m

//  demoClassInstance

//

//  Created by SDS107 on 12. 3. 26..

//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.

//


#import <Foundation/Foundation.h>


@interface DemoInstance : NSObject

+(void)ClassMethod;

-(void)instanceMethod;

@end


@implementation DemoInstance

+(void)ClassMethod

{

    NSLog(@"클래스에서 직접 호출");

}

-(void)instanceMethod

{

    NSLog(@"인스턴스에서 직접 호출");

}

@end



int main(int argc, const char * argv[])

{

    

    [DemoInstance ClassMethod];    // 객체를 생성하지 않아도 호출 있다

    

    DemoInstance *demo = [DemoInstance new];

    [demo instanceMethod];   // 객체를 만들고 뒤에 호출 한다. 대부분의 방식이다.

    

    return 0;

}


저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26
제 1장. Objective C  (0) 2012.03.26
iPhone 시작!  (0) 2012.02.16

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

제 1장. Objective C

Language/iPhone 2012.03.26 17:08
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T



아이폰 기초과정!!!

한영 전환 키 : command + space bar

복사 : command + c

붙여넣기 : command + v


수업 사용환경

1. Mac OS X 10.7           : 운영체제(라이온)

2. XCode 4.3                  : 개발에 사용되는 통합 툴

3. Objective C 2.0            : 개발에 사용되는 언어

4. iOS                             : Mobile OS는 5.1   



*객체지향 언어(Object Oriented Programming)

Class             Object

붕어빵틀        붕어빵


Class 집합

=======

멤버변수

멤버 메소드

프로퍼티(getter나 setter 같은 것)

=======



Field : Class 나 객체의 데이터(변수)

Method : 함수



* 은폐성  : 내부의 알고리즘은 숨기고 바깥쪽에서는 단순하게 사용



1. 첫번째 소스

더보기





2. 두번째 소스

더보기




3. 세번째 소스

더보기




4. 네번째 소스

더보기



 5. 다섯번째 소스

더보기




저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26
제 1장. Objective C  (0) 2012.03.26
iPhone 시작!  (0) 2012.02.16

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

iPhone 시작!

Language/iPhone 2012.02.16 15:28
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T


아이폰..지금 내가 알고 있었던 것은 단하나!!
Object C로 코딩한다.. 였다 ㅋ

오늘 알고자하는 지식은!
바로 Xcode 이다.

Xcode는 아이폰 SDK를 셋팅하면 지원되는 개발툴이다.

MS에서 비쥬얼스튜디오에서 개발을 하고, 자바는 넷빈즈나 이클립스에서 개발을 지원해준다면
아이폰이나 맥은 Xcode라는 개발툴로 지원을 해준다^^good~

이 툴을 사용하기 위해서는 먼저 선행되어야 할 것이 바로 SDK설치 이다!
SDK를 설치할려면 개발자등록을 해야한다!!
http://developer.apple.com/iphone





저작자 표시
신고

'Language > iPhone' 카테고리의 다른 글

제3장. Objective C[오전+오후]  (0) 2012.03.28
제2장. Objective C (하편)  (0) 2012.03.27
제 2장. Objective C  (0) 2012.03.27
(+)와 (-)함수의 차이는?  (0) 2012.03.26
제 1장. Objective C  (0) 2012.03.26
iPhone 시작!  (0) 2012.02.16

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

티스토리 툴바