목록[개발 공부] (45)
Earn this, Earn it.

올해 내 목표 중 하나는 사내 테크 블로그에 내 글이 게재되는 것이었다. 작년에 우연한 기회로 카카오워크에 들어가는 음성채팅 서비스를 개발하게 되었다. 다행히 규모가 큰 프로젝트는 아니어서 새로운 기술을 시도해보며 많이 배울 수 있었다. 사실 WebRTC 기술을 웹으로 구현하여 PC 네이티브 클라이언트에서 웹뷰로 띄우는 것에 관련된 레퍼런스는 많지 않다. 웹뷰로 구현하며 느낀 장단점과 한계점 등 이리저리 시도하며 느낀 점들을 최대한 담아보려 하다보니 글이 길어졌다. 처음으로 테크 블로그를 준비하며 느낀 것은 내가 아직 많이 부족하다는 것과 글을 쓴다는 것은 정말 참으로 어렵다는 것을 느꼈다. (앞으로 블로그를 쓰면서 많이 연습해야겠다고도 느꼈다.) 그리고 도와주신 모든 분들 덕분에 보잘 것 없는 글이 그..

요즘 들어 블로그 포스팅을 올릴 엄두가 안 나고 있다. 매주 주말 주간 회고를 작성하긴 하는데, 밤에 작성해서 그런지 감성적인 글이 되어버려서 자꾸만 사적인 공간에 보관되고 있다. 퀄리티는 조금 떨어지더라도 차라리 매일 배운 내용을 간단히 정리하는 글을 포스팅하며 정리해야겠다. Agora SDK로 화면 공유 구현하기 아무래도 협업 툴에서는 화면 공유가 필요하다. 말로 설명하는 것보다 직접 보여주면서 설명하는 것이 여러모로 효율적이기 때문이다. 이전 프로젝트(타닥타닥)에서 화면 공유 로직을 구성해본 바 있다. 그 당시에도 화면 공유는 생각해야 할 것들이 조금 있었는데 이번 프로젝트에서는 그 때의 경험을 바탕으로 다양한 상태 변화에 제대로 대응하기 위해 신경을 썼다. 특히 까다로웠던 점은 상태 관리이다. 예..

Svelte편 최근에 나는 svelte로 프로젝트를 진행하면서 관련 기술에 대해 관심 있게 보는 중이다. 대세는 리액트이지만 svelte의 편리함을 한 번 느껴보고 난 이후로 리액트에 손이 잘 안 간다. (그래서 더 위험하다... 사이드 프로젝트는 웬만하면 리액트로 하려고 하고 있다) 리액트를 공부하며 자바스크립트에 대해 더 이해하게 되는 것도 있듯이 스벨트를 공부하며 리액트에 대해 더 이해하게 되는 부분도 있는 것 같다. 그럼 이번 주에 무심코 지나갔던 부분들을 짚어보며 개념을 정리해보자. bind:html로 contenteditable 수정 내용 반영하기 공식문서에도 나와있는 내용이지만, contenteditable 특성을 줘서 HTML을 수정 가능하게 하였을 때, 이 값을 바인딩해서 처리하고 싶을 ..

이 글은 네트워크 스터디에서 제가 정리한 내용을 그대로 옮긴 글입니다. https://github.com/seiyon-algorithm/Study-Network GitHub - seiyon-algorithm/Study-Network: '성공과 실패를 결정하는 1%의 네트워크 원리' 책 스터디📚 '성공과 실패를 결정하는 1%의 네트워크 원리' 책 스터디📚. Contribute to seiyon-algorithm/Study-Network development by creating an account on GitHub. github.com '성공과 실패를 결정하는 1%의 네트워크 원리' 2장 내용을 읽고 정리하였습니다. Chapter 2. TCP/IP의 데이터를 전기 신호로 만들어 보낸다 개요 오늘 알아볼 내..

TIL 느낌으로 이번 주 어려웠던 점들을 돌아보며 미처 공부하지 못한 부분들을 보고 넘어가려고 합니다. (모든 내용을 다 보고 정리하기보단 짧게 개념 위주로 훑어보고 기억을 상기시키는 용도로 시리즈를 매주 이어가볼 예정입니다 ㅎㅎ) Svelte편 svelte 애니메이션? 지난 주에 wordle 챌린지를 진행하며 애니메이션 구현에 대해 고민하였습니다. svelte는 애니메이션을 간편히 사용할 수 있도록 디렉티브를 제공합니다. animate:flip(First, Last, Invert, Play의 약자)는 시작 위치와 마지막 위치를 계산하고 애니메이션을 적용하여 변환하는 동작을 합니다. (이에 대해서는 다음에 기회가 되면 사용해볼 계획입니다.) 이는 DOM이 추가되거나 제거될 때 동작합니다. 따라서 word..

이 글은 루이스 아텐시오, 『FUNCTIONAL PROGRAMMING IN JAVASCRIPT』, MANNING, 한빛미디어(2018) 를 읽고 이를 제 생각을 보태 정리한 글임을 밝힙니다. 책에서 그대로 발췌한 부분은 따로 인용구로 구분하겠습니다 :) 매주 챕터 하나씩 읽고 정리하려고 했는데 취준 때문에 이제서야 다시 시리즈를 시작하게 되었네요 ㅎㅎ (취준기는 추후 포스팅하겠습니다!) 이제 갈 곳도 정해졌으니! 그간 미뤄왔던 공부들을 신나게(?) 해볼 차례네요! 그럼 바로 시작해보겠습니다. Part 1. 함수형으로 사고하기 Chapter 2 - 고계 자바스크립트 이번 2장에서는 고계(고차) 자바스크립트에 대해 다뤄보겠습니다. 이 장에서는 자바스크립트가 함수형 언어로 적합한 이유 자바스크립트는 다중 패러..

하.... 열심히 포스팅 중이던 글이 두 번이나 날라가니까 열 받네요.. (왜 수정중인 글은 임시 저장이 안되냐,,) OSI 7계층 중 다른 계층에 대한 포스팅은 아래 링크를 참고해주세요! :) 물리, 데이터 링크 계층 : https://hanastro.tistory.com/51 네트워크 계층 : https://hanastro.tistory.com/45 전송 계층 : https://hanastro.tistory.com/54 오늘은 지난 시간에 하지 못했던 전송 계층에 대해 알아보려고 합니다! 전송 계층이란? 물리, 데이터 링크, 네트워크 계층이 목적지에 '데이터를 보내는 것'이 목적이라면 전송 계층은 목적지에 '신뢰할 수 있는 데이터를 전달하는 것'이 목적입니다. (네트워크 계층에서 다른 네트워크로의 데..

이 글은 루이스 아텐시오, 『FUNCTIONAL PROGRAMMING IN JAVASCRIPT』, MANNING, 한빛미디어(2018) 를 읽고 이를 제 생각을 보태 정리한 글임을 밝힙니다. 책에서 발췌한 부분은 인용을 통해 구분하겠습니다 :) 최근 6주 간 진행되었던 프로젝트를 마치면서, 함수형 프로그래밍에 대한 관심이 생겼습니다. 협업을 하면서도 무언가 비효율적이고 장단이 맞지 않는 코드들 때문에 매주 리팩토링 시간에 의미 없는 고민만 계속했던 것 같네요. 그에 대한 좋은 대안으로서 고려해보기 위해, 당분간은 함수형 프로그래밍에 대해 이 책을 위주로 공부하고 이후 코드를 작성할 때 최대한 활용해볼 계획입니다. 매주 1장 이상 포스팅하는 것이 목표인데 잘 할 수 있으려나요 ㅎㅎ 일단 시작이 반이니까 시..