1. git git이란? 분산 버전 관리 시스템. 리눅스 개발자인 "Linus Torvalds"님이 제작한 프로그램. 리눅스를 개발하다 필요를 느끼고 제작. 변경 내역을 기록하고, 작업을 되돌리기도하고, 여러명의 코드를 쉽게 나누고 합칠 수 있다. git이 관리하는 세개의 공간 작업 디렉토리 현재 버전을 관리하는 폴더 (.git이 생성되어 있는 폴더...
1. git 왜 또 git? 어제에 이어 오늘도 git이 나를 괴롭혔기 때문에, 혼쭐내주기 위해 다시 공부했다. 오늘은 실제로 팀원들과 함께 사용해보면서 마주한 여러 개념들을 되짚어보려 한다. 1) branch 사실 어제까지 branch라는 개념을 이해하지 못했다. 그저 그런게 있구나, 정도로 파악하고 있었던 수준이였다. 이제는 이해가 가기 시작한다.(완...
저는 아직 정말 초보자입니다! 제 블로그에 올라오는 대부분의 글은 제가 이해하고 소화한 내용을 다시 복습 및 추후 찾아보기 위해 아카이빙 하는 글입니다. 혹여라도 미래의 여러분이 이 블로그의 글을 보고 맞다 판단하지 마시고!!!! 꼭!!! 꼭!!!! 공식문서를 찾아 보시길 강력히 추천드립니다. 1. python venv 환경 설정하기 PyCharm으로 설...
저는 아직 정말 초보자입니다! 제 블로그에 올라오는 대부분의 글은 제가 이해하고 소화한 내용을 다시 복습 및 추후 찾아보기 위해 아카이빙 하는 글입니다. 혹여라도 미래의 여러분이 이 블로그의 글을 보고 맞다 판단하지 마시고!!!! 꼭!!! 꼭!!!! 공식문서를 찾아 보시길 강력히 추천드립니다. 1. 오늘 사용해본 Python 기초 기초를 알지못하면 아무것...
제 블로그에 올라오는 대부분의 글은 제가 이해하고 소화한 내용을 다시 복습 및 추후 찾아보기 위해 아카이빙 하는 글입니다. 혹여라도 미래의 여러분이 이 블로그의 글을 보고 맞다 판단하지 마시고!!!! 꼭!!! 꼭!!!! 공식문서를 찾아 보시길 강력히 추천드립니다.지난
저는 아직 정말 초보자입니다! 제 블로그에 올라오는 대부분의 글은 제가 이해하고 소화한 내용을 다시 복습 및 추후 찾아보기 위해 아카이빙 하는 글입니다. 혹여라도 미래의 여러분이 이 블로그의 글을 보고 맞다 판단하지 마시고!!!! 꼭!!! 꼭!!!! 공식문서를 찾아 보시길 강력히 추천드립니다. 1. 파이썬으로 알고리즘 풀기 1) 포맷팅 백준 10926번 ...
1. 파이썬 문법(2) 1) set(집합) 2) try - except 3) map 4) lambda 5) filter 2) 자료구조 및 알고리즘 1) array, linked list array는 탐색에 O(1), 수정에 O(N)이 걸리고 linked list는 탐색에 O(N), 수정에 O(1)이 걸린다. |경우|Array|LinkedList...
오늘의 반성 오늘 머리가 안돌아간다는 핑계로 새로운 공부는 잠시 미뤄두고 가벼운 문제만 풀면서 파이썬 기본 문법을 익혔다. 머리가 안돌아가도.... 조금이라도 우겨넣겠다는 의지로 내일부터는 알고리즘 강의를 꼭꼭 씹어먹어서 소화시키도록 노력해야겠다. 그래서 오늘은 무슨 공부를 하였는가 월,화 파이썬 문법의 기초에 대해 배웠고 다양한 내장 객체들에 대해서 배...
1. 정렬 이론은 이해가 가는데, 직접 코드를 작성하는데서 계속 버벅여서 다시 듣고 정리한다. 1) bubble sort 가장 기본적인 정렬 각각의 인덱스를 반복하면서, 현재와 뒤의 수를 비교하고 정렬한다. 3 5 7 1 2 라는 수가 있으면 코드로 표현하면 아래와 같다 2중반복문이므로 T(n)=O(N^2)의 시간복잡도를 가진다. 2) Selectio...
1. 자료구조 1) 스택(Stack) 학습목표 > 1. 스택 이해하기 > 2. 스택의 기본연산 이해하기 > 3. python으로 스택 구현하기 스택이란? 한 쪽 끝에서만 자료를 넣고 뺄 수 있는 LIFO(Last In First Out) 형식의 자료구조. (후입선출) 실생활에서는 바벨을 예로 들 수 있겠다. 원판을 제거할 때 마지막으로 추가된 원판을 빼야...
1. 알고리즘에 대한 근원 왜 갑자기 이런 파트를 적게 되었는가? 알고리즘 공부를 하는 이유를 더 명확하게 하고 효율적으로 공부를 하기 위해. 왜 알고리즘을 배우는가? 취업하려고. 코딩테스트보려고. 코딩테스트 문제 뿐만아니라 개발을 하는 과정에서 문제를 해결할 때 더 멋지게 해결하려고. 바꿔말하면 이유가 있는 코드를 작성하려고. 자료구조...
1. 자료구조 1) 해시 테이블 [1] 해시 테이블? 해시테이블은 key-value 페어를 저장한다. 기본적으로 array와 유사하지만, 순서가 정의되지 않는다. 값에 접근하거나, 추가하거나, 제거하는데 소요되는 시간이 매우 짧다. Python에서는 Dictionaries, JavaScript에서는 Objects와 Maps가 있다. JS의 Objects...
1. 파이썬 문법 어제 밤에 백준 기초 문제들을 풀다 구글링한 문법들을 정리. 1) 슬라이싱 string, list 등에서 활용가능하다. 간단하게 string으로 예시 2) list.count() list에서 특정값이 몇개 있는지 세어준다 2. Vanilla JS로 SPA 만들기 튜터님의 특강이 있었다. 특강 내용중 나에게 새로운 개념과 핵심 개념을 정...
1. 자료구조 1) 우선 순위 큐 각 요소가 그에 해당하는 우선순위를 가지는 자료 구조 더 높은 우선순위를 가진 요소가 더 낮은 우선순위를 가진 요소보다 먼저 처리된다. 이진 힙으로 구성하고, 각 노드는 값과 우선순위를 가지게 된다. 2. Firebase 대표적인 Bssa 클라우드 서비스 1) 셋업 프로젝트 생성 시 애널리틱스 사용 Off 프로젝트 생성...
1. CS특강 CPU - RAM - HDD CPU는 요리사 RAM은 요리테이블 HDD는 요리재료... 너무 좋은 비유라 잘 이해되었다. 1) 프로세스 메모리(RAM)에 적재되어 실행되고 있는 프로그램의 인스턴스 OS로부터 시스템 자원을 할당받은 작업의 단위(CPU시간, 메모리 영역) 프로세스는 독립된 메모리를 할당 받는데, 이 공간을 프로세스 주소 공간으...
프로젝트 진행 오늘 하루종일 프로젝트 진행을 했다. 오전에 파이어베이스 세팅진행, db에 더미 데이터를 넣는 것 까지 해봤다. 오후에 포스트를 작성하는 UI를 만들었는데, addEventListener가 하루종일 나를 괴롭혔다. 최초 init html을 DOM을 통해 뿌려준 후 이벤트리스너를 추가하는게 목표였는데, 이벤트리스너가 먼저 추가되고, init ...
내실을 다지자 프로젝트를 진행하면서, 구현 => 어찌어찌 된다. 하지만 많은 부분에서 부족함을 느끼고 있다. 특히 기초! 기초에 대한 부족함이 절실하게 느껴진다. JS뿐만 아니라, HTML CSS도 부족하다. 더 연습해야겠다는 생각을 했다. 모양을 만들고 구현할 수 있지만, 더 유연하게 할 수 있는 부분이 충분히 있을 것 이라 생각한다. 잘 찾아보고 정리해...
1. 미니 프로젝트 트러블 슈팅 (before) 1) 어디서 에러가 발생했는가? 로컬스토리지에 이미지를 임시 저장하는 과정에서 에러가 발생하였다. 간단하게 핸들링할 수 있을것이라 생각했는데, 내가 생각한 방법에 확신이 없어 여러번 시행착오를 겪었다. 2) 왜 발생했는가? 크롬에서 로컬스토리지는 기본적으로 String을 저장하는 공간으로 활용되기 때문에...
중요한 것은 꺾이지 않는 마음 오늘 꺾일뻔 했다 너무 잠이와서 안쓰고 자고싶었지만 그럼 안된다 저런사람도 열심히 하는데 오늘 한 일은 무엇인가 오늘은 라이브 코딩을 진행했다. 팀원분들이 구현하기 힘들어 하셨던 부분들을 하나하나 콘솔을 찍어가면서 같이 문제를 해결 하기로 했다. 우여곡절 끝에 CRUD의 기본은 구현 완료. 이제 나머지 기능 구현을 구현하면...
꺾여버렸다 프로젝트 마감기한을 지키기 위해 매일같이 12시까지 코딩하고 새벽에 일어나서 산책가고.... 코딩한다는 핑계로 학습을 정리하지 못했다. 지금이라도 해본다. 좋아요 구현하기 좋아요를 구현할 때 이벤트리스너를 SVG 객체에 담았다. 그러다 보니 그 안에 PATH 객체에도 함께 적용이 되었는데, 클릭하는 미묘한 지점에 따라서 event의 target...
프로젝트 발표회 오늘 프로젝트 발표회를 진행했다. 간단하고 담백한 피드백을 받았고, 회고도 간단하게 진행했다. 모던 자바스크립트 튜토리얼(3) 프로젝트를 진행한다고 미뤄두었던 자바스크립트 공부 다시 시작했다. 중요한건 꺾이지 않는 마음 모던 JavaScript 튜토리얼 스터디 - 3 내일부터 할 것 > 꾸준히 JS 스터디를 친구와 함께 진행하기 리엑...
JS 변수의 할당 변수의 할당에 대해서 궁금해졌다. 여기저기 찾아보다가 오늘아침에 시간을 많이 사용했는데, 마침 캠프에서 진행 해 주시는 JS 심화 강의가 오늘 지급되었고, 첫번째 주제가 내가 딱 궁금해하던 주제였다. 왜 얕은복사를 했음에도, b는 변하지 않았는가 에 대해 궁금했었는데, 쉽게 그림을 그려보면 아래와 같다 코드 1번라인에서 분홍색처럼 실...
길을 잃었다 깊이있는 공부가 중요한것인가 빠르게 개념만 훑고 넘어간 다음에 나중에 천천히 이해하는게 중요한것인가 라는 고민을 최근에 자주하기 시작했다. 원래는 빠르고 넓고 얕게 이해하는게 목표였는데, 최근 그 한계지점에 닿은 듯한 느낌이 들었다. 프론트엔드 공부를 하다보니 새로운 라이브러리, 새로운 프레임워크 모두 다 결국 JS를 기반으로 사용하게 되어있다...
12월 12월이다. 12월이라는게 실감이 안날뻔했는데 날씨가 엄청나게 추워지면서 12월임을 상기시켜줬다. 캠프 종료까지 3개월 남았다. 3개월동안 더 노력하자. 지금까지보다 조금씩만 더 하루하루 어제보다 조금만 더 노력하는걸 목표로 하자. JS에서의 실행 컨텍스트 실행 컨텍스트(Execution Context) 실행 컨텍스트라는 말조차 몰라서 찾아보았다....
클로저 클로저란 함수와 그 함수가 선언된 렉시컬 환경의 조합. 왜 사용하는가? 일반적으로 state를 안전하게 은닉 하기 위해 무슨소리냐? 이런 불상사가 발생하지 않게 하기 위해서 변수를 함수안에 숨기고, 그 변수를 조작하는 함수를 리턴해서 관리한다. 너무 좋고 안전한 방법. 자주 써먹도록 노력해봐야지 아래는 함수형 프로그래밍에서 클로저를 사용하는 ...
리액트 리액트 강의를 막 듣기 시작했다. 사실 요정도까지는 잘 이해가 되긴 하는데 가장 애매한 부분은 도대체 컴포넌트를 어디까지 쪼개야 하는가.... 일단! 투두리스트 만들면서 적용해보고 그 후에 고민하기! 화이팅! 저녁 공부는... 컨디션이 너무 안좋아서 스킵했다. 잠좀 자고 부족한 부분은 주말에 따서 갚는걸로 ㅋ
느슨해진 내마음속에 긴장감을 네... 그렇습니다... 리액트 너란녀석 또 쉬운척 하고있어서 느슨해지려고 합니다... 이제 막 걸음마를 떼고 슬금 슬금 뛰기 전에 걸음마 연습을 더 탄탄하게 하고 넘어가도록 하겠읍니다. React 학습 일정 다음주 까지의 학습 일정을... 미리 짜놓고 지키도록 노력해보자! > * 캠프에서 제공 해 주시는 React 강의 듣...