2010.07.28 11:19

고객들을 만나다 보면 신규 프로젝트에서 WPF를 사용해야 할찌 혹은 Silverlight를 사용해야 할찌 몰라서 고민하는 분들을 간혹 만나게 됩니다.
 일반적인 가이드는 데스크탑 애플리케이션에는 WPF 웹에는 Silverlight이기도 하지만 Silverlight 3.0부터 제공되는 Out-of-browser 덕분에 이 경계선도 모호해 졌습니다.

 기술적으로 혹은 코드 적으로 WPF와 Silverlight의 차이를 70페이지 분량으로 소상하게 설명하고 있는 자료인 Microsoft WPF-Silverlight Comparison Whitepaper가 있어서 참조하시면 도움이 될 것 같습니다.


최종 업데이트 된지는 조금 되었지만 그래도 참조할 만 하다는 생각에 공유해 드립니다. ^^
원본 사이트는 http://wpfslguidance.codeplex.com/releases/view/30311 에서 보실 수 있습니다.

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.04.27 16:21
WPF Application Quality Guide 입니다.
WPF와 관련해서 품질을 향상시키는데 도움이 되는 내용들로 잘 정리되어 있습니다.

소프트웨어의 품질을 향상시키는는 가장 쉬우면서도 어려운 방법은 바로 Test입니다. 제대로 된 테스트 시나리오를 가지고 있는 국내 기업도 거의 없을 만큼 Test는 쉬면서도 어렵습니다. WPF나 혹은 Silverlight와 같은 UI 기술의 경우는 더더욱 Test가 쉽지 않은 편입니다.

위의 가이드에서는 WPF에서 각종 Test를 자동화 시키고 프로세스화 시키는데 도움이 될만한 내용이 잘 정리되어 있습니다.

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.04.27 12:18

New Controls

이번에 새롭게 추가된 컨트롤이라기 보다는 WPF 3.5 SP1 + WPF Toolkit에 포함되었던 내용이 정식으로 포함된 것이라고 할 수 있습니다.

DataGrid
Calendar
DatePicker

Visual State Manager
ControlTemplate안에서 Visual의 상태가 바뀌는 것을 지원하기 위해서 제공되는 VisualStateManage와 이를 지원하는 클래스들이 포함되었습니다. 또 Expression Blend에서 정의된 컨트롤과 외권을 사용할 수 있게 되었다고 합니다.

Touch and Manipulation
터치를 위한 기능들이 개선되었습니다. UIElement와 UIElement3D 그리고 CotentElement 클래스 등에서 모두 터치와 관련된 이벤트에 대한 개선이 있었습니다.

몇가지 그래픽과 애니메이션과 관련된 변화들 입니다.
  • Layout Rounding

    When an object edge falls in the middle of a pixel device, the DPI-independent graphics system can create rendering artifacts, such as blurry or semi-transparent edges. Previous versions of WPF included pixel snapping to help handle this case. Silverlight 2 introduced layout rounding, which is another way to move elements so that edges fall on whole pixel boundaries. WPF now supports layout rounding with the UseLayoutRounding attached property on FrameworkElement.

  • Cached Composition

    By using the new BitmapCache and BitmapCacheBrush classes, you can cache a complex part of the visual tree as a bitmap and greatly improve rendering time. The bitmap remains responsive to user input, such as mouse clicks, and you can paint it onto other elements just like any brush.

  • Pixel Shader 3 Support

    WPF 4 builds on top of the ShaderEffect support introduced in WPF 3.5 SP1 by allowing applications to now write effects by using Pixel Shader (PS) version 3.0. The PS 3.0 shader model is more sophisticated than PS 2.0, which allows for even more effects on supported hardware.

  • Easing Functions

    You can enhance animations with easing functions, which give you additional control over the behavior of animations. For example, you can apply an ElasticEase to an animation to give the animation a springy behavior. For more information, see the easing types in the System.Windows.Media.Animation namespace.

Text와 관련한 몇 가지 변화 사항입니다.
  • New Text Rendering Stack

    The WPF text rendering stack has been completely replaced. This change brings improvements to text rendering configurability, clarity, and support for international languages. The new text stack now supports explicitly selecting aliased, grayscale, or ClearType rendering modes. The text stack now supports display-optimized character layout, to produce text with sharpness comparable to Win32/GDI text. The new text stack allows optimizing text hinting and snapping for either animated or static text. The new text stack also supports fonts with embedded bitmaps to be substituted for smaller font sizes, allowing many East Asian fonts to render with sharpness comparable to Win32/GDI text.

  • Selection and Caret Customization

    You can now specify the brush that paints the selection and caret for input and reading controls, such as TextBoxRichTextBox, and FlowDocumentReader. There are two new properties on TextBoxBase:

    • SelectionBrush allows you to create a brush for highlighting selected text.

    • CaretBrush allows you to change the brush that paints the cursor.

Binding과 관련해서는 많은 변화가 있었습니다.
Various changes and enhancements have been made related to binding.
XAML Browser Applications 다시 말해서 XBAP도 개선이 되었다고는 하는데 제 개인적으로는 XBAP의 실용성에 대해서는 의구심이 들기는 합니다.

Two features have been added to XAML browser applications (XBAPs).

  • HTML-XBAP Script Interop

    You can now communicate with the Web page containing the XBAP when the application is hosted in a HTML frame. The XBAP can get deep access to the HTML DOM and can handle DOM events. For more information see BrowserInteropHelper.HostScript.

  • Full-Trust XBAP Deployment

    If your XBAP requires full trust, the user will now automatically receive the standard ClickOnce elevation prompt when they install the application from the intranet or one of their browser's trusted sites.

For more information on both these features, see WPF XAML Browser Applications Overview.

Windows 7과 관련한 변화입니다. 이 역시도 새롭게 추가된 것이라기 보다는 흩어져 있던 API들을 잘 묶은 정도의 변화라고 볼 수 있습니다.

The Windows 7 taskbar provides enhanced functionality that enables you to use the taskbar button to communicate status to a user and expose common tasks. New types in the System.Windows.Shell namespace provide managed wrappers for functionality in the Windows 7 taskbar and manages the data passed to the Windows shell. For example, the JumpList type allows you to work with Jump Lists and the TaskbarItemInfo type allows you to work with taskbar thumbnails.

WPF dialog boxes on Windows 7 and Windows Vista now support the look and feel of the Windows 7 and Windows Vista style, which includes custom places. For more information, see the FileDialogCustomPlace class.

WPF가 개선되었긴 하지만 4.0버전에서 새롭게 무엇인가 출현한 것은 없다고 보셔도 무방할 만큼 무난한 변화가 있었습니다.

자세한 내용은 http://msdn.microsoft.com/library/bb613588.aspx 를 참조해 보시기 바랍니다.

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)

저작자 표시 변경 금지
신고
2010.04.27 08:02
http://msdn.microsoft.com/library/ee649090(v=VS.100).aspx

WPF 기반으로 Touch Application을 제작할 수 있는 방법을 소개하고 있습니다.  총 6단계만 따라하면 되는데 기본적으로는 Windows 7 기반에 Visual Studio 2010으로 작업하는 것을 전재로 하고 있습니다.

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.04.21 18:51

SketchFlow는 Microsoft에서 나온 도구 중에서 가장 디자이너를 잘 이해하는 도구입니다. 디자이너의 행동 동선을 잘 파악해서 만들어진 도구로 스토리 보드를 작성하고 해당 스토리에 맞는 씬을 디자인하고 디자인되어 있는 컨셉을 프로토타입까지 만드는 작업을 하나의 도구 안에서 사용할 수 있게 했습니다. 
 SkectchFlow를 통해서 기획자, 디자이너, 개발자가 지역에 상관없이 완성된 컨셉과 프로토타입을 공유할 수 있으며 PC뿐만 아니라 MacOS도 함께 지원한다고 합니다. 
 위의 동영상에서는 90초만에 스토리보드 작성에서 부터 페이지 디자인, 그리고 피드백을 작성한 후에 관련된 문서 작성까지 보여줍니다.

본 동영상을 본 UI디자이너 중 한 명은 "SketchFlow를 사용하면 팀내의 의사 소통과 컨셉의 공유가 훨씬 분명해 질 것 같다. 컨셉의 무제한적인 복제와 온라인 협업이라는 측면에서는 대단히 유용한 도구가 될 수 있을 것 같다"고 했습니다.

 Microsoft는 Expression Studio라는 디자인 툴 패키지를 가지고 있으며 조만간 4.0 버전을 출시하면서 기능이 한층 더 강화 될 것이라고 이야기 하고 있습니다.

발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.04.19 15:21


WinForms to XAML UI Converter라는게 나와서 소개해 드리려고 합니다. WinForm으로 되어 있는 화면을 XAML기반의 태그로 변환해주는 컨버터입니다.

아래와 같이 전형적인 WinForm기반의 화면을 WPF 기반으로 변환 할 수 있다고 하는데요

XAML로 변환되는 걸로 봐서는 WPF/Silverlight/Windows Phone 7 등으로 쉽게 전환 할 수 있을 것으로 기대됩니다. 하지만 완성도가 얼마나 되는지는 한번 테스트가 필요합니다.

관련된 정보는 http://blogs.windowsclient.net/rob_relyea/archive/2010/04/16/winforms-to-xaml-ui-converter.aspx 에서 보실 수 있습니다.

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.04.01 15:17

나온지는 좀 되었지만 그래도 사람들이 많이 모르는 것 같아서 올려 봅니다.
RIA를 구현할 때 참조할 수 있는 원론적인 이야기가 잘 정리되어 있습니다.

저작자 표시 변경 금지
신고
2010.03.29 08:06


Dynamic Prototyping with SketchFlow in Expression Blend라는 긴 제목의 원서가 나왔습니다. SketchFlow를 이용해서 Prototyping을 잘 할 수 있는 방법을 소개하고 있습니다.
 역시나 원서라는게 쫌.. ^^

아마존에서 주문할 수 있습니다.
저작자 표시 변경 금지
신고
2010.03.10 10:31
WPF에서 다양한 효과를 줄 수 있는 두 가지 프로젝트가 있어서 소개해 드립니다. CODEPLEX에서 공개되어 있는 아래 두 개의 프로젝트는 Pixel Effiect를 줄 수 있는 Effects Library와 전환 효과를 줄 수 있는 Transitionals 입니다. 
  사진이나 동영상 혹은 씬의 전환에 사용하면 괜찮을 것 같습니다.

http://wpffx.codeplex.com/ 

http://www.codeplex.com/transitionals 

저작자 표시 변경 금지
신고
2010.03.09 14:42
안타깝게도 원서라는게 한계이긴 하지만 그래도 최근 MVVM(혹은 MVC) 모델에 대한 추측과 잘못된 가이드가 난무하는 가운데 정리를 할 수 있는 한권의 책이라는 점에서 의미가 있을 것 같습니다.

책으로는 19.9$ 디지털 카피는 9.9$라고 합니다.

저작자 표시 변경 금지
신고


티스토리 툴바