목록전체 글 (305)
개발하고 싶은 초심자
오늘은 하루 종일 한 챕터 분량을 공부하고, 줌 세션을 통한 스프린트 리뷰와 코스 리플렉션을 들었다. 스스로가 학습을 하며 이해하는 시간이 너무 오래걸린다는 것을 알고 있어 어제 개인 학습 시간에 복습을 하면서 내용을 잠깐 훑어 보았던 것이 오늘의 학습에 도움이 되었다. 하지만 한 챕터 안에 있는 수많은 개념들과 내용들을 토이 문제 해결과 점심시간을 제외한 10시부터 5시까지 한번에 전부 이해하기엔 역시 무리가 있었다. section 2는 section 1 때보다는 확실히 낯설다. 이 낯설다는 것이 정말 크게 느껴지는데, 이렇게 공부를 하면서 레퍼런스 코드를 보는데, 이렇게 공부하면 내 것이 되는 지 의문이 들 때가 있다. 실제로 성장이 되고 있는 지도 잘 모르겠고. 그러던 차에, 머리를 식힐 겸 보았던..
아침마다 토이 문제를 풀어보는데, 오늘 문제는 그래도 로직을 짜는 것이 어려운 편은 아니었다. 하지만 DFS에 대한 개념이 여전히 부족하다는 것을 알게 되었다. 오늘은 fetch API에 대해 학습하고, 어제에 이은 스프린트 페어 프로그래밍을 진행했다. 어제 함께 페어 프로그래밍을 진행하면서 아직 내가 제대로 알고 있지 못하다는 생각이 들었다. 그래서 계속 새로운 스프린트 파일을 다운로드 받아 풀어보고, 막히는 부분이 있으면 또 찾아서 풀어보고, 풀어보는 것을 반복하여 혼자서도 왜 이렇게 쓸 수 있는 지에 대한 주석을 달아 놓았다. 그런데 오늘 fetch API를 진행하며 어제와 같은 내용의 반복이었는데, 제대로 로직을 짤 수 없었다. 오늘도 열심히 스프린트를 새로 풀어보면서 공부해야겠다. 정규 시간 내..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dvR6Yg/btromQ1qg9e/qJer9onODppYpOn7qWIqXK/img.png)
1. 동기(synchronous)와 비동기(asynchronous) ① blocking: 하나의 작업이 끝날 때까지 이어지는 작업을 막는 것. 요청에 대한 결과가 동시에 일어난다. ⇒ 동기(synchronous)적이다(시작 시점과 완료 시점이 같은 상황). ✷ 클라이언트(client)와 서버(server) (일단은 간단하게 정리해놓은 것. 자세한 것은 뒤에) ‣ 클라이언트: 서버로 접속하는 컴퓨터. 보통 우리가 사용하는 컴퓨터라고 생각할 수 있음. ‣ 서버: 무언가(서비스, 리소스 등)를 제공하는 컴퓨터. 웹 서버나 게임 서버 등. ✷ 동기적이다(synchronous) 클라이언트는 어떠한 요청을 서버에 보내고, 서버가 그 요청을 받아 일처리를 위해 데이터베이스에서 데이터를 꺼내오기도 하고, 꺼내온 데이터..
하루 하루 학습할 내용을 정리하고 복습할 시간도 없이 시간, 날짜 숫자만 잘 바뀌는 것 같다. 아마 부트캠프 특성 상 이렇게 되는 것은 약간의 불가항력(?)도 포함되어 있다고 생각한다. 처음에도 들었던 얘기지만, 4년 내내 배울 내용들을 반 년 안에 모두 배울 수 있어야 하니 시간이 더욱 없다고 느낀다. 그래서 한 섹션 당 기수 이동의 기회를 2번씩 주는 것이었을까... 이렇게 되고 나서 생각해보니 교복 입고 학교 다닐 때 그렇게 나에게 공부에만 집중하라고 했었던 부모님이 참 그립다. 그때처럼 공부에만 집중할 수 있는 환경이라면, 정말 열심히 공부할 수 있을 것 같은데. 이제는 내가 한 아이의 엄마이니 온전히 나에게만 매달릴 수가 없다. 그나마 공부에 집중하라고 본가에서 아이를 봐주고 있으니, 이렇게라도..
오늘은 고차함수 메소드들을 underbar 메소드로 직접 구현해보는 sprint를 진행하였다. 다만 지난 주에 본가에 다녀와 그 동네의 마트를 들렀는데, 집에서 전화가 와 그 마트에 들른 사람은 선별진료소에서 코로나 진단 검사를 받으라는 문자가 왔다고 하였다. 페어를 진행하던 중간에 전화가 왔기에, 3일 내내 불안한 마음을 가지며 페어 프로그래밍을 진행하면 제대로 집중이 되지 못할 것 같고, 그렇게 되면 페어에게도 폐가 되기에 양해를 구하고 선별진료소에 다녀왔다. 페어 분께서 괜찮다고 해주셔서 다행이었다. 그래서 페어 프로그래밍으로 진행해야 할 부분에 대하여 혼자 하게 되었는데, 분명 고차함수 메소드들을 사용하여 코플릿 문제들을 풀 때는 이렇게 쓸 수 있다는 것을 알 수 있었는데, 막상 그 기능에 대하여..
자세한 내용은 여기에 1. 고차함수 ① 고차함수는 다른 함수를 인자(arg)로 전달 받을 수 있음. → 콜백함수(Callback function): 고차함수의 인자로 전달되는 함수. → 어떠한 작업 중에 호출하는 경우가 많음. → parameter로 넘겨받는 함수(B)는 콜백 함수(A)를 경우에 따라 즉시 실행(동기적, synchronously)할 수도, 나중에 실행(비동기적, asynchronously)할 수도 있음. ex) function B() { console.log("call back") } funcion A(callback) { callback(); // callback === B } A(B); ‣ callback in action: 반복 실행하는 함수(iterator) let arr = [1..
오늘은 재귀함수 코플릿 문제들을 계속해서 초기화하며 풀어보았다. 분명 재귀함수를 배울 때에도 초기화를 계속해서 처음부터 풀어보고 풀어보고 또 풀어보았는데도, 주말이 된 오늘도 초기화를 시켰을 때 내 머리속의 지우개처럼 풀어봤던 기억들은 싹 지워진 것 같다. 생각보다 재귀함수가 많이 어렵다. 개념 파악의 문제인지, 응용과 적용의 문제인지, 알아내는 것이 지금까지도 많이 힘들다. 다른 사람들도 다 이럴걸 생각 하면서도, 나만 뒤처지는 것인가 하는 생각이 또 든다. 그럴 때마다 36기 seciton 1 때 이슈 쉐어링 상담을 받았던 엔지니어님의 말씀을 떠올린다. 지금 100% 이해하지 못한 것 같아도, 다음 단계를 공부하다 보면 어느 순간 그 전에 부족했던 부분들을 돌아보고 복습하고, 그런 부분들이 반복되면서..
오늘 배운 인접 행렬과 인접 리스트, BFS / DFS 는 한마디로 너무 어려웠다. 유어클래스에서 개념을 설명해주고, 부족하다 싶은 부분들은 영상을 보거나 구글링을 통해 개념을 이해했다고 생각했는데 정작 코플릿에서의 알고리즘 로직 구현에 머리가 어질어질했다. section 1 때는 개념부터 이해가 되지 않아 mdn이나 stackoverflow 같은 개념적인 부분들을 찾아보는 데에 시간을 썼다면, section 2는 개념은 어느 정도 이런 식이구나 하는 것은 이해를 하는데 정작 로직 구현을 제대로 하지 못하고 있다. 어제 했었던 stack부터 tree까지는 개념을 이해하고 구현하는 데에 그렇게까지 크게 힘들다고 느끼지 못했었는데 오늘 한 내용들은 이해까지만 되고 구현이 되지 않아 많이 힘들었다.다른 사람들..