MAUI 활용

[MAUI 활용] BookStore 만들기 (14) – Review

“[MAUI 활용] BookStore 만들기” 포스팅에서는 간략하게 나마 MAUI 를 활용하여 간단한 BookStore 기능을 만들어 보았습니다. 간단하게 “도서 조회”, “도서 추가” , “도서 삭제” 기능만 구현하였지만, 그 과정에서 MAUI 로 앱을 개발할 때 사용되는 여러가지 개념에 대해서 정리해 보았습니다. 아래는 그중에서도 가장 중요한 개념들입니다. 위의 개념에 대해서는 본 블로그의 [MAUI 기본] 에서도 자세히 설명해 놓았습니다. 아직은 […]

[MAUI 활용] BookStore 만들기 (13) – Add Book, Delete Book

이번 포스팅에서는 도서 추가 기능과 삭제 기능을 구현해 볼 예정입니다.아래와 같은 과정으로 진행할 예정입니다. MainPage.xaml 수정 아래와 같이 MainPage 화면 레이아웃을 수정합니다. 이전 포스팅의 내용과 거의 동일하지만 추가된 부분 중 중요한 부분은 아래 부분입니다. “Add Book” 이라는 버튼을 화면 상단에 추가하였으며 해당 버튼을 누르면 BookListViewModel 의 GoToAddBookPageCommand 를 호출하게 됩니다. 도서 리스트를 표현하는 화면에서는 각각의

[MAUI 활용] BookStore 만들기 (12) – 도서 상세페이지 이동 Part 2

이전 포스팅에서 도서 상세페이지로 이동하는 기능을 모두 구현하였습니다. 이번 포스팅에서는 도서 상세 페이지로 이동할 때 파라미터를 넘기는 다른 방식을 소개하려 합니다. 이전 방식에서는 아래와 같이 도서 리스트 페이지에서 상세 페이지로 이동할 때 Book 객체를 넘겨 주었습니다. [MainPage.xaml] MainPage.xaml 에서는 특정 도서를 클릭했을 때 선택한 Book 객체를 BookListViewModel 의 GetBookDetailCommand 의 파라미터로 넘겨주었습니다. BookListViewModel.cs GetBookDeatail 메서드에서는

[MAUI 활용] BookStore 만들기 (11) – 도서 상세페이지 이동 Part 1

이번 포스팅에서는 상세 페이지로 이동하는 기능을 구현하려고 합니다. 지금까지 구현된 것은 단순하게 도서 리스트를 조회하여 메인 페이지에 도서 정보들을 보여주는 기능입니다. 이 과정에서 아래와 같은 기본적인 내용들을 학습하였습니다. 이번에는 도서 기본 정보를 클릭했을 때 도서 상세 페이지로 화면을 전환하는 기능에 대해서 포스팅 하겠습니다. 아주 간단한 시나리오지만 몇가지 중요한 개념에 대해서 배우게 됩니다.  [MAUI 기본] 데이터바인딩

[MAUI 활용] BookStore 만들기 (10) – Refresh 기능 추가

모바일 애플리케이션에서는 화면을 위에서 아래로 끌어서 “새로 고침” 기능을 제공하는 경우가 많습니다. 이번 장에서는 기존에 만들었던  도서 정보 조회 화면에 “새로 고침” 기능을 추가해 보겠습니다. 기존 MainPage.xaml 소스를 아래와 같이 수정해 보겠습니다.  [MainPage.xaml] 어떤 부분이 변경되었는지 보이시나요? 기존 CollectionView가 새로 추가된 RefreshView 의 하위 엘리먼트로 설정된 것을 확인할 수가 있습니다.  RefreshView RefreshView는 사용자가 목록을 아래로

[MAUI 활용] BookStore 만들기 (9) – ItemTemplate, DataTemplate

이번 포스팅에서는 BookStore 의 View 개발을 더 진행하기 전에 간단히 ItemTemplate 과 DataTemplate 에 관해서 알아보도록 하겠습니다.  ItemTemplate과 DataTemplate는 XAML에서 컬렉션 데이터를 시각적으로 표현할 때 사용되는 중요한 개념입니다. 이 둘은 주로 ListView, CollectionView, ItemsControl 같은 컨트롤에서 활용되며, 컬렉션의 각 항목이 어떻게 보여질지를 정의합니다. ItemTemplate [CollectionView 의 ItemTemplate] 위 예시에서 즉, ItemTemplate은 컬렉션의 각 아이템이 어떻게 렌더링될지를 정의하는 역할을 합니다. DataTemplate DataTemplate은 데이터

[MAUI 활용] BookStore 만들기 (8) – Book List 페이지 만들기 Part2

이제 실제 페이지에 도서 정보를 조회하는 기능을 추가해 보겠습니다. 이 페이지는 책 목록을 불러와서 화면에 보여주는  역할을 합니다. 페이지 상단에는 책 목록이 CollectionView를 통해 표시되며, 사용자가 Get Books 버튼을 클릭하면 BookListViewModel 에 있는  LoadBooksCommand가 실행되어 Books 컬렉션에 데이터를 로드합니다. 로딩이 완료되면  View 에서는 자동으로 데이터 변경을 감지하여 화면에 데이터를 표시하며, 각 항목은 책의 ID와 제목을 나란히

[MAUI 활용] BookStore 만들기 (7) – Book List 페이지 만들기 Part1

이제 본격적으로 도서 리스트를  조회할 수 있는 View(페이지) 를 만들어 보겠습니다. 혹시 MAUI 에서 사용하는 DataBinding 개념에 익숙치 않으면 데이터바인딩에 대한 이전 포스팅을 참고하시기 바랍니다. [MAUI 기본] 데이터바인딩 – 기본 개념 우선 MainPage.xaml 파일을 열어서 아래와 같이 namespace 와 DataType 을 정의합니다 . 나머지 부분은 모두 삭제합니다.   [MainPage.xaml] 추가된 부분은 아래와 같습니다.  이 부분은 XAML

[MAUI 활용] BookStore 만들기 (6) – 의존성 주입

NET MAUI에서의 의존성 주입(Dependency Injection) 은 응용 프로그램의 컴포넌트 간 결합도를 줄이고, 객체 간 의존성을 효율적으로 관리하는 중요한 디자인 패턴입니다. .NET MAUI는 기본적으로 이 패턴을 지원하여, 서비스나 뷰 모델을 쉽게 주입하고 관리할 수 있게 해줍니다. 의존성 주입은 .NET Core와 동일한 방식으로 작동하며, 대부분의 .NET 애플리케이션에서 사용하는 서비스 등록과 동일한 메커니즘을 따릅니다. 의존성 주입의 핵심 개념 의존성을 주입하는

[MAUI 활용] BookStore 만들기 (5) – BookListViewModel 만들기

이제 본격적으로 BookStore 에서 사용할 ViewModel 을 만들어 보겠습니다. 이번에 만들 ViewModel 은 도서 리스트를 보여주는 페이지에서 사용할 예정이기 때문에 BookListViewModel 로 만들려고 합니다. BookListViewModel 은 이전 강의에서 만들었던 BaseViewModel 을 상속받습니다.  도서 리스트를 제공할 것이기 때문에 도서 리스트를 검색해오는 기능이 필요합니다. 이전 강의에서 BookService 라는 클래스를 만들었으며 해당 클래스는 도서 리스트를 제공하는 기능을 갖고