컨텐츠
Django 5에 새롭게 도입된 GeneratedField
GeneratedField는 Django 5.0에 새로 추가된 모델 필드입니다. 예시로 나온 코드를 보면 변을 제곱하여 사각형의 면적을 area
필드로 다루는데요. 다른 필드를 참고하여 미리 연산된(computed) 값을 담은 필드지요. 사용법은 Django답게 간단합니다. 기존 모델 필드처럼 사용하면 되거든요. 한 가지 사소한 난관을 제외하면요. 바로 Expression 이지요.
Python 객체 이야기
기초이자 근간인 Python 객체에 대해 알아봅니다. 입문 단계에서는 체감하기 어려운 내용이고 바로 이해하기 어려운 개념인데다 몰라도 지장이 없다보니 대체로 "아~ 그렇구나"하고 가볍게 넘어가는 내용이죠. 그래도 Python 객체 체계와 개념을 이해할수록 Python을 활용하고 학습하는 효율과 효과가 커져요. 그래서 푸딩캠프 Python 입문 과정에서는 꼭 다뤄요. 이해 못해도 된다는 걸 강조하면서요. 😅
Django의 View에 비동기
Django의 View를 비동기로 처리하는 건 sync_to_async 함수와 async_to_sync 함수로 쉽고 간편하게 구현할 수 있습니다. 어떻게 이게 가능한지 살펴보겠습니다.
인공지능 음성합성기 구현하기
푸딩캠프가 제공하는 컨텐츠 중 음성이 나오는 컨텐츠는 음성합성기(Talk to Speech)로 녹음해요. 언제 녹음해도 늘 일정한 목소리 질을 내기 위해서죠. 강의자의 목소리로 인공지능을 학습시켜 저희의 목소리로 음성합성기를 구현하자고 결정했어요. 결론부터 말씀드리면, 꽤 만족스러운 결과물을 얻었습니다.
기능과 UI를 분리하는 Headless Component 이야기
UI 컴포넌트는 크게 로직과 상태, 그리고 UI 요소로 구성되지요. Headless는 단어에서 드러나듯이 "머리 없는"이라는 뜻으로, 머리(head)는 사용자에게 보여지는 UI를 상징하니, 시각적인 부분을 직접 제어하지 않는 것을 의미하는 거예요. 따라서, Headless Component는 UI가 없이 로직이나 상태 관리만을 담당하는 컴포넌트를 의미합니다. 이러한 컴포넌트는 UI의 구현을 외부에 위임하며, 개발자는 이를 사용하여 자신만의 커스텀 UI를 쉽게 만들 수 있습니다.