3. PySide6/3-5. File
9강. 회원가입 과제 구현
9강. 회원가입 과제 구현
2026.06.010. 학습 목표→ 8강 회원가입 과제를 실제 코드로 구현하고, 회원가입부터 로그인, 프로필 수정까지 전체 흐름을 확인합니다.더보기이번 글에서 다룰 내용이번 글에서는 8강 과제였던 회원가입 기능을 실제 코드로 구현합니다.회원가입 View에서 새 회원 정보를 입력하면, 비밀번호는 그대로 저장하지 않고 password_hash로 변환해 저장합니다.또한 회원 정보를 한 명만 저장하는 구조가 아니라, members 리스트에 여러 회원을 저장하는 구조로 만듭니다.구분내용핵심 개념회원가입 정보를 member.json에 저장하고, 비밀번호는 password_hash로 관리합니다.구현 파일main.py, password_utils.py, member_storage.py, member_model.py, tab_window..
8강. 회원가입 과제
8강. 회원가입 과제
2026.06.010. 학습 목표→ 회원가입 정보를 JSON 파일에 저장하고, 비밀번호는 해시값으로 관리하는 과제를 이해합니다.더보기이번 과제에서 할 일이번 과제에서는 기존 로그인 프로그램에 회원가입 View를 추가합니다.사용자가 회원가입 화면에서 아이디, 비밀번호, 이름, 이메일, 전화번호를 입력하면 새 회원 정보가 member.json 파일에 저장되어야 합니다.중요한 점은 비밀번호를 그대로 저장하지 않는 것입니다.비밀번호는 password_hash 형태로 변환해서 저장해야 합니다.구분내용핵심 개념회원가입 정보를 파일에 저장하고, 비밀번호는 해시값으로 관리합니다.실습 준비PySide6, QTabWidget, QLineEdit, QPushButton, QLabel, JSON 파일, hashlib를 사용합니다.최종 목표회원..
7강. 비밀번호를 해시로 저장하고 로그인 검증하기
7강. 비밀번호를 해시로 저장하고 로그인 검증하기
2026.06.010. 학습 목표→ 비밀번호를 평문으로 저장하지 않고, 해시값으로 저장한 뒤 로그인할 때 안전하게 비교하는 구조를 학습합니다.더보기이번 글에서 다룰 내용이번 글에서는 로그인 회원 정보 중 비밀번호를 그대로 저장하지 않는 방법을 학습합니다.6강에서는 회원 정보를 member.json 파일에 저장하고 다시 불러오는 구조를 만들었습니다.하지만 비밀번호가 1234처럼 그대로 파일에 저장되면 누구나 파일을 열어 비밀번호를 확인할 수 있습니다.그래서 이번 강의에서는 비밀번호를 Hash해시 값으로 바꾼 뒤 저장합니다.구분내용핵심 개념비밀번호를 평문으로 저장하지 않고 해시값으로 저장합니다.실습 준비Python의 hashlib 모듈, 기존 member.json 저장 구조, PySide6 로그인 화면최종 목표member.j..
6강. 로그인 정보를 파일로 저장하고 다시 불러오기
6강. 로그인 정보를 파일로 저장하고 다시 불러오기
2026.05.290. 학습 목표→ 로그인 회원 정보를 JSON 파일로 저장하고, 프로그램 시작 시 다시 불러오는 구조를 학습합니다.더보기0.1 이번 글에서 다룰 내용이번 글에서는 로그인 회원 정보를 JSON 파일로 저장하고 다시 불러오는 방법을 학습합니다.지난 Model - View Section의 6강. Model/View 과제 구현 에서는 회원 정보를 코드 안에 직접 작성했습니다.이번에는 회원 정보를 member.json 파일에 저장합니다.프로필 View뷰에서 회원 정보를 수정하면 Model모델의 값이 바뀌고, 그 값이 파일에도 저장되도록 구현합니다.구분내용핵심 개념회원 정보를 코드 안에만 두지 않고 JSON 파일로 저장하고 다시 불러옵니다.실습 준비PySide6의 QFile, QTextStream과 Python의 ..
5강. Model/View 구조로 파일 처리 코드 분리하기
5강. Model/View 구조로 파일 처리 코드 분리하기
2026.05.290. 학습 목표→ 파일 처리 코드를 FileModel로 분리하고, 화면 코드는 FileEditorView에 남기는 구조를 학습합니다.더보기이번 글에서 다룰 내용이번 글에서는 Model모델과 View뷰 구조로 파일 처리 코드를 분리합니다.4강에서는 하나의 GUI 클래스 안에 파일 쓰기, 읽기, 복사 기능을 모두 넣었습니다.이번 5강에서는 파일 처리 로직은 FileModel로 옮기고, 화면과 버튼 처리는 FileEditorView에 남깁니다.이렇게 나누면 나중에 기능이 많아져도 코드를 관리하기 쉬워집니다.구분내용핵심 개념파일 기능은 Model이 담당하고, 화면과 버튼은 View가 담당하도록 역할을 나눕니다.실습 준비4강에서 만든 GUI 파일 처리 코드를 기준으로 구조를 개선합니다.최종 목표FileModel,..
4강. GUI에서 파일 쓰기/읽기/복사 기능 연결하기
4강. GUI에서 파일 쓰기/읽기/복사 기능 연결하기
2026.05.290. 학습 목표→ 콘솔에서 익힌 QFile 기능을 GUI 버튼에 연결해 파일 쓰기, 읽기, 복사를 구현합니다.더보기이번 글에서 다룰 내용이번 글에서는 QFile큐파일, QFileDialog큐파일다이얼로그, QMessageBox큐메시지박스를 사용해서 GUI 파일 처리 기능을 만듭니다.1강에서는 QFile로 파일을 쓰고 읽는 가장 작은 실습을 했습니다.2강에서는 QFile.open()과 QIODevice 플래그를 비교했습니다.3강에서는 QTextStream으로 텍스트 파일을 다루는 방법을 익혔습니다.이번 4강에서는 그 코드를 GUI 버튼에 연결합니다.구분내용핵심 개념GUI 버튼을 클릭했을 때 QFile로 파일을 쓰고, 읽고, 복사하는 흐름을 이해합니다.실습 준비Python, PySide6가 설치된 환경에서 ..
3강. QTextStream으로 텍스트 파일 다루기
3강. QTextStream으로 텍스트 파일 다루기
2026.05.290. 학습 목표→ QTextStream으로 텍스트 파일을 더 편하게 쓰고 읽는 방법을 익힙니다.더보기이번 글에서 다룰 내용이번 글에서는 QTextStream큐_텍스트_스트림을 사용해서 텍스트 파일을 다루는 방법을 학습합니다.1강에서는 QFile로 파일을 쓰고 읽는 가장 간단한 실습을 했습니다.2강에서는 QFile.open()에 들어가는 QIODevice 플래그를 비교했습니다.이번 3강에서는 QTextStream을 중심으로 문자열 쓰기, 전체 읽기, 줄 단위 읽기를 실습합니다.구분내용핵심 개념QTextStream은 열린 파일에 텍스트를 쓰고 읽기 쉽게 도와주는 도구입니다.실습 준비Python과 PySide6가 설치된 환경에서 콘솔 스크립트로 실습합니다.최종 목표QTextStream으로 텍스트 쓰기, 전체 ..
2강. QFile.open()과 QIODevice 플래그 이해하기
2강. QFile.open()과 QIODevice 플래그 이해하기
2026.05.290. 학습 목표→ QFile.open()에 들어가는 QIODevice 플래그의 의미와 조합 방식을 이해합니다.더보기이번 글에서 다룰 내용이번 글에서는 QFile.open()에 들어가는 QIODevice큐아이오디바이스 플래그를 학습합니다.1강에서는 QFile로 파일을 쓰고 읽는 가장 간단한 실습을 진행했습니다.이번 2강에서는 파일을 열 때 사용하는 ReadOnly, WriteOnly, Append, Text의 차이를 직접 비교합니다.구분내용핵심 개념QFile.open()은 파일을 실제로 여는 함수이고, QIODevice 플래그는 파일을 어떤 방식으로 열지 정합니다.실습 준비Python과 PySide6가 설치된 환경에서 콘솔 스크립트로 실습합니다.최종 목표WriteOnly, ReadOnly, Append, ..
1강. QFile 간단 실습: 파일 쓰기와 읽기
1강. QFile 간단 실습: 파일 쓰기와 읽기
2026.05.290. QFile 학습 목표→ QFile로 텍스트 파일을 만들고 다시 읽는 가장 간단한 실습을 진행합니다.더보기이번 글에서 할 일이번 글에서는 QFile큐파일을 사용해서, 프로그램 외부의 텍스트 파일에 문자열 데이터 저정 합니다.처음부터 GUI를 만들지 않습니다.먼저 콘솔에서 sample.txt 파일을 만들고, 데이터를 저장하고, 그 파일의 내용을 다시 읽어 봅니다.구분내용핵심 개념QFile로 파일을 열고, QTextStream으로 텍스트를 쓰고 읽는 기본 흐름을 이해합니다.실습 준비Python과 PySide6가 설치된 환경에서 콘솔 기준으로 실습합니다.최종 목표sample.txt 파일을 만들고, 문자열을 저장하고, 저장된 내용을 다시 읽어서 콘솔에 출력합니다.이번 단계의 핵심: 처음에는 모든 옵션을 외우..