brunch

인상주의 : 순간의 기록과 비동기 프로그래밍

순간의 기록과 비동기 프로그래밍

by jeromeNa

프로그램은 순차적으로 실행된다. 이 말은 책을 읽듯 위에서 아래로 차례대로 수행한다는 의미이다. 이런 식으로 프로그램이 항상 순차적으로 실행된다는 어떻게 될까? 한번 실행한 프로그램은 더 이상 수행되지 않을 수 있다. 실행이 완료되었어도, 실행 중이어도 뜻하지 않는 무언가가 발생(이것을 ‘이벤트’라고 부른다.)하면 대응해야 한다.


스마트폰 앱을 생각해 보자. 프로그램이 순차적으로 실행되는 것이라면 앱 다운로드 중에는 나갈 수도, 취소할 수도 없어야 한다. 다운로드가 완료돼야 다음을 실행할 수 있기 때문이다. 앱을 다운로드하는 도중에 앱스토어에서 나갈 수도 있고, 다운로드를 취소할 수도 있어야 한다.


이런 순간적인 ‘이벤트’에 대응하는 것이 프로그램에서는 ‘비동기 프로그래밍(Asynchronous Programming)’이라고 하며 예술계에서는 ‘인상주의(Impressionism)’라고 부른다.


프로그램은 미래에 발생할 일에 대비한 코드의 구조를 짜야한다. 그 순간이 오면 자연스럽게 흐름을 넘겨받아 실행해야 한다. 코드가 흐름을 주도하지 않아야 한다. 다시 말해, 전체보다는 개별적인 흐름으로 진행해야 하며, 다른 이벤트 코드에 영향을 주어서는 안 된다. 전체 흐름보다는 이벤트에 의한 흐름으로 구조를 짜야한다.


// 예: JavaScript 비동기 처리
button.addEventListener("click", async () => {
const response = await fetch('/data');
const json = await response.json();
render(json);
});


위의 예시 코드는 클릭되는 ‘순간’을 기다리는 비동기 방식이다. 버튼을 클릭했을 때, {} 안에 있는 코드들을 수행한다. 위아래로 코드들이 있을 경우 기다리는 이벤트는 기다리지 않고 아래 코드들이 먼저 실행된다. 클릭이라는 이벤트가 발생하면 이벤트를 기다리는 코드들이 실행되는 방식이다.




19세기 후반, 회화의 세계에 혁명적인 변화가 일어난다. 이전까지는 그림은 고정된 이야기와 구성을 통해 ‘완성된 하나의 세계’를 그리는 것이 일반적이었다. 그러나 어느 날, 화가들은 고요한 실내를 벗어나 바깥으로 나가 햇빛 아래에서 캔버스를 들었다.


하늘은 끊임없이 변하고, 빛은 분 단위로 각도를 달리하며, 사람은 순간마다 다른 표정을 짓는다. 바로 그 ‘지나가는 순간’을 그리기 위해 탄생한 것인 ‘인상주의’이다.


이 시기의 프랑스 예술계는 ‘국가 공인 전시회 살롱’이 가장 중요한 예술 발표의 무대였다. 그러나 고전적 신화, 역사화, 종교화만 인정했고, 현실적인 일상 풍경이나 실험적 색채는 ‘저속하고 미완성’으로 간주되었다.


마네, 모네, 르누아르, 드가, 피사로 등의 화가들은 반복적으로 살롱에서 거절당했다. 이에 1874년 ‘무명 화가, 조각가, 사진가 협회’라는 이름으로 살롱 외 첫 독립 전시회를 개최한다. 여기에서 모네의 <인상, 해돋이>가 전시되며, 비평가들에 의해 조롱 섞인 말로 ‘인상주의자들’이라 부른 것이 화풍의 이름이 된다.


AD_4nXcfQHz5TUWciizMd4IB-aw67Y25r0Qj3bmDpdqbCJgSMfMoDpbGR3ByJnCrQcsTDIoUrfSEf4rpFn6w-JKgB1I4h9NIAxre1S4b9hUVatD-cxUM1k9pkdMeyLFdJYGifrmOhpDE?key=GdOjhPNd0mJvh694QQNh9_nX 클로드 모네, <인상, 해돋이 (Impression, Soleil levant)>, 1872, Oil on Canva, 파리 마르모탕 모네 미술관


모네의 <인상, 해돋이>는 ‘인상주의’라는 이름의 기원이다. 르 아브르 항구의 새벽 풍경, 해가 막 떠오르는 순간을 그렸다. 새벽이라 형태는 흐릿하지만, 빛의 변화와 공기감이 생생하게 표현되어 있다.


AD_4nXdDH9moDt6igaHlsocuZ59R29mEwYYmhAIzN4z72wBwdm04aBeq2KLqke4XWr49j24WnwN5YmqVNgYdu1Kvoql9-Fg2r0cmx3Y7HnKokKvhBKT2YmTu-G3nSxjNdiArsMmqb_7cQQ?key=GdOjhPNd0mJvh694QQNh9_nX 피에르 오귀스트 르누아르, <물랭 드 라 갈레트의 무도회>, 1876, Oil on Canvas, 오르세 미술관


파리의 몽마르트르의 인기 있는 야외 무도회장 풍경이다. 사람들 사이의 움직임, 햇빛이 나뭇잎 사이로 스며드는 장면이 가볍고 생기 있게 묘사되어 있다.


AD_4nXdbhhO1nCQEmhIAk6tRPn2O8a8o2NNZufzcoAnOnKdO6FUDHeDp7lQApg5FKoxhb_MXihm98wuCC4voT2k6Km37dp7pWGQpY3RQVH9oZm4YimS0-rNXigg7jvMHrok_Epe9QizZVw?key=GdOjhPNd0mJvh694QQNh9_nX 에드가 드가, <무대 위의 발레리나(Ballet Dancer on Stage)>, 1874, Pastel and graphite on paper, 오르세 미술관


무대 위에서 막 공연을 마쳤거나 클라이맥스를 표현 중인 발레리나의 순간을 그린 것이다. 드가는 무대 위뿐 아니라 무대 밖의 뒷모습, 관찰자 시점, 측면 구도 등으로 일상의 연극성과 리듬을 전달했다. 특히 이 작품은 중앙이 아닌, 구석에서 보는 듯한 시점과 빛과 음영의 흐름을 통해 현실감과 순간성을 강조했다.




이처럼 인상주의 화가들은 모두 각자의 시선으로 ‘찰나의 진실’을 표현하고자 했다. 그림은 더 이상 정지된 역사가 아니라, 빛과 공기, 인간의 감정과 움직임이 교차하는 하나의 살아 있는 장면 되었다.


정확히 ‘무엇을’ 그리는가 보다는 ‘어떻게 느껴졌는가’를 기록하는 것이 중요했으며, 이는 프로그래밍에서 순차적 실행보다 사용자와 환경의 흐름에 '반응'하도록 구조화하는 것에 비유된다.


앞서 이야기했던 ‘사실주의’가 관찰과 구조를 통해 현실을 사실적으로 해석하는 것이라면, ‘인상주의’는 순간을 포착하고 그 순간의 감정을 표현한다. 빛에 의해 시시각각 변하는 순간을 그리는 것이 핵심이며, 이는 프로그램에서도 순차적으로 정지된 코드 흐름이 아닌 시시각각 변하는 사용자와 현실에 대비하는 순간적인 이벤트로 구조화하는 것과 같다.




keyword