비주얼스튜디오는 왜 무거워졌을까?

 비주얼스튜디오코드꾸준히 비주얼스튜디오코드를 사용해 온 개발자라면 최근에 프로그램 시작 시 매우 무거워졌다는 것을 느낄 것이다. 제법 한참을 기다려야 시작 화면을 볼 수 있다. 분명 처음부터 이렇게 느림보는 아니었다. 게다가 업데이트가 눈에 띄게 잦아졌다.

왜 그럴까? 물론 예상되는 이유는 있었지만 정확한 원인을 알고 싶었다. 결과적으로 예상은 빗나가지 않았고 크게 관심을 가지지 않았던, 그래서 모르고 지나갔던 사실들을 알게 되었다. 웹 개발자로서 한 때 익스플로러 때문에 개고생했던 것을 생각하면 MS는 밉상이었던 기억이 있고 지금도 그 때보다는 덜하지만 더러 들려오는 소식을 접하면서 여전히 기업에 대한 좋은 이미지는 가지고 있지 않다.

그나마 조금 누그러진 이유는 비주얼스튜디오코드를 접하고 나서였다. 분명히 MS로부터 혜택을 받는 것은 사실이었으니 말이다. 그러나 무거워진 비주얼스튜디오코드 때문에 알게 된 사실들은 MS가 혜택을 준 게 아니라 단지 전략적인 마케팅이었다는 것이다.

세상의 모든 기업들은 자사의 물건을 팔기 위해서 합법적인 마케팅을 한다. 그 자체가 문제가 되지 않는다. 하지만 MS는 그 방식이 비열한 것이 문제이다. 솔직히 오픈 소스 진영은 건드리지 말았어야 했다. 포용하는 듯 했지만 그 본성은 바뀌지 않았다.

더블클릭 이벤트 실체

사실 더블클릭 이벤트는 잘 사용하지 않을 것이다. 동작 자체가 확정적이고 호전적이다. 명확한 행위를 나타내는 점에서 매력적이지만 사용자에게는 피로감을 줄 수 있다.

게다가 더블클릭은 클릭이라는 동작이 빠르게 두 번 발생하는 것이다 보니 더블클릭은 마우스가 버튼을 눌러 행할 수 있는 모든 입력 동작을 포함하고 있다. 그렇기 때문에 더블클릭 이벤트 타입을 사용할 때는 특별히 주의할 필요가 있다.

이벤트 객체, 찰나의 사용

이벤트는 사용자의 행위 또는 시스템의 절차적, 변화적인 사건을 나타낸다. 이것은 찰나에 발생하며 지속적이지 않다. 이벤트는 그 순간에 관여할 코드를 작성할 때 매우 중요한 기술적 요소이지만 순간적인 사건에 대한 정보는 이벤트가 발생한 시점이 지난 후에는 이벤트의 전파, Event 객체의 재사용 등의 이유로 무결성을 보장할 수 없다.

그렇기 때문에 이벤트가 발생한 후, 약간의 시차를 두어 코드를 실행해야만 하는 경우라면 주의할 필요가 있다. 보통은 즉각적인 콜백 함수 호출이 대부분이지만 상황에 따라서는 시차를 둘 수밖에 없는 상황을 맞닥뜨린다.

CSS Image Animation Module Level 1 발표

웹 콘텐츠에서 이미지의 동적인 처리 방식에 대한 새로운 기술 정의를 다룬 명세가 발표되었다. 이미지 간 부드러운 교체, 이미지 처리 시 성능 제어 등이 포함되었다.

고해상도 이미지를 GIF처럼 CSS만으로 애니메이션을 만들거나 이미지의 전환 시 시퀀스나 픽셀 블렌딩을 제어할 수 있다. 또한 낮은 사양의 장치에서도 부드러운 이미지 애니메이션을 기대할 수 있게 한다.

궁극적으로 자바스크립트 의존도를 낮추고 이미지 처리에 대한 퍼포먼스 향상, 고급스러운 이미지 처리 등에 대한 기술적인 주제를 다루고 있다.