[.net] 면접 질문 : WPF 개발자 [폐쇄]

모든 WPF 개발자는 무엇을 알아야합니까?

입문 단계

  • 강력한 .NET 2.0 배경 & 배우려는 의지!
  • 종속성 속성을 설명 하시겠습니까?
  • 스타일이 뭐야?
  • 템플릿이란 무엇입니까?
  • 제본
  • 기본 클래스의 차이점 : Visual, UIElement, FrameworkElement, Control
  • 비주얼 트리와 로직 트리?
  • 속성 변경 알림 (INotifyPropertyChange 및 ObservableCollection)
  • ResourceDictionary-추가 한 a7an
  • UserControls-a7an에 의해 추가됨
  • 거품과 터널 라우팅 전략의 차이점-Carlo 추가
  • Microsoft가 또 다른 마크 업 언어를 도입 한 이유는 무엇입니까?
  • XAML

중급

  • 라우트 된 이벤트 및 명령
  • 변환기-Artur Carvalho에 의해 추가됨
  • WPF의 2 패스 레이아웃 엔진을 설명 하시겠습니까?
  • 패널을 구현하는 방법?
  • 상호 운용성 (WPF / WinForms)
  • 블렌드 / 사이다 -추가 a7an
  • 애니메이션과 스토리 보드
  • ClickOnce 배포
  • 스키닝 / 테마
  • 맞춤형 컨트롤
  • 작업자 스레드가 UI를 어떻게 업데이트 할 수 있습니까?
  • DataTemplate 및 계층 적 DataTemplate
  • ItemsControl vs ItemsPresenter vs ContentControl vs ContentPresenter
  • 다양한 유형의 트리거

연장자

  • 첨부 된 행동의 예?
  • PRISM, CAL & CAG 란 무엇입니까?
  • 작업자 스레드가 UI를 어떻게 업데이트 할 수 있습니까?
  • WPF 3D-추가 a7an
  • Silverlight 2와 WPF의 차이점
  • MVVM / MVP-추가 한 a7an
  • WPF 성능 조정
  • 픽셀 쉐이더
  • Freezables의 목적

다른 “트릭” 질문이 있습니까?

WPF 개발자가 블렌드를 알고 있습니까?



답변

아직 XAML에 대한 기본 지식을 언급 한 사람이 아무도 없습니다. XAML이 무엇인지 알고 그래픽 디자인 도구가 아닌 XAML을 사용하여 기본 편집을 수행 할 수 있습니다. 중급 개발자는 XAMLPad와 같은 도구를 사용하여 양식 / 그래픽 프로토 타입을 사용할 수 있어야합니다.


답변

개인적으로 나는 표준 개발자 빌드 머신 앞에 앉아 작업을 완료하도록 요청합니다. 의문의 여지없이 몇 시간 후에 (또는 작업이 더 길면 더 많은 코드) 코드가 무엇인지 확인하십시오.

실제 실제 프로그래밍 테스트 결과를 기반으로 채용 결정을 내리는 데 실패율이 0이었습니다.

작업이 너무 어려울 필요는 없습니다. 데이터베이스 나 XML 파일에 보관 된 메시지와 간단한 사용자 인터페이스로 과거의 간단한 응용 프로그램을 사용했습니다. 그들에게 잘 구조화하도록 요청하십시오 (작업이 충분히 작아서 한 클래스에서 모두 기울일 수 있다고 생각할 수 있기 때문에).

위의 질문 중 나는 당신이 그들이 실제로 좋은지 아닌지에 대한 좋은 아이디어를 얻을 수 없다고 말하고 싶습니다. 잠재적 인 candicate는 실제로 이것들을 읽고 훌륭하게 들리는 통조림 된 답변을 만들 수 있습니다. 이 모든 쇼는 응시자가 대화 할 수 있다는 것입니다. 그러나 직업 자체에서 중요한 것은 그들이 걸을 수있는 것입니다.


답변

바인딩과 변환기를 엔트리 레벨에 두었습니다. WPF에서 많은 시간을 소비하는 방식이기 때문입니다.


답변

내 의견으로는 꽤 좋은 목록입니다.
그러나 나는 인터뷰에 까다로운 질문을 하지 않을 것 입니다. 인터뷰는 충분한 스트레스 자체를 제공하며, 트릭 질문은 숙련 된 사람조차도 혼란스럽게 할 수 있습니다.


답변

개인적으로, 나는 엔트리 레벨 바로 아래에 ‘워커 스레드가 UI를 업데이트하는 방법’을 넣었습니다. 정말로 필요한 경우 중간 수준. 엔트리 레벨 프로그래머가 논리 트리와 비주얼 트리의 차이점을 이해할 수 있으면 백그라운드 스레드에서 UI를 업데이트하는 방법을 이해해야합니다.

우리 조직에서는 Blend없이 많은 WPF 개발을 수행합니다. 나는 특히 블렌드를 좋아하지 않기 때문에 약간 편견이 있지만 블렌드 기술은 훌륭해야한다고 생각합니다.


답변

WPF 개발자는 XAML을 코드 숨김에서 분리하는 데 대한 확실한 이해가 있어야하며 해당 선을 그릴 위치를 길게 논의 할 수 있어야합니다.

선택한 언어로 모델을 설정 한 다음 XAML을 사용하여 데이터 바인딩, 데이터 템플릿, 컨트롤 템플릿, 스타일, 트리거, 값 변환기 및 UserControls를 통해 해당 모델에 대한 뷰를 표시하는 것은 중급에게는 매우 기본적인 작업입니다. 레벨 프로그래머. (다른 사람에게 “심장에서”컨트롤 템플릿과 같은 것을 만들도록 요청하는 경우 소량의 여유가 부여되어야합니다.)

실제로 WPF 에는 많은 것이 있으며 , MSDN 포럼과 주제에 대한 심층적 인 책이 아니라면 “그냥 집어 올리는”것이 매우 중요합니다. 이런 이유로, 나는 인내심과 다른 사람들로부터 배울 수있는 능력을 모든 수준의 최고 요구 사항으로 평가할 것입니다.

엔트리 레벨 WPF 프로그래머에게는 WPF 자체에 대한 지식이 필요하지 않지만 객체 지향 원칙, UI와 비즈니스 로직 분리 및 유사한 이벤트 모델의 편안함에 대한 지식이 필요합니다. WPF와 유사한 스타일 (DockPanel 컨테이너 등)로 UI 요소를 배치하는 경험이 더해집니다.

편집 : 또한 Colin Mackay가 말한 것.


답변

일반적인 GUI 프로그래밍 / 그래픽 경험과 CSS 지식은 어떻습니까? 풀 타임 직업이라면, 그 사람이 강한 배경을 가지고 있다면 WPF를 배우는 데 처음 몇 달을 보낸다면 IMHO는 중요하지 않습니다.