178일간의 기록

안녕하세요. 포켓몬 고 나왔니? 봇주 @angdev 입니다. 이번에 포켓몬 고 나왔니 봇을 만들기부터 역할 완수까지의 과정이 즐거웠어서 이를 글로 남기게 되었습니다. 포켓몬 고가 나오지 않았으면 큰 감흥은 없었겠지만, 마무리를 지을 수 있어서 정말 다행입니다.

봇의 마지막

봇에 대해

이 봇은 2016년 7월 29일부터 포켓몬 고 한국 출시일인 2017년 1월 23일까지 178일간 포켓몬 고가 나왔는지 트윗을 해왔습니다. 포켓몬 고가 나오면 즉시 “응” 이라는 트윗을 하고, 그렇지 않은 경우에는 “아니” 라는 트윗을 하게 되어있습니다. 사실 봇 뒤에 사람이 있는 경우도 많지만 이 봇의 경우는 자동 봇입니다.

가끔 봇이나 봇주에게 “일일이 트윗한 점에 …


Code Splitting & Chunking

TL;DR

  • 초기 로딩 시간 개선을 위해 Chunking 을 해보자
  • Webpack 을 활용하면 Code Split 을 쉽게 할 수 있다
  • Chunk Optimization 을 통해서 효과를 극대화시키자

이 글은 이전 글인 SPA 스크립트 용량 어디까지 줄일 수 있을까 의 내용 중

초기 로딩 시간 (하얀 화면 보는 시간) 을 줄이기 위해서 스크립트 쪼개기 (Chunking) 등의 방법은 향후에 다시 논의하려고 한다.

라는 이야기로부터 비롯된 글입니다. 그리고 글 작성 편의상 경어를 생략한 점 알려드립니다.

스크립트 용량을 많이 줄였더라도 직접 작성한 코드 용량은 운영하면서 날로 커져만 갈 것이다. 그와 함께 초기 로딩 시간 역시 점점 길어질 …


fetch API 는 완벽한가?

TL;DR

  • 많은 API 요청이 있는 SPA에선 페이지 전환 시 요청을 취소해주자
  • 모든 라이브러리가 AJAX 요청 취소를 지원하지는 않는다
  • fetch API 는 요청을 취소할 수 있는 기능을 제공하지 않는다

글 작성 편의상 경어를 생략하였음을 미리 알려드립니다.

SPA 형태의 앱은 주로 서버와 API 로 데이터를 주고 받으면서 화면을 그리게 된다. 한 페이지에서 API 요청이 끝나지 않았는데 페이지를 떠나는 경우를 생각해보자. 당신이 지금 만들고 있는 앱은 기존 요청을 취소하는가? 한 페이지에서 많은 수의 요청을 부르거나 적은 수의 요청을 하더라도 응답 속도가 느린 경우에 이는 문제가 될 수 있다. MPA (Multi Page A …


최대한 줄여보고자 하는 당신을 위한 안내서

TL;DR

  • Kill Your Dependencies
  • 닭 잡는데 소 잡는 칼을 쓰지 말자
  • 동적 Require 가 사용되는 경우에는 힌트를 주자
  • ES2015+ Native Import/Export 에 대해 제대로 알고 사용하면 공짜 점심이 기다린다

글 작성 편의상 경어를 생략하였음을 미리 알려드립니다.

요즘에 React니 Angular니 하며 SPA (Single Page Application) 가 점점 늘어가는 추세인데, 그와 함께 많은 사이트들의 스크립트 용량 역시 늘어가고 있다.

2014.08 ~ 2016.08 JS Transfer Size & JS Requests (link)

기존에 html 파일로 서빙되던 마크업 조차도 스크립트에 포함되어 마크업 용량을 흡수한 데에 이어, SPA의 특성상 웹앱 전체가 한 스크립트를 통해서 서빙되는 경우도 부 …

홍철주 (angdev)

Indecisive Programmer, Software Engineer. Ruby, Elixir, Javascript, ... http://angdev.space

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store