[Flask] 가장 빠른 풀스택 / 섹션 8. 실전 블로그 풀스택으로 구현하기
섹션 8. 실전 블로그 풀스택으로 구현하기
- MVP의 이해
- MVC 패턴과 블루 프린트
MVP(Minimum Viable Product)의 이해
최소한의 기능을 구현한 제품으로, 고객의 피드백을 받아서, 기능을 점차적으로 개선해나간다.
+++
실행 가능하기 위해 최소한으로 필요한 기능이라는 뜻으로, 주로 어떤 문제를 해결하기 위해 필요한 서비스를 빠르게 구축하기 위해 사용된다. (가설 검증을 위한 최소한의 상태)
또한, MVP 모델은 완전한 구현 없이도, 제품에 대한 고객의 관심을 파악할 수 있어 시장에서 성공하지 못할 제품에 대한 비용을 줄일 수 있어, 스타트업에서 주로 사용하는 방식이다. (스타트업에서의 베타버전 앱)
MVC 패턴과 블루 프린트
MVC (Model-View-Controller) : 소프트웨어 공학 학문 분야에서 나온 아키텍쳐
- Model : 응용 프로그램의 데이터 (주로 데이터베이스)
- View : 텍스트, 버튼 등의 사용자 인터페이스 (웹페이지)
- Controller : model과 view를 제어하는 중간 역할로, 모델에서 받은 데이터를 뷰에 전달하고, 뷰에서 받은 이벤트를 모델에 전달
MVC 패턴을 활용하여 코드를 작성할 시, 구현은 어렵지만 분업과 유지보수에 장점이 있다
blue print
여러 소스 파일에 플라스크 코드를 작성할 수 있도록 하는 기능. 모듈 / 라이브러리를 사용하는 것과 같이, 작성된 다른 경로의 소스 파일을 import 하여 해당 기능을 사용한다.
# dave_server.py
from flask import Flask
from test_view import blog_view
app = Flask(__name__)
app.register_blueprint(blog_view.blog_ab, url_prefix='/blog') # app에 blueprint 객체를 register
if __name__ == '__main__':
app.run(host='0.0.0.0', port='8080')
# blog.py
# blueprint 객체 작성
from flask import Blueprint
blog_ab = Blueprint('blog', __name__)
# http://localhost:8080/blog/blog1
@blog_ab.route('/blog1')
def blog():
return 'TEST BLUEPRINT'