TOP
class="layout-aside-left paging-number">
본문 바로가기
728x90

[파이썬 Projects]188

[파이썬] 플라스크(Flask) - 테스팅(testing) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.테스팅(testing) [테스팅이란?]개발한 소프트웨어가 예상대로 작동하는지 검증하는 과정.버그를 미리 찾아 수정하거나 새로운 기능을 추가했을 때 기존 기능에 문제가 발생하지 않는지 확인하는 과정. 테스팅 없이 코드를 배포하면 사용자가 버그를 만나거나 시스템이 예상치 못한 방식으로 작동할 위험이 있다.테스팅은 이러한 문제를 미리 발견하고, 높은 품질의 소프트웨어를 제공하는 데 도움을 준다.플라스크에서의 테스팅 플라스크에서는 pytest나 플라스크 자체의 unittest를 이용하여 테스팅할 수 있다.my_app.py라는 파일을 만들고 하단의 코드를 입력.. 2024. 7. 22.
[파이썬] 플라스크(Flask) - 배포(Deployment) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.배포(Deployment) 배포란,개발한 웹 애플리케이션을 실제 사용자가 접근할 수 있는 환경에 올리는 과정.내 컴퓨터에만 작동하는 애플리케이션을 인터넷에 연결된 서버에 올려서 누구나 웹 브라우저를 통해 사용할 수 있게 만드는 것이다.웹 서버와 SGI 웹 서버: 실제로 사용자의 요청을 받고 응답을 주는 개체. 네트워크 통신의 전반적인 부분을 담당예. 엔진엑스(Nginx), 아파치(Apache) 등 서버 게이트웨이 인터페이스(SGI, Server Gateway Interface): 웹 서버와 웹 애플리케이션 사이에 필요한 통신 규약이 규약을 통해 웹 서.. 2024. 7. 22.
[파이썬] 플라스크(Flask) - 캐싱(caching) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.캐싱(caching) 캐싱이란,데이터를 한 번 받아오거나 계산한 결과를 메모리와 같은 빠르게 접근할 수 있는 임시 저장 공간에 보관하는 것을 의미한다.즉, 데이터 처리의 효율성을 높이는 기술이며, 이 저장 공간을 캐시(cache) 라 부른다. [캐싱의 주요 장점]- 서버의 부하를 줄이고 사용자에게 더 빠른 응답을 가능하게 한다- 애플리케이션의 성능과 사용자 경험을 크게 향상시킬 수 있다- 시스템 성능의 향상- 반복적인 요청에 대한 응답 시간을 줄일 수 있다 [캐싱의 단점]- 캐싱된 데이터는 항상 최신 데이터가 아닐 수 있으므로 캐시 데이터의 유효성을 .. 2024. 7. 21.
[파이썬] 플라스크(Flask) - RESTful API 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.RESTful API RESTful API는 컴퓨터나 스마트폰 애플리케이션(클라이언트)이 서버에 정보를 요청하거나 보낼 수 있는 방법 중 하나이다.이는 주로 웹사이트나 애플리케이션에서 다양한 서비스를 이용할 때 중요한 역할을 한다.★ 서버: 정보가 저장된 컴퓨터 ★ 클라이언트: 서버에 저장된 정보를 사용하려는 사람이나 애플리케이션HTTP 메서드 이해하기 HTTP 메서드: 서버와 클라이언트가 어떻게 대화할 것인지를 정해 놓은 규칙 [주요 명령어]GET(조회): 클라이언트가 서버에게 "이 정보 좀 줘"라고 '요청하는' 것 (웹 브라우저에서 웹페이지를 열 .. 2024. 7. 21.
[파이썬] 플라스크(Flask) - 인증과 세션(2) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.이전 내용 [파이썬] 플라스크(Flask) - 인증과 세션시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.인증과 세션 인증(authentication)사용자가 누구인지 확puppy-foot-it.tistory.com세션을 이용한 상태 관리 플라스크의 session 객체는 사용자별 상태를 관리하기 위한 수단으로, 쿠키에 암호화된 형태로 데이터를 저장한다.이는 사용자가 다시 사이트에 방문했을 때 이전의 상태를 유지할 수 있게 해준다. 플라스크 애플리.. 2024. 7. 21.
[파이썬] 플라스크(Flask) - 인증과 세션(1) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.인증과 세션 인증(authentication)사용자가 누구인지 확인하는 과정대체로 로그인 페이지에서 이 과정이 이루어지며, 사용자는 일반적으로 ID와 비밀번호를 제공한다.시스템은 이 정보를 데이터베이스와 비교하여 해당 사용자가 정당한 사용자인지 아닌지를 판단한다. 세션(session)사용자가 웹사이트에 접속한 이후부터 로그아웃하거나 브라우저를 닫을때까지 유지되는 정보의 집합이다.세션을 통해 사용자는 한 번 로그인하면 다시 로그인하지 않고도 다른 페이지를 자유롭게 이동할 수 있다.세션 정보는 서버 측과 클라이언트 측 쿠키에 저장하는 것이며, 서버 측에서.. 2024. 7. 20.
[파이썬] 플라스크(Flask) - 데이터베이스 (3) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.이전 내용 [파이썬] 플라스크(Flask) - 데이터베이스 (2)시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.이전 내용 [파이썬] 플라스크(Flask) - 데이터베이스 (1)puppy-foot-it.tistory.comFlask-Migrate Flask-Migrate는 플라스크 애플리케이션에서 SQLAlchemy 데이터베이스를 쉽게 마이그레이션할 수 있도록 도와주는 확장이다.Alembic을 기반으로 하며, 데이터베이스 스키마의 버전 관리를 효.. 2024. 7. 20.
[파이썬] 플라스크(Flask) - 데이터베이스 (2) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.이전 내용 [파이썬] 플라스크(Flask) - 데이터베이스 (1)시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.데이터베이스 (SQLAlchemy) 플라스크와 파이썬에서는 여puppy-foot-it.tistory.com플라스크와 MySQL 연동 - User 모델 생성 기본적인 플라스크 애플리케이션을 설정하고 SQLAlchemy를 설정한 뒤, User 모델을 생성한다.User 모델 생성은 데이터베이스에 정의한 테이블을 생성하는 것인데, User 클.. 2024. 7. 18.
[파이썬] 플라스크(Flask) - 데이터베이스 (1) 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.데이터베이스 (SQLAlchemy) 플라스크와 파이썬에서는 여러 가지 데이터베이스를 연결하여 사용할 수 있다. SQLAlchemy는 파이썬에서 사용할 수 있는 ORM(Object-Relational Mapping) 라이브러리이다. 즉, 데이터베이스 테이블을 파이썬 클래스로 매핑해주는 역할을 한다. 이를 통해 SQL 쿼리를 직접 작성하지 않고도 데이터베이스 연산을 수행할 수 있다.플라스크와 MySQL 연동 [MySQL을 기반으로 플라스크와 연동하는 방법]- 데이터베이스 생성: 'db_name'에 해당하는 MySQL 데이터베이스가 생성되어 있어야 한다.-.. 2024. 7. 16.
[파이썬] 플라스크(Flask) - 로깅 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.로깅 로깅(Logging): 프로그램 실행 중에 발생하는 이벤트, 메시지, 데이터 등을 시간순으로 기록하는 과정.이 기록들은 이후 문제 발생 시 원인 분석, 시스템 상태 모니터링, 사용자 행동 추적 등 다양한 목적으로 사용된다. - 로그 레벨(log level): 로그 메시지는 중요도에 따라 여러 레벨로 분류된다.DEBUG > 개발 중에 상세한 정보 제공WARNING > 예상치 못한 일이 발생했지만, 프로그램이 작동하는 데는 문제가 없을 때 사용INFO > 일반적인 작업의 성공 보고ERROR > 심각한 문제 발생CRITICAL > 아주 심각한 문제를 .. 2024. 7. 16.
[파이썬] 플라스크(Flask) - 세션과 쿠키 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.세션과 쿠키세션: 서버 측에서 사용자의 상태 정보를 유지한다. 사용자가 웹 애플리케이션에 로그인하면 서버는 고유한 세션 ID를 생성하고 이를 쿠키로 클라이언트에게 전송한다. 클라이언트는 이 세션 ID를 가진 쿠키를 사용해 이후 요청에서 자신을 인증하고, 서버는 이 ID를 이용해 사용자의 세션 데이터에 접근한다. 세션 데이터는 비교적 민감한 정보를 포함할 수 있다. (로그인 정보, 사용자의 권한, 구매한 상품 목록 등)쿠키: 클라이언트 측애서 관리되는 작은 데이터 조각이다. 웹 서버는 HTTP 응답을 통해 클라이언트에 쿠키를 전송하고, 이후 클라이언트는.. 2024. 7. 15.
[파이썬] 플라스크(Flask) - 블루프린트 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.블루프린트란? 블루프린트(Blueprint)는 플라스크에서 여러 컴포넌트를 논리적으로 그룹화하여 대규모 애플리케이션을 구성하는 방식이다.이를 통해 기능별로 코드를 분리하고 재사용할 수 있다.블루프린트는 웹 애플리케이션의 구조를 체계적으로 나타내는데, 특히 대규모 프로젝트에서 코드를 모듈화하여 관리할 때 유용하다. ◆ 블루프린트가 필요한 이유블루프린트는 대규모 애플리케이션의 복잡성을 줄이고, 코드의 재사용성을 높이며, 프로젝트의 유지보수를 용이하게 한다.모듈화: 블루프린트를 사용하면 코드를 논리적인 단위로 분리할 수 있어 유지보수가 쉬워진다.재사용성: .. 2024. 7. 15.
[파이썬] 플라스크(Flask) - 정적 파일 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.정적 파일(Static files) 정적 파일은 웹 서버가 따로 처리 없이 그대로 전달해주는 파일을 말한다. (이미지, CSS, 자바스크립트 파일 등의 리소스)이러한 정적 파일들은 사용자의 액션에 따라 변경되지 않고, 미리 서버에 저장되어 있다.플라스크에서 정적 파일 다루기 app.py 파일 안에서 플라스크 인스턴스를 생성하고, 이미지를 제공할 라우트를 설정.플라스크는 이미 /static 경로로 저적 파일을 제공하는 기본 설정이 있기 때문에 추가적인 설정 없이도 파일을 제공한다. 그럼에도 특정 경로로 파일을 제공하고 싶을 때는 send_from_dir.. 2024. 7. 14.
[파이썬] 플라스크(Flask) - 템플릿 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.템플릿 템플릿: 웹 페이지의 구조나 레이아웃을 미리 정의해 놓은 파일 플라스크에서는 Jinja2(진자2) 라는 템플릿 엔진을 사용하는데, Jinja2는 파이썬 코드를 HTML 파일에 삽입하여 웹페이지를 동적으로 생성할 수 있게 해준다. Jinja2는 Python에서 사용되는 빠르고 표현력 있는 템플릿 엔진이다. 이 엔진은 템플릿 안에 Python과 유사한 문법을 사용하여 코드를 작성할 수 있게 해준다. 플라스크 애플리케이션 폴더 내에 templates 라는 디렉터리를 생성하고, 이곳에 HTML 파일을 저장한다. Hello, {{name}}! ▶ .. 2024. 7. 14.
[파이썬] 플라스크(Flask) - 요청과 응답 시작에 앞서해당 내용은 , Dave Lee 지음. BJ Public 출판.내용을 토대로 작성되었습니다. 보다 자세한 사항은 해당 교재를 참고하시기 바랍니다.요청과 응답 요청: 웹 브라우저나 다른 클라이언트가 웹 서버에 정보를 요청하는 것.이 정보에는 여러 가지 데이터가 포함될 수 있으며, 이를 처리하여 적절한 응답을 클라이언트에게 전달하는 것이 웹 애플리케이션의 역할이다.플라스크에서의 요청 처리 플라스크에서는 request 객체를 통해 요청 데이터에 접근할 수 있다.이 객체는 클라이언트에게 받은 여러 가지 정보를 포함하고 있다. (URL, 헤더, 쿠키, 쿼리 매개변수 등)from flask import Flask, requestapp = Flask(__name__)@app.route('/query')de.. 2024. 7. 14.
728x90