분류 전체보기
[Django 웹 프로젝트] 4. 댓글(vue.js)을 django 에 붙이기 (2021-08-03)
[배경]댓글도 django 에서 url 엔드포인트 잡고 작업했더니, 댓글을 CRUD 가 일어날 때마다 전체 화면 렌더링이 다시되었다. 팀원들 모두 그 때 당시에는 이게 불편하다고 느꼈는데, 아무도 해결할 수 있는 사람이 없어보여서, 내가 뚝딱 해버리자는 마인드로 시작했다. 왜냐하면 django 로 템플릿 렌더링까지 다 해야하는 상황에서, 프론트팀 3명은 웹 디자인만 해주고, 백엔트팀(선배 한명과 나)이 모든 기능을 개강전까지 다 마무리를 해야하는 시기였다. 백엔드 쪽에서는 웬만한 기능은 다 구현이 되었고, 자잘한 버그와 프론트쪽에서의 폼 유효성 검사 등을 추가해야했었다. 진짜 심적으로 엄청 급하게 했던 기억이 있다. 첫날에 검색하면서 좀 알아보다가 비동기 , Restful 등의 개념을 알게 되었고,..
![[Spring Boot] 3. OAuth2 인증 설계 및 구현 (feat. Security FilterChain 분석)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5yrc7%2FbtrzoNUtEgk%2FXf1ht6Cvh1YR9XCEiFR0A0%2Fimg.jpg)
[Spring Boot] 3. OAuth2 인증 설계 및 구현 (feat. Security FilterChain 분석)
이 게시글은 당시에 고민했던 내용으로, securityFilterChain 을 파헤치기 아주 좋은 공부였습니다. 현재는 인증 모듈을 구현 완료하여, https://github.com/InhaBas/Inhabas.com-api/wiki/Auth-module-document 에 자세히 작성하여 놓았습니다. 아래의 사진과 같이 OAuth2 인증을 통해 로그인/회원가입이 가능하도록 되어있다. 이를 spring 에서 구현해야하기 때문에, spring security 및 oauth2 인증 관련하여 공부했다. [spring security 구조] 아래 깃헙 이슈에서 자세히 기술해놓았다. spring security 구조를 파헤쳐보자 · Issue #48 · InhaBas/Inhabas.com-api 슬슬 소셜로그인도..
[Spring Boot] 2. 서버 개발 환경 분리 (Spring Cloud Config 적용) 및 배포 자동화
[배경] 기존의 장고 프로젝트를 배포서버와 개발서버로 나누어서 운영했음. ( 테스트 환경 설정파일 / 개발 서버 환경 설정파일 / 배포서버 환경 설정 파일 ) 모두 달랐다. 외부에 노출되면 안되는 정보들이 있어서 github 에 무턱대고 업로드 할 수가 없었다. => 로컬에서 직접 관리했다. 하나의 리눅스 서버 안에서, 유저를 나누어서 환경을 분리했다.. 프로젝트 하위에 rsync 로 직접 설정파일을 넣어주고 있었다. 빠르게 환경 설정 파일을 변경해야할 일들이 생겨서, 직접 리눅스 서버 파일을 수정했다가 나중에 내 로컬 원본을 수정했다 하면서, 설정파일 관리가 힘들어짐. 동아리 예산 문제, 학교 네트워크 문제 등으로 서버를 옮기거나 재시작해야하는 등 프로젝트를 새로운 환경에서 재빌딩하는일이 종종 있었는데..
![[Spring Boot] 1. 게시판 테이블 재설계](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYeKPe%2FbtrvdvcuecQ%2FgBnAaaKP1kBNZYKcvgHmd0%2Fimg.png)
[Spring Boot] 1. 게시판 테이블 재설계
기존의 Django 레거시를 갈아 엎기로 하고나서, 처음으로 한 것은 게시판 테이블을 다시 설계한 것이다. www.inhabas.com 의 가장 핵심기능은 대부분 게시판이다. 기존의 레거시에서는 모든 게시판 종류마다 (게시판 테이블 + 댓글 테이블 + 파일 테이블) 이렇게 되어있었다. 자유게시판과 같이 새로운 게시판이 하나 더 늘어나면 게시판콤보세트(게시판 테이블 + 댓글 테이블 + 파일 테이블) 를 하나 만들고, 중복되는 비지니스 코드를 만들고, 권한검사에 추가하는 로직을 짰다. 근데 중복되는 비지니스 코드를 줄인다고, 엔티티매퍼를 따로 설정해서 게시글 타입 번호로 if else 엄청 쓰고, 그 중간에 권한 검사 if else 엄청 남발해서,,,,, 허허,,,, 그 개고생을 하면서 느낀것! 유지보수 불..
![[Python 기초] 6. OOP 캡슐화&추상화](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbL2gys%2FbtrAHkhAhLO%2FokLyKu0Y26DN72du3ZYX40%2Fimg.png)
[Python 기초] 6. OOP 캡슐화&추상화
해당 강의는 인하대학교 빅데이터 탐구 동아리 (www.inhabas.com) 에서 신입생을 대상으로한 파이썬 기초 강의 영상입니다. 강의 : https://youtu.be/lG7R3PTz-Q4 과제 : https://docs.google.com/presentation/d/1da-LaELQZYoRl69zH_2mU5ln_3GzXV_HqBlBfKRx-N0/edit?usp=sharing 6차시 과제 Triangle class와 각 점을 나타낼 Point class 생성 [ figure.py main.py ] 총 2개의 파일 생성 Point class는 정수형 변수 x, y를 private 멤버 변수를 가지고, show_info 함수, x와 y를 set하고 get하는 멤버 함수를 갖는다 docs.google.com
![[부록] 3. 가상환경을 주피터 커널에 연결하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLAYSE%2FbtrAEHq2gKR%2F8gTnKlBTsGxHkORwQaTRm1%2Fimg.png)
[부록] 3. 가상환경을 주피터 커널에 연결하기
해당 강의는 인하대학교 빅데이터 탐구 동아리 (www.inhabas.com) 에서 신입생을 대상으로한 파이썬 기초 강의 영상입니다. 강의 : https://youtu.be/e-bmOWUe4cM
![[부록] 2. 가상환경의 이해와 실습](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeWijz0%2FbtrACL2yY3e%2FjkaAKWTEABqEDPjP0AH0R0%2Fimg.png)
[부록] 2. 가상환경의 이해와 실습
해당 강의는 인하대학교 빅데이터 탐구 동아리 (www.inhabas.com) 에서 신입생을 대상으로한 파이썬 기초 강의 영상입니다. 강의 : https://youtu.be/5N6G2vEFoXY
![[부록] 1. 파이썬 실행 원리와 주피터 노트북](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkLvPM%2FbtrAD7RkwgC%2FPvyZkfJEgIKttjqk6clUt0%2Fimg.png)
[부록] 1. 파이썬 실행 원리와 주피터 노트북
해당 강의는 인하대학교 빅데이터 탐구 동아리 (www.inhabas.com) 에서 신입생을 대상으로한 파이썬 기초 강의 영상입니다. 강의 영상 : https://youtu.be/j9_MdAO8Rvg