프리즘 생산성 도구들

프리즘 생산성 도구들

생산성 도구

현재 프리즘은 Visaul Studio 및 Visual Studio Mac과 연동해 WPF, UWP, 네이티브 iOS 및 Xamarin.Forms를 사용한 Android 앱을 개발하기 위한 매우 생산적인 개발자 워크플로우를 지원한다. 코드 스니펫, 아이템 템플릿, 프로젝트 템플릿을 사용해 빠르게 프리즘 앱 제작을 시작할 수 있다.

현재 다음과 같은 도구를 사용할 수 있다.

  • Prism Template Pack
  • Prism Template Studio
  • Prism Extensibility Pack

Prism Template Pack

프리즘 템플릿 팩은 프리즘을 사용한 WPF 및 Xamarin.Forms 개발을 위한 여러 코드 스니펫, 아이템 템플릿 및 프로젝트 템플릿을 포함하고 있다.

Snippets

  • propp - Property, with a backing field, that depends on BindableBase
    private string _fieldName;
    public string PropertyName
    {
        get { return _fieldName; }
        set { SetProperty(ref _fieldName, value); }
    }
  • cmd - Creates a DelegateCommand property with Execute method
    private DelegateCommand _fieldName;
    public DelegateCommand CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName));

    void ExecuteCommandName()
    {

    }
  • cmdfull - Creates a DelegateCommand property with Execute and CanExecute methods
    private DelegateCommand _fieldName;
    public DelegateCommand CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName, CanExecuteCommandName));

    void ExecuteCommandName()
    {

    }

    bool CanExecuteCommandName()
    {
        return true;
    }

  • cmdg - Creates a generic DelegateCommand property
    private DelegateCommand<string> _fieldName;
    public DelegateCommand<string> CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand<string>(ExecuteCommandName));

    void ExecuteCommandName(string parameter)
    {

    }

  • cmdgfull - Creates a generic DelegateCommand property with Execute and CanExecute methods
    private DelegateCommand<string> _fieldName;
    public DelegateCommand<string> CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand<string>(ExecuteCommandName, CanExecuteCommandName));

    void ExecuteCommandName(string parameter)
    {

    }

    bool CanExecuteCommandName(string parameter)
    {
        return true;
    }

아이템 템플릿

Cross Platform
  • Prism ViewModel - BindableBase를 상속하고 기본 생성자를 가진 ViewModel.
WPF
  • Prism UserControl - ViewModel을 가진 UserControl
  • Prism Window - ViewModel을 가진 Window
Xamarin.Forms
  • Prism ContentPage - Auto-registration 및 ViewModel을 가진 ContentPage
  • Prism NavigationPage - Auto-registration 및 ViewModel을 가진 NavigationPage
  • Prism MasterDetailPage - Auto-registration 및 ViewModel을 가진 MasterDetilPage
  • Prism TabbedPage - Auto-registration 및 ViewModel을 가진 TabedPage
  • Prism CarouselPage - Auto-registration 및 ViewModel을 가진 CarouselPage

프로젝트 템플릿

WPF
  • Prism Blank App - 새 WPF 쉘 앱을 만드는 프로젝트. 앱을 초기화하고 보이기 위한 기본적인 bootstrapper를 가지고 있다. Views, ViewModels 폴더에 각각 MainWindow, MainWindowViewModel이 위치해 있다.
  • Prism Module - 프리즘 모듈로 작동하는 새 프로젝트를 솔루션에 추가한다. 두 개의 비어있는 Views, ViewModels 폴더와 IModule을 구현한 클래스가 정의되어 있다.

WPF 프로젝트 마법사를 사용해 컨테이너를 선택하면 올바른 누겟 패키지를 설치했는지 고민할 필요가 없다.

Xamarin.Forms
  • Prism Blank App - 이 프로젝트는 다음과 같은 4개의 프로젝트와 함께 .NET Standard Xamarin.Forms 앱을 생성한다.
    • 공유 코드
    • iOS 앱
    • 안드로이드 앱
    • UWP 앱
  • Prism Module - WPF 모듈과 동일한 구조에 덧붙여 IModule 클래스에 등록된 ViewA, ViewAViewModel 기본 뷰가 생성된다.

WPF와 마찬가지로 Xamarin.Forms 프로젝트 마법사를 사용해 손쉽게 프로젝트를 생성할 수 있다.

Visual Studio에서 설치

Prism Template Pack은 Visual Studio Gallery에서 사용할 수 있다. 확장 - 확장 관리 - 온라인 - Visual Studio 마켓 플레이스에서 Prism Template Pack을 설치하면 끝.

Prism Template Studio

Visual Studio Mac용 도구. 윈도우용 템플릿 팩과 동일한 기능을 한다. 마찬가지로 확장 관리자에서 설치할 수 있다.

댓글

이 블로그의 인기 게시물

C# 남아도는 메모리에도 불구하고 OutOfMemoryException이 발생한다면?

USB를 뒤는 괜찮은데 앞에 꽂으면 인식이 힘들다?

MySQL 데이터 타입과 Java 데이터 타입 비교/매칭