반응형




정말 오래간만에 포스팅 합니다 ㅎㅎㅎ

다름이 아니라 제가 요즘 아잉폰이 와서 좀 가지고 논다고 -ㅅ-

하지만 맥이 없어서 앱 개발은 못해보는군요 물론 개발자 등록도 안되어있지만 ㅋㅋ

오늘 아잉폰 덕에 찰스 페졸드 아저씨의 프로그래밍 윈도우즈 폰 7 pdf를 보고 있습니다.

찰스 페졸드 아저씨 다들 아시죠?

제가 아저씨라고 쉽게 말 하고 있지만 이 분은 Microsoft Press류 책 좀 보신 분들은 아실 겁니다. 꽤 유명하신 분입니다.

이분야 에선 진정한 고수반열에 오르신 분이죠. … (하지만 사진으로라도 뵌 적은 없습니다)


제가 공부하고 있는 상황을 알려드리자면 (아직 15페이지 밖에 못 봤습니다. 올 영문이라 -ㅅ-)

1. 초기에 나오는데 일단 우리가 만드는 프로젝트 자체를 실버라이트 어플리케이션이라고 부르시더군요.

그래서 혹시나 하고 봤더니 프로젝트 선택에 실버라이트 어플리케이션 템플릿을 선택해도 같더군요! (너무 썰렁한가)

2. XAML 을 자멜 이라고 부른다고 하더군요 -ㅅ-. 사멜? 자멜? …뭐 그렇답니다.

부가적으로 폼 디자인에 들어가는 XAML과 관련 XAML파일들은 WPF(Windows Presentation Foundation)을 따른다고 합니다.

뭐 지금까지 본건 이정도 네요. 물론, 지금은 화면해상도가 어쩌고, 픽셀은 포인트로 바뀔 때 이렇게 계산된다 이 부분을 보고 있습니다. 영어 해석은 잼병이라 좀 걸리네요 ~_~.


관련 자료는 다른 블로그에 누군가 직역 + 의역으로 해석해주시는 분이 계신 거 같던데 거길 참조해주세요 ~_~.

저는 그냥 느끼듯이 읽어 내려가서 설명하기 어려운 부분이 많군요.

이럴 줄 알았으면 20대 초에 번 돈 노는데 쓰지 말고 어학연수나 다녀 올걸…



자 오늘은 Class Library 사용법에 대해서 잠깐 써볼까 합니다.

언제나 같이 따라 하면서 익히세요.

VS.NET 에서 제공하는 언어들의 Class Library 만드는 법과 동일합니다. 혹 알고 계신 분은 패스~

우선 테스트도 해야 하니 기본 어플리케이션 템플릿으로 프로젝트를 만드세요




지금부터 잘 보세요




푸른색 화살표가 가르키는 항목은 “솔루션” 이라고 합니다.

붉은색 화살표가 가르키는 항목은 “프로젝트”라고 합니다.

눈에 익혀두시길…

클래스라이브러리는 만드는 방식이 프로젝트 단위로 가져올 수 도, 동일 프로젝트 내에 둘 수도 있습니다.

엄밀히 따지자면 동일한 네임스페이스 아니냐 이지만, 동일 프로젝트 내에서 파일을 만들어서 네임스페이스를 따로 둘 상황이라면 초보 거나 조금 특이한 상황일겁니다.

오늘 해 볼 것은 동일한 프로젝트 내, 다시 말해 동일한 네임스페이스 내에서 클래스를 만들어 사용 해 보겠습니다.

(다음시간엔 뭘 해야 할지 나와버리는군요! ㅎㅎ)

이 녀석입니다.



저는 이렇게 했습니다.





그리고 Add 누르셔서 만드시면.




추가 된 것을 확인 하실 수 있을 겁니다.

자 네임스페이스가 동일한지 확인 해 봐야겠죠?

   


당연히 동일 해야죠 ~_~..

자 그럼 우리는 HelloClass.cs 에 멤버 메서드를  추가 해 봅시다.



#region public string HelloString
public string HelloString()
{
    return "Hello Class";
}
#endregion



추가한 멤버 메서드는 위와 같고 설명을 드리겠습니다.

public 의 string값을 반환하는 HelloString이라는 메서드가 되겠습니다.

public 은 접근 지정어로 모든 곳에서 접근, 사용이 가능하다 라는 의미로 받아들이면 되겠습니다.

참고로 쓰지 않으며 private로 디폴트로 설정이 됩니다.

private는 상속받은 클래스나, 동일 클래스만 사용가능이 되겠습니다. (기타 세세한 건 찾기 귀찮으므로 패스~)

그리고 해당 메서드의 리턴값은 “Hello Class”가 되겠군요.

참고로 #region ~ #endregion 은 보기 좋게 묶을 때 사용하는 매크로성 예약어 입니다.

코드작성 하는 곳 좌측에 열림 표시 보이죠? 저걸 마우스로 클릭하게 되면





이렇게 됩니다. 좋은 기능이죠. 코드 짤 때, 이전 코드 반영시켜가면서 새로 짤 때 쓰면 상당히 좋습니다.

그냥 보기도 좋고 … ~_~

자 그럼 클래스를 만들었으니 사용해 봅시다.

디자이너로 돌아와서 Button 하나를 올리고 이벤트 등록을 합시다. (버튼 더블클릭!)




코드를 저는 이렇게 구성합니다.

 

private void button1_Click(object sender, RoutedEventArgs e)
{
    ClassLibrary.HelloClass hc = new ClassLibrary.HelloClass(); // 1
    string str = hc.HelloString();                                                 // 2
    MessageBox.Show(str);                                                     // 3
}



아까 이야기한 접근지정어 private이 나왔군요!

설명들어갑니다.

1. ClassLibrary 네임스페이스의 HelloClass 의 객체 인스턴스 hc에 동적으로 만들어서 할당.

-> 참고로 네임스페이스는 동일하기에 ClassLibary라는 부분은 빼도 상관없습니다.

     다음 포스트에서 볼 것이랑 길이가 다르면 헷갈릴 테니 그러는 것 뿐입니다.

2. string형 변수 str에 hc의 HelloString() 메서드의 결과 값 할당.

3. MessageBox.Show(string ..) 메서드로 str값 출력. (그냥 str값이 출력되는 메시지 박스가 뜹니다)


자 그럼 우리가 좋아하는 디버그로 결과를 보죠!



에뮬레이터가 뜨면 버튼을 클릭.

     


어떤가요? 참 쉽죠잉~

단순히 string값만 처리 했지만 원래는 다른 컨트롤 변수도 똑같이 제어가 가능하답니다.

어흑 벌써 12:30분 ~

저는 잘 시간입니다. 다음 포스트 최대한 빨리 올릴게요 ^-^

반응형

+ Recent posts