목록WHAT I LEARN (83)
Nonamed Develog
어떤 문제가 있었나?오늘 Django의 Template System을 이해하고 활용하는 내용을 배웠다. 그중 HTML 파일 내에서 동적인 데이터를 표현하기 위해 DTL(Django Template Lanuage)을 사용하는 방법이 어려웠다. 처음 접하는 DTL 문법이 익숙하지 않아 변수를 출력하거나 반복문을 사용할 때 올바르게 작성하지 못해 예상대로 동작하지 않는 문제가 있었다.무엇을 시도했나?먼저 DTL 문법의 기본적인 규칙들을 학습하기 위해 강의 노트와 튜터님의 말씀대로 Django 공식 문서를 참고했다. 이를 통해 변수를 출력하는 방법과 반복문을 작성하는 기본적인 구조를 익히고, 간단한 예제를 따라 해봤다. 변수를 Template에 전달하고, 그 변수를 올바르게 출력하는 것을 위주로 연습해 봤다.어..
어떤 문제가 있었나?예전 웹개발 종합반을 수강하고 있을 당시, 팀 프로젝트로 플라스크를 이용한 간단한 웹페이지를 개발했다. 하지만 가상환경과 의존성 관리에 대해 제대로 이해하지 못한 상태였고, git pull 할 때마다 프로젝트 환경에서 설치해야 하는 라이브러리들이 제대로 설치되지 않아 오류가 발생했다.무엇을 시도했나?이 문제를 해결하기 위해 팀원들에게 도움을 요청했더니, 한 팀원이 아래의 명령어를 추천해주셨다.pip install -r requirements.txt 이 명령어를 사용하면 프로젝트에 필요한 모든 라이브러리를 자동으로 설치할 수 있다고 설명해 줬다. 당시 나는 이 명령어의 의미를 깊이 있게 이해하지 못했지만, 문제를 해결하기 위해 그대로 따라 했다.어떻게 해결됐는가?"pip install ..
어떤 문제가 있었나?사전캠프, 웹개발, 파이썬, 자료구조 알고리즘, CS & SQL까지 달려오고 이제 Django 주차를 앞두고 꼭 정리하고 넘어가야겠다는 부분이 있었는데, 바로 데코레이터 Decorator였다. 팀 프로젝트를 할 때 의미도 모르고 사용했었고, 클래스를 학습할 때 사용하곤 했었지만 이해하고 있다고 생각이 들지 않는 부분이었다. 더불어 우연히 튜터님의 데코레이터의 중요성을 강조하는 연설을 들어서 꼭 정리하고 넘어가야겠단 생각을 했다.무엇을 시도했나?데코레이터를 이해하기 위해 classmethod와 staticmethod의 개념부터 차근차근 정리해 보기로 했다. 기본적인 사용법과 함께 차이점 및 용도를 살펴보고, 데코레이터의 원리를 이해하기 위해 간단한 데코레이터를 작성해 봤다. 이를 바탕으..
어떤 문제가 있었나?CS & SQL 주차가 거의 끝나간다. 사실 알고리즘이 부족한 것 같아 알고리즘에 더 많은 시간을 할애하고, CS와 SQL을 등한시 했다. CS는 정보처리기사를 준비할 때 공부하면 되고, SQL 또한 SQLD 준비할 때 공부하고 파이썬에서 DB를 가공할 때 사용할 수 있는 정도만 공부하면 된다고 생각했다. 하지만 모의 기술 면접 시간이 다가오면서 발등에 불 떨어진 기분이었다.무엇을 시도했나?일단 튜터님 특강과 강의 자료로 학습을 하고, 부족한 부분을 온라인 강의를 들으면서 채워가려 했다. 하지만 양이 너무 많아 공부는 되겠지만 면접 준비에 효율적이지 않다고 판단하고 튜터님 방에 찾아갔다. 이미 나와 같은 생각을 한 사람들이 튜터님 방에 모여 있었고 어떻게 공부를 해야하는지에 대한 힌트..
어떤 문제가 있었나?지난주 스쿼드 3 알고리즘을 따라가기가 생각보다 벅차다 보니, 주요 내용인 그래프와 BFS, DFS에 집중하여 학습했다. 그래서인지 BFS 관련 문제를 풀 때, 지난주 스쿼드에서 살짝 언급된 deque를 사용하지 못해 찜찜함을 남기곤 했다. 풀이에 지장이 가진 않았지만 다양한 방법으로 풀기 위해서는 꼭 정리를 하고 가야겠다는 생각이 들었다.무엇을 시도했나?먼저 튜터님이 지난 스쿼드 세션에서 살짝 언급하신 원형 큐(Circular Queue)와 데크(deque) 필기를 보면서 정리하고, 추가 교재로 관련 부분을 복습했다. 마무리고 BFS 관련 문제를 풀어 내가 얼마큼 이해했는지 확인해 봤다.어떻게 해결됐는가?백준 2606번: 바이러스 문제를 BFS를 이용하여 풀어봤다. DFS로만 문제를..
FACTS(사실, 객관): 이번 일주일 동안 있었던 일, 내가 한 일코드카타(프로그래머스, 백준)CS 기초(CS 골든벨 준비)스쿼드 세션 복습(알고리즘)파이썬 알고리즘 인터뷰(자료구조)FEELING(느낌, 주관): 나의 감정, 반응, 느낌이론 공부할 때는 쉽다고 느끼고, 문제를 풀 때는 어려워 머리에 과부하가 오는 패턴이 반복되다 보니 점점 흥미를 잃어 가고 있었다. 재밌지만 고통스러운... 심연의 변태 성향을 이끌어 내는 알고리즘과의 한 주였다.또한 어디까지 공부해야하는지 감이 오지 않았다. CS나 SQL을 공부하는데 얼마큼 깊게 공부해야 하는지 몰라서 건들지도 못했다. 물론 알고리즘도 마찬가지다. 따라서 주말동안 내가 "어떤" 개발자가 될 것인지, "무엇을 할" 개발자가 될 것인지 하는 고민을 해봤다..
어떤 문제가 있었나?1. 입력백준 1260: DFS와 BFS 문제를 활용하여 DFS, BFS를 구현해 봤다. 구현력의 문제인지 입력부터 막혔다. 그래프가 딕셔너리일 경우 알고리즘을 구현하는 법을 배웠기 때문에 딕셔너리로 입력을 받아야 하는데, 주어진 예시 입력으로 딕셔너리를 만들 아이디어가 떠오르지 않았다. 2. 방문 리스트수업 내용에 구현했던 것처럼 방문 리스트를 만들고 노드가 스택이나 큐에 들어갔었는지 확인하는 과정을 구현했다. 정점의 수만큼 0을 채운 방문 리스트를 만들어 노드가 스택에 들어가면 1로 바꿀 수 있을 것이다. 하지만 dfs는 출력이 잘 되는 반면, bfs는 출력이 되지 않았다. 3. DFS 구현(스택+행렬)세션에서 dfs를 스택과 반복문을 이용하여 구현을 했으므로 이 문제에도 sta..
새로 알게 된 점은 무엇인가?Graph?그래프란 수학에서, 좀 더 구체적으로 그래프 이론에서 그래프란 객체의 일부 쌍들이 '연관되어' 있는 객체 집합 구조를 말한다. 놀랍게도 그래프는 18세기 유럽의 프레겔 강과 그 다리들을 가지고 했던 놀이에서 유래되었다. 프레겔 강은 2개의 큰 섬이 있었고 섬과 도시를 연결하는 7개의 다리가 있었다. 이 당시 사람들은 "7개의 다리를 한 번씩만 건너서 모두 지나갈 수 있을까?" 라는 질문을 시작으로 많은 사람들이 풀이에 도전해봤지만 풀 수 있는 사람은 아무도 없었다. 오일러 경로대학시절 공학수학 시간에 날 엄청나게 괴롭혔던 레온하르트 오일러가 이 문제에 대해서 조사, 논문을 작성하게 되는데, 이것이 그래프 이론의 시작이라고 한다. 각 다리를 a~g 지역을 A~D 라고..