바닐라 JS, 바닐라 파이썬이 뭐지? 프레임워크인가?
바닐라 JS라고 들어보셨나요?
React JS, Vue JS 등에 익숙해져 있는 분들에게 바닐라(vanilla) JS는 또 하나의 프레임워크처럼 생각될 수 있습니다. 저도 그렇게 생각했습니다. ㅋㅋ
하지만, 여기서 말하는 바닐라 JS는 프레임워크가 아니라 순수 자바스크립트를 뜻합니다. 따라서 바닐라 JS를 사용한다라고 말한다면, 리액트와 같은 프레임워크를 사용하지 않고 순수 자바스크립트로 웹 서비스의 프론트앤드를 구현한다는 것으로 해석할 수도 있습니다.
여러분이 자바스크립트를 공부한다면, 리액트, 뷰 등의 프레임워크를 잘 사용하는 방법을 배우기 전에 먼저 바닐라 자바스크립트를 제대로 익히는 것이 더 중요합니다. 파이썬을 공부할 때도 마찬가지입니다. 파이썬에도 정말 많은 프레임워크와 라이브러리가 있는데 특정 프레임워크, 라이브러리의 사용법을 익히는 것보다는 파이썬 자체를 잘 아는 것이 더 중요합니다. 라이브러리는 사실 필요할 때 갖다 쓰면 됩니다. 그 라이브러리를 사용하기 위해 필요한 문법 역시 그때 익히면 되는 것이고요. 물론 업무상 자주 사용하는 라이브러리라면 사용법을 숙달해놓으면 좋겠죠.
그런데 바닐라 파이썬을 모르면, 예를 들어 파이썬에 있는 리스트, 딕셔너리 등의 자료형을 모르면 데이터를 적절한 형태로 담을 수가 없고, 조건문, 반복문을 모르면 알고리즘, 로직을 만들 수가 없고, 함수, 클래스를 모르면 중복된 코드로 인해 코드가 너저분해지고, 예외 처리 방법을 모르면 고객에게 제공될 서비스로 만들어낼 수가 없죠.
궁극적으로는 이런 기본적인 것들이 중요합니다. 그래서 파이썬 기초 문법서를 어느 정도 파이썬으로 업무를 해내고 있을 때 다시 찾아보는 경우들이 생깁니다.
왜 바닐라?
그런데 왜 순수 자바스크립트, 순수 파이썬을 말할 때 앞에 바닐라라는 단어가 붙는 것일까요? 그 이유는 아이스크림의 기본 맛(defualt)이 바닐라이기 때문입니다. 따라서 바닐라는 기본, 디폴트, 오리지널, 순정, 순수 등의 의미를 지닙니다.
바닐라 vs 바나나
그리고 바닐라는 바나나와 완전히 다른 친구입니다. 공통점이 있다면 한국어로 '바ㄴ' 으로 시작하여 발음이 비슷하다는 것과 달달한 맛을 낸다는 것 정도를 빼고는 없습니다. 바닐라는 향신료입니다. 저희가 카페에서 많이 마시는 아이스 바닐라 라떼(아바라)에는 바나나 시럽이 들어간 것 아니고 바닐라 시럽이 첨가된 것입니다.
부끄러운 이야기지만, 예전에 바나나 우유에 에스프레소를 넣으면서 아내에게 진지하게 "이게 바닐라 라떼야" 말했던 적이 있습니다. 그때 무시(?)를 당하면서 알게 되었습니다.ㅋㅋ '아, 바닐라랑 바나나랑 다른 것이구나'.
바닐라는 생각보다 비싼 향신료라서 대부분 저희가 시중에서 접하는 바닐라시럽은 인공으로 제작된 것이라고 합니다. 간혹 바닐라시럽을 직접 만들어서 바닐라 라떼를 만드는 카페들이 있는데, 그런 곳이라면 꼭 바닐라 라떼 시켜서 드셔보세요. 훨씬 맛있습니다.
아무튼 우리 모두 바닐라 자바스크립트, 바닐라 파이썬의 강자가 되어봅시다. 제 인생의 장기적 목표 중 하나는 파이썬 창시자 "귀도 반 로섬" 버금 가게 파이썬을 다루는 것입니다. 물론 파이썬도 언젠가 사장될 언어일 수도 있겠지만요.