기타 공부 35

0. 이 강의를 듣는 이유

https://youtube.com/playlist?list=PLuHgQVnccGMClNOIuT3b3M4YZjxmult2y Python Flask Web Framework www.youtube.com 장고의 쓴맛을 본 뒤... Java와 Spring에 열정을 바치겠다고 다짐한 지 얼마 되지 않은 지금... 갑자기 Python 프레임워크인 Flask를 공부하는 것은... 오픈SW플랫폼 수업의 팀 프로젝트에 사용하기 위해서이다. 교수님께서 수업 중 Flask를 가르쳐주겠다고 하셨지만... 다년간의 경험에 의하면... 수업에서 배운 내용만으로 개발을 수월하게 해낼 수 있었던 적이 한 번도 없다... 교수님만 믿고 Flask를 하나도 공부하지 않은 채 기다리다간 불안감에 잠을 설칠 것이 뻔하다! 나 혼자 하는 ..

IntelliJ에 깃을 연결하는 방법

다른 많은 IDE처럼, IntelliJ 내에서도 깃 작업을 할 수 있다. 이를 위해서는 IntelliJ에 깃을 연결하는 준비작업이 필요하다. 이 게시글에서는 이 준비작업에 대해 안내한다. 방법은 여러 가지가 있는데, 그 중 나에게 가장 편한 방법을 설명하겠다. (야매로 어찌저찌 익힌 방법이다. 더 깔끔한 과정을 알게 되면 수정하겠다.) 시작하기 전에, IntelliJ에 Git이 설치되고 활성화되어있는지부터 확인하자. 이렇게 플러그인에서 git을 검색하면 된다. 보통은 기본으로 설치 및 활성화가 되어있다. 안 되어있다면 설치하고 활성화해주자. 이제 git이 잘 작동하는지 테스트하기 위해 git 설정 페이지를 연다. 설정 창에서 git을 검색하면 쉽게 찾을 수 있다. 위쪽에 보이는 Test 버튼을 눌러 테스..

기타 공부/IDE 2022.09.30

9월 20일 오픈SW플랫폼 과제 - 자기소개 페이지

간단한 과제이지만 기록은 하는 것이 좋을 것 같아서 적어두겠다. 자기소개 페이지를 만드는 과제로, 미디어 파일을 사용할 것, iframe 등 수업에서 배운 태그를 사용할 것, 배경음악이 자동재생되게 할 것 등의 요구사항이 있었다. css 작업은 선택사항이었다. 아래는 깃허브 링크이다. 업로드되어있는 html과 css파일을 다운로드받아 둘을 한 폴더에 함께 넣고 html 파일을 브라우저상에서 실행시키면 자기소개 페이지를 볼 수 있다. GitHub - 00blowup/2022OpenSWPlatform_0920: 2022년 2학기 오픈SW플랫폼 자기소개 웹사이트 만들기 실습 2022년 2학기 오픈SW플랫폼 자기소개 웹사이트 만들기 실습. Contribute to 00blowup/2022OpenSWPlatfor..

IntelliJ에서, Project 윈도우의 표시 디렉토리를 변경하려면 어떻게 해야 하지?

이 글은 인프런 김영한 강사님의 스프링 핵심 원리 - 기본편 강의를 들으며 실습하다가 생긴 IntelliJ IDE 관련 문제에 대한 글이며... 나의 첫 스택 오버플로우 사용기이다. 원래 나의 Project 윈도우는 아래와 같이 core 디렉토리 하에 있는 파일들만을 표시했었다. 그런데 갑자기 아래와 같이 바탕화면 폴더 내에 있는 모든 파일을 보여주기 시작했다. 난 core 폴더만 보고 싶다고! 정확히 core 디렉토리를 선택해서 다시 열어보아도... 프로젝트를 아예 닫았다가 다시 열어보아도... 안 된다. 여기저기 살펴보고 settings를 뒤져봐도 고칠 방법을 찾지 못했다. 구글링을 해보았지만 나와 비슷한 사례를 찾을 수 없었고 애초에 어떤 키워드로 검색해야 하는지도 알 수 없었다. Project 윈..

렛츠고 장고! 나머지 공부 내용 링크

https://www.notion.so/2022-UNIS-f9dab708774843709d4e9f233d3e58fa 2022 UNIS 장고 그룹스터디: 노하은 결과물 모음 개요 www.notion.so 뒷부분의 모든 공부 내용은 UNIS의 노션 페이지에 기록하였다. 위 링크는 팀원들의 노트정리를 제외한 내 노트정리만을 모아두고, 팀원들과 함께 이룬 결과물을 추가해둔 정리페이지이다.

초급 9회차 트리

강의 초반부에서는 트리에 대한 기본적인 설명을 해주었다. 특히 적어둘 만한 것으로는 이진 트리에 관한 내용이 있었다. 학교 수업에서 배웠으나 잊고 있었던 내용인데, 이 기회에 확실히 기억해둬야겠다. 포화, 완전 이진 트리의 인덱스 포화 이진 트리와 완전 이진 트리는 그 정의로 인해 반드시 인덱스가 특정한 규칙을 띤다. 루트의 인덱스를 1로 하고 각 레벨의 왼쪽부터 차례대로 번호를 매기면 각 노드의 인덱스는 다음의 그림과 같이 된다. 이때 요소들은 반드시 다음의 규칙을 따른다. 부모의 인덱스를 i라 할 때, 왼쪽 자식의 인덱스는 2i 이고 오른쪽 자식의 인덱스는 2i+1 이다. 이진 트리의 순회법 이진 트리의 순회법에는 3가지가 있다. 전위 순회(Preorder) : 루트 - 왼쪽 서브트리 - 오른쪽 서브..

초급 8회차 그래프 탐색

잊기 쉬운 용어 인접 리스트와 인접 행렬을 헷갈리지 말자 내가 자주 쓰는 그 방식은 인접 리스트임 인접 행렬은 다차원 배열을 사용하는 방식임 DFS DFS는 본래 스택의 성질을 이용한 탐색법이다. 나는 재귀로 구현해왔지만, 사실 이것도 스택의 원리와 똑같다. 재귀라는 것은 시스템 상에 스택이 쌓이고 빠지면서 실행되기 때문이다. 스택을 사용하여 DFS를 하는 방법은 다음과 같다. 일단 시작 정점의 번호를 스택에 넣는다. 그리고 스택의 top에 있는 정점에 대하여 다음을 반복한다. 스택 top에 있는 정점이 이미 방문한 정점이라면 그냥 빼내서 버리고, 아직 방문하지 않은 정점이라면 빼냄과 동시에 그 정점의 자식들을 스택에 차곡차곡 쌓는다. 이 과정을 반복하다 보면 스택이 완전히 비는 시점이 온다. 그때는 모..

4강 장고 인증 파트 : 해커톤 참가 신청 사이트 만들기 - User모델과 회원가입

User모델이란? 장고는 진짜 전설이다... 프레임워크는 원래 다 이런 건가... 별 게 다 미리 구현되어있다... 장고는 사용자 계정을 모델링한 User 모델을 제공한다. 우리가 직접 모델을 만들 필요가 없다. 사용자 정보에 필요할 기본적인 field들이 들어가있는 User라는 모델을 쓰면 된다. User 모델에는 다음의 기본 필드가 있다. username: 사용자 이름 (계정) - id일 수도 있고, 이메일을 사용해 로그인한다면 이메일일 수도 있음. password: 비밀번호 email: 이메일 계정 first_name: 이름 (주민등록상 이름) last_name: 성 근데 필드만 구현되어있는 게 아니다... ㅎㄷㄷㄷㄷㄷ 비밀번호 검증 로직, 로그아웃 로직 등의 흔히 필요한 로직들이 구현되어있어서 그..

4강 장고 인증 파트 : 해커톤 참가 신청 사이트 만들기 - 프로젝트 세팅

웹사이트의 구성 (행사 참가 신청 사이트 플로우) 회원가입은 곧 참가 신청이고, 참가자 신분으로 로그인을 할 수가 있음. 비로그인 상태의 첫 화면에는 행사 소개 페이지가 표시됨. 여기서 로그인 또는 회원가입을 할 수 있음. 회원가입을 선택하면 참가 정보 입력 페이지를 거침. 여기서 프로필 사진도 업로드함. 로그인 상태의 첫 화면에는 행사 소개 페이지가 표시됨. 여기서는 전체 참가자 목록 확인/참가 취소/로그아웃 을 할 수 있음. 만들어야 하는 페이지는 다음의 7개이다. 상태의 행사 소개 화면(로그인/비로그인 2개의 뷰) 로그인 화면 로그아웃 화면 회원가입 화면 참가 정보 수정 화면 전체 참가자 목록 화면 참가 취소 화면 실습 내용은 노션에 정리해두었다. https://www.notion.so/unis-e..

4강 장고 인증 파트 : 해커톤 참가 신청 사이트 만들기 - 세션과 쿠키

세션과 쿠키에 대해 설명해주신 5분짜리 강의. 세션이란? 접속한 사용자의 기기에 관하여 서버가 기억하고 있어야 하는 정보가 있을 때, 그 정보를 저장하는 공간을 세션이라 한다. 사용자가 웹사이트에 로그인을 한 뒤, 그 웹사이트 내의 다른 페이지로 이동하더라도 계속해서 로그인 상태가 유지되는 것은 세션 덕분이다. 세션을 이용한 로그인 과정 클라이언트가 서버에 첫 접속을 함. 서버의 세션 상에 지금 들어온 클라이언트의 세션 ID가 없음. 따라서 새로운 세션 ID를 발급해서 세션에 기억함. 이 ID를 클라이언트 기기에 전달함. 클라이언트 기기는 전달받은 세션 ID를 저장함. 사용자가 로그인을 함. 서버가 로그인 정보와 세션 ID를 함께 기억해둠. 클라이언트가 요청을 보낼 때마다 이 ID 및 로그인 정보를 그때..