본문 바로가기

Dev. Java

데이터 바인딩의 개념 및 특징

데이터 바인딩이란?

  - 한줄 정리 : 데이터와 사용자 UI를 연결하는 것

  데이터 바인딩이 이루어지기 위해서는 저장 장소에 저장된 데이터를 읽어오는 역할을 수행하는 객체가 

  필요한데, 이를 데이터 원본(Data Source)라고 한다. 





데이터 바인딩이란 무엇인가?

  • .NET 2.0 에서 추가된 기능이다.
  • 컨트롤(Control)의 프로퍼티와 내가 지정한 객체의 프로퍼티를 연결 해준다.
    - 즉, 컨트롤의 프로퍼티가 변경되면, 내 객체의 프로퍼티도 변경되고, 그 반대도 된다.
    주의 해야 할 건, "Property 와 Property"의 연결이라는 것을 알아야 한다.,
그래서, 데이터 바인딩은 어떤 일을 할 수 있는가?
  • 하나의 값으로 여러개의 컨트롤 정보(프로퍼티)를 변경 할 수 있다.
  • 화면에 출력되는 컨트롤 말고도, 다른 컨트롤에도 바인딩 할 수 있다.
  • 좀 더 코드를 단순히 하면서도, 컨트롤의 값들을 손쉽게 빼올 수 있다.
MFC 때 해왔던, 지겨운 작업, 컨트롤의 정보를 내가 사용할 객체로 빼오는 코드를 더 이상 만들지 않아도 된다. 즉, 그러므로 코드를 좀 더 간결하게 만들 수 있다.

어떻게 데이터 바인딩을 사용 할 수 있는가?

링크 : http://msdn.microsoft.com/ko-kr/library/system.windows.forms.binding.aspx 에서 확인하는게 더 좋다.

결론

  • 윈도우 컨트롤들의 값들을 손쉽게 가져 오려면, 바인딩을 해라.

여담

  • 바인딩 하는것도 가끔 귀찮을 때가 있다. 그럴 때는 그냥 하는게 속편하다.
    - 이러한 작업이 많을 때 쓰는게 좋겠다.

  • 컨트롤의 값을 가져 오는 바인딩은 기본적으로 되지만, 컨트롤에 값을 넣어 주는 바인딩은 다른 방법이 있다.
    키워드는 INotifiyPropertyChanged 이다. 양방향을 원하는 Business Object 에 INotifiyPropertyChanged 를 구현해 주면 된다.
    - 참조 링크 : http://msdn.microsoft.com/ko-kr/library/system.componentmodel.inotifypropertychanged%28VS.80%29.aspx

  • 이번 항목에서 얻은건 바인딩 사용법하고, 변화에 대한 전파를 손쉽게 하려는 개념이다.