Vue.js + AI 마법 21강: 성의 보물 창고를 더 똑똑하게! (Pinia Deep Dive)

안녕하세요! 가족과 함께하는 스마트 라이프입니다. 어제는 순간이동 마법 ‘Teleport’를 통해 성 안팎을 넘나드는 법을 배웠죠? 오늘은 우리 성의 가장 중요한 곳, 바로 모든 정보를 담아두는 ‘보물 창고(Pinia)’를 훨씬 더 똑똑하게 관리하는 보물 창고 심화, Pinia Deep Dive 마법을 소개합니다!

[IMAGE_1]

1. 똑똑한 창고의 3가지 마법 열쇠

창고를 그냥 쓰기만 하는 것보다, 세 가지 열쇠를 잘 사용하면 훨씬 정리 정돈이 잘 된 성을 만들 수 있어요.

  • State (보물 상자): 창고에 들어있는 진짜 물건들이에요. 점수, 이름, 아이템 목록 같은 것들이죠.
  • Getters (마법 안경): 보물을 그냥 보는 게 아니라, 안경을 쓰고 특별하게 보는 거예요. 예를 들어, 전체 아이템 중에서 ‘황금색’만 골라내서 보여주는 마법이죠.
  • Actions (로봇 팔): 물건을 직접 옮기거나 바꾸는 힘이에요. “점수를 10점 올려!”라고 명령하면 로봇 팔이 척척 움직인답니다.

2. 왜 더 깊이 배워야 하나요?

  • 자동 정리: 마법 안경(Getters)을 쓰면 내가 일일이 계산하지 않아도 AI 비서가 “지금 보물이 5개 남았어요!”라고 실시간으로 알려줘요.
  • 안전한 보관: 로봇 팔(Actions)을 통해서만 물건을 바꾸면, 보물이 갑자기 사라지거나 엉뚱한 곳으로 가는 실수를 막을 수 있어요.

3. 실전 마법: 마법 안경과 로봇 팔 쓰기

Vue.js 안에서 창고를 더 멋지게 코딩해볼까요?

<script setup>
import { defineStore } from 'pinia';

export const useCastleStore = defineStore('castle', {
  // 1. 보물 (State)
  state: () => ({ gems: 5 }),
  
  // 2. 마법 안경 (Getters)
  getters: {
    isFull: (state) => state.gems >= 10 ? '창고가 꽉 찼어요! ✨' : '더 담을 수 있어요!'
  },
  
  // 3. 로봇 팔 (Actions)
  actions: {
    addGem() {
      this.gems++;
    }
  }
});
</script>

[IMAGE_2]

4. 스마트 라이프를 위한 가족 코딩 팁

아이들에게 ‘도서관 사서’나 ‘창고 관리 로봇’에 비유해 보세요. 물건이 많아질수록 이름표를 잘 붙이고(State), 필요할 때 바로 찾아내고(Getters), 정해진 규칙대로 옮기는 것(Actions)이 얼마나 중요한지 알려주세요. 아이와 함께 만든 ‘에듀패드’에서 ‘레벨 계산기’를 만들어 보세요. 점수(State)가 오를 때마다 마법 안경(Getters)이 현재 레벨을 계산해서 보여주게 하면, 아이는 논리적으로 생각하는 즐거움을 느끼게 됩니다.

마치며: 완벽한 창고를 가진 성주

이제 여러분은 성의 모든 정보를 완벽하게 통제하고 관리하는 최고의 성주가 되었습니다! 창고가 튼튼하니 어떤 복잡한 마법도 이제 두렵지 않아요. 다음 시간에는 **’마법의 예고편(Suspense)’**이라는 주제로, 데이터가 도착하기 전까지 지루하지 않게 멋진 기다림 화면을 보여주는 비법을 배워볼게요! 내일 아침 9시에 만나요!