언어2012.10.25 10:51

.NET 쪽이야 워낙 TFS가 독보적이라 말할 필요가 없지만

 

예전 아이폰 개발할때는 Xcode 소스관리를 어떻게 해야 했었는지 고민을 많이 했었다.

 

맥에서도 TFS를 사용할수 있나 싶어서 조사도 해봤지만  결국 그냥 일반적으로 쓰는 SVN을 사용하기로 하고

 

툴도 제일 윈도우에서 쓴거와 같은 툴을 구해서 쓴 기억이 난다.

 

현재 내가 알고 있는 소스관리는 CVS,SVN,GIT 정도 인데

 

CVS야 이제 거의 안쓰니 설명할 필요가 없을꺼 같고

 

SVN은 정말 보편적으로 많은 사람들이 쓰는것이라 Xcode,이클립스에서 완벽 지원하며

 

Tool도 Mac용,Windows용으로 정말 많다

 

대부분의 개발자가 사용가능하며 단일 프로젝트 관리하기 좋음

 

커밋하면 중앙 저장소에 바로 저장

 

단점은 서버를 설치해야함,여러사람이랑 작업시 가끔 머지가 두려움

 

GIT는


개개인의 로컬 저장소가 있어서 커밋을 하면 로컬 저장소에 저장이 된 후 push를 해야 중앙 저장소에 저장이 됨, 때문에 중앙

 

저장소에 의존적이지 않음

 

핵심은 로컬 저장 관리!! 그래서 일단 로컬에 저장하고 서버에 push하는 형태

 

GIT가 좀더 많은 기능을 지원하지만 이클립스 플러그인에서 불안하다고함

 

하지만 대세가 GIT이고 명령어 모드에 익숙해지면 GIT가 잇점이 많다고 생각함

 

물론 서버가 있어야함

 

GitHub와 google code 는 오픈소스라 프로그래밍계의 소셜이라 생각하는데 회사프로젝트면 사용 안하는게 좋다고 생각


물론 서버는 필요 없음

 

결론은 무난하고 여러사람이 같이 개발하는것이 아니라면 svn이 낫고

 

대새를 따르거나 여러사람이 함께 작업하고 여러가지기능을 사용하는것이라면 git가 낫다고 생각

 

나중에 GIT는 꼭 써봐야겠다는 생각이 들었다.

Posted by 동동(이재동)
iPhone App2011.07.14 11:29

요즘 다이어트 시대를 맞이해 연습차 칼로리 계산기를 만들어 보았다.

근데 칼로리를 지속적으로 저장해야 하는데 c# 같은경우는 그냥 static class 하나 만들어서 저장을 했는데

objective c에서도 있었다.

// SingletonClass.h

#import <Foundation/Foundation.h>

@interface SingletonClass : NSObject

{

}

+ (SingletonClass *)sharedSingletonClass;

@end

일단 이렇게 헤더 class를 만들고

// SingletonClass.m

#import "SingletonClass.h"

@implementation SingletonClass

+ (SingletonClass *)sharedSingletonClass

{

   static SingletonClass *singletonClass = nil;

  

   if(singletonClass == nil)

   {

   @synchronized(self)

   {

   if(singletonClass == nil)

   {

   singletonClass = [[self alloc] init];

   }

   }

   }

  

   return singletonClass;

}

@end

구현부에 이렇게 하면 된다.

사용은

SingletonClass *s = [SingletonClass sharedSingletonClass];

이렇게 하면 된다.

이렇게 하면 클래스 인스턴스를 한번만 생성되어서 어디서나 클래스를 만들어도

스태틱한 class가 되는것이다.

참고 : http://b4you.net/blog/210

Posted by 동동(이재동)
iPhone App2011.06.17 14:34

음 이것저것 해보았지만 역시 잘 정리된 사이트가 별로 없었다.

 

자 내가 한번 해보자.

 

이번 목표는 버튼을 클릭했을 때 웹 페이지를 띄우는 것과 Label Text를 변경하는 것이다.

 

일단 난 돈이 없어서 xcode 3.2로 했다. xcode4 빨리 받아야 될텐데

 

일단 하는법은 View-based Application으로 프로젝트를 하나 만든후

 

확장자가 xib가 되어있는 것을 더블 클릭한다. 그러면 View가 뜰것이다.

 

여기서 Label이랑 Button을 하나씩 추가 한다.

 

자 이제 ViewController.h 헤더 파일에서 label과 button을 설정한다.

 

#import <UIKit/UIKit.h>
 
@interface TestHelloWorldViewController : UIViewController {
    IBOutlet UILabel  *myLabel;        
}
@property (nonatomic,retain) IBOutlet UILabel *myLabel;
 
-(IBAction) onGotoTest;
@end

 

인터페이스에 IBoutlet UILabel 에 myLabel이라는 것을 하나 설정하고

@property로 똑같이 하나 잡는다.

 

Label은 이걸로 끝~

 

버튼은 더 간단하다

-(IBAction) onGotoTest로 버튼 이벤트? Action을 정한다.

 

자 코딩을 마쳤으면 다시 View로 돌아가자 View로 돌아가서 헤더에서 만든것을 연결해보자.

 

xib를 클릭하여 view를 보고 일단 내가 만든 버튼에서 오른쪽 버튼을 누르면 Rounded Rect Button이라는 팝업창이 하나 뜬다. 여기서 우리는 터치를할것이니 Touch Up inside에 옆에 동그라미를 마우스로 끌어서 File’s Owner에 집어 넣자

그럼 아까 내가 헤더에서 만든 onGotoTest Button Action을 선택할수 있다. 그러면  끝이다.

 

이번에는 라벨을 컨트롤 하기 위해서 label에서 오른쪽 버튼을 누른후 new referenciong Outlet 옆에 있는 동그라미를 끌어서 file's Owner에 집어 넣는다. 그러면 다시 헤더에서 만들었던 myLabel이 보일것이다 선택하면 두개의 연결은 끝~

 

자이제 실제로 Controller.m에 직접 코딩을 해보자.

 

@synthesize myLabel;
 
-(IBAction)onGotoTest{
    //NSURL *url = [NSURL URLWithString:@"http://www.naver.com"];
//    [[UIApplication sharedApplication] openURL:url];
    myLabel.text=@"jaedong";
     
}

 

@synthesize로 myLabel을 정의 한후

onGotoTest이벤트가 발생하면 즉 버튼이 클릭되면 myLabel 의 Text를 바꾸 었다.

 

흠… 쓰다보니 기초지식이 너무 없네… 일단 object-c부터 파야겠다.

 

아무튼 20분만에 첫 예제 프로그램을 만들어서 기쁘다…!!

 

참고: http://iphoneappsmaker.tistory.com/713

Posted by 동동(이재동)