본문 바로가기

전체 글67

[20.12.17] 옵저버 패턴 Reference How to Use the Observable Pattern in Java Script Why 최근 우아한테크코스의 마지막 과제를 수행할 당시, 가장 까다로웠던 부분을 꼽아 보자면 '한 컴포넌트에서 데이터가 바뀔 때마다 각기 다른 페이지에도 동일한 데이터가 업데이트 되어야 한다'는 점이었다. 과제를 수행할 당시에는 이 부분에 대한 디자인을 어떻게 정립해야할 지 감이 오질 않아, 한 모듈 안에서 상태가 바뀌게 되면 다른 모듈의 객체를 생성해 렌더링하는 식으로 코드를 짰었다. 하지만 그렇게 프로그램을 빌드해가니 한 모듈 안에서 각기 다른 모듈에 대한 의존성이 높아지는 코드들이 포함되고 한 눈에 보기해도 뭔가 하드 코딩스러운 부분이 눈에 보였다. 그래서 디자인 패턴에 대한 포스트를 공부하며 .. 2024. 1. 6.
[20.10.03] TDD에 대한 간단한 고찰 TDD란, Test Driven Development 의 약자로서 예상 케이스에 대비한 테스트를 기반으로 점진적으로 코드를 수정하고 개발해나가는 방식이다. 라 피신 때 정신 없이 과제를 수행하고 평가를 진행했을 당시, 친절한 누군가의 간이 테스트 코드로 인해 클러스터 내의 적지 않은 사람들이 동료 평가, 몰리네뜨의 채점 전에 스스로 오류를 파악하고 그에 맞는 예외처리를 추가해주며 코드의 완결성을 더욱 높일 수 있었다. 그 덕에 ‘프로그램을 만들고 코드를 짤 때, 그 코드를 검증해줄 테스트 코드는 꼭 필요하겠구나.’ 라는 생각을 가질 수 있었고 이번 본 과정의 첫 프로젝트인 libft 를 만드는 기간 동안 해외의 기존 카뎃들이 업로드 해놓은 3 개의 테스터와 함께 했다. 그러다 문득, 나는 계속 코드를 고.. 2024. 1. 6.
[20.12.15] 우아한테크코스 프리 코스를 마치며 '한 달, 너무 길겠다' 라고 생각했던 기간이 이렇게 또 정신없이 지나갔다. 불과 얼마 전까지만 해도 학과 프로젝트와 알고리즘만 묵묵히 파고 있었는데, 우연히 알고리즘 동아리에서 만난 동기 형에게 우아한테크코스에 대한 정보를 접하게 되었다. 우테코 ..? 그게 뭐지 ...? 사실 이번 여름에 네이버 부스트 캠프 코테를 지원한 이유로 연이 닿아 그 형이 내가 F.E에 대한 관심이 있는 걸 알고 얘기를 꺼낸 듯한데, 지금 생각해보면 정말 감사한 일이다. 아무튼 이래저래 자소서 작성과 1차 코딩 테스트를 마친 뒤, 아무 일 없는 듯 기다리려 했지만 막상 욕심이 생기니 계속 관련 정보를 취합하고 개인적으로 자바 스크립트 공부를 다시 하기 시작했다. 결과는 정말 운이 좋게도 1차 합격 통지를 받게 되었고, 그 당.. 2024. 1. 6.
[20.12.06] 2020년 회고 살면서 두 번째의 전환기를 맞이했고, 곧 다가올 새로운 이벤트들에 대한 준비를 하고 있는 중이다. 회고성 글은 나도 모르게 그 때의 감정에 빠져 쓰게되는 글들이 나중에 내 얼굴을 붉힐까 봐 웬만하면 쓰지 않으려 하지만, 일 년을 정리하는 과정에서 현재 나의 위치와 앞으로 해야할 일들을 더 명확히 알 수 있고 후에 나의 경험을 어필하는 자리에서 더 생생하게 이야기를 들려줄 수 있기 때문에 한 번 쯤은 기록해야겠다, 싶었다. 주저리주저리 다 쓰는 것보다는 최대한 나의 행보와 그 이유들에 대해 간략하게만 다시 돌아 보고, 내년의 나는 어떤 식으로 살아갈 것인지 생각해보면 좋을 것 같다. 영어 학원 (19.12 - 20.03) 사실 새로운 것을 배운다는 점에서 큰 두려움이 있었다기보다는, 내가 다시 낯선 사람들.. 2024. 1. 6.
[19.11.26] TIL, pre course 과제 완료. 마지막 recursion 과제를 남겨두고 정말 머리를 오래도록 싸맸던 것 같다. 분명 무엇을 이용해서 풀어야할지도 알겠고, 감도 잡히는데 미치도록 풀리지 않았다. 고생도 많았지만 그렇기에 머리에 더 남을 것이라 희망하며 복습을 시작하겠다. recursion 과제의 핵심은 '재귀함수'를 이해하느냐, 가 관건이라고 할 수 있다. 그 개념을 간단히 서술해 보자면 함수 안에 같은 함수를 사용하여 일종의 loop을 만들어주고, 정해진 조건을 충족하면 결과를 도출해낼 수 있는 함수를 만드는 것이었다. 여기서 주의할 점은 반드시 탈출구(!)를 만들어주어 무한루프를 방지할 수 있어야 한다는 점이다. 비슷한 방식으로 for반복문을 사용할 수도 있지만, 내용의 가독성과 운용의 효율성을 위하여 여러가지 방면(특히 함수 프로.. 2024. 1. 6.
[19.11.19] TIL 1. 삼항 연산자 처음엔 이 연산식을 보고 도대체 뭘 의미하는 걸까, 의아했다. if, for, while문을 줄곧 작성했던 터라 바로 질문을 통해 알아보았다. 삼항 연산자는 문자 그대로 '세 개의 피연산자를 이용하여' 작성할 수 있는 수식이라고 생각하면 된다. 좀 더 직관적으로 식을 그대로 가져와 얘기를 하자면, 이렇게 볼 수 있다. 알아놓고 있으면 코드를 더 간결하게 쓰는데 많은 도움이 될 수 있을 거라고 생각한다. 2. DOM(Document Object Model) HTML, CSS, JS를 연결할 수 있는 핵심적인 개념이다. DOM 자체가 JS 언어의 한 부분이라고 볼 수는 없다. 간단하게 지금까지 배운 개념과 메소드에 대해 복습해 보겠다. document.querySelector(); HTML.. 2024. 1. 6.