Macbook 사용 후기 + 맥북으로 flutter 개발하기

이 글은 맥을 처음 사용해본 후기이다. 아이패드와의 연동, flutter 개발 등의 이야기를 담고 있다.

학생복지스토어에서 맥북을 구매하며

올해 초, 맥북을 구매했다. 이전부터 개발자는 맥북이지라는 말도 있었고, 실제로 맥북을 써보고 싶었다. 이유라면 여러가지였는데, 개발자라면 윈도우뿐만 아니라 맥 OS, 리눅스 등 다양한 OS를 기본적으로 쓸 줄 알아야 한다는게 내 생각이기도 했고, 기존에 쓰던 내 윈도우 노트북이 2년 정도 지나니깐 느려지는게 눈에 보이기도 했고, 또 애초에 경량화를 목표로 한 모델이라서 성능을 초점에 둔 노트북도 아니었다(그램에 성능을 기대하지는 않듯이, 내가 쓰던 노트북도 그램같은 포지션의 노트북이었다). 그러다보니깐 애플 실리콘 기반의 강력한 성능이 기대되기도 하였고, 그와 동시에 마침 Flutter를 통해서 모바일 앱 개발을 처음 시작할 때여서 맥북을 구매하게 됐다. 사실 모바일 개발하려면 어차피 iOS 에뮬레이터가 맥에서만 돌아가서 맥이 필요하기도 했고.

사실 맥북을 처음 사보는 것이므로, 미리 적응하는 훈련을 거치기로 했다. 우리 학교에서는 기자재 대여를 통해서 제한적으로 맥북이나 아이패드 등을 빌릴 수가 있는데, 이 기자재 대여를 통해서 미리 맥북 에어 m1과 아이패드 프로 11" 1세대를 빌렸다. 내가 맥북에 잘 적응할 수 있는지를 테스트하기 위해서였다. 사실 그 이전에도 한 두 번 맥북을 써본 적이 있었고, 그래서 맥 OS에 적응하는 것 자체는 큰 어려움은 없을 거라고 생각했다. 실제로 윈도우나 맥 OS나 거의 비슷했다. 단축키도 거의 유사했고, 몇 가지 다른 것들만 익히면 됐다(예를 들어서 크롬에서 history를 볼 때 window에서는 ctrl+h를 누르면 됐었지만, 맥에서는 cmd+h가 창을 내리는 키이기에 대신 cmd+y로 배정돼 있다. 이런 몇 가지 사소한 키들만 익숙해지면 나머진 거의 비슷했다).

다만 그럼에도 내가 확실하게 확인하고 싶었던 것은, 바로 맥 OS 환경에서 내가 원활하게 개발 환경을 세팅할 수 있느냐였다. 학교에서 빌린 맥북으로 Flutter 개발 환경을 세팅하였고, 약 3주 정도 맥 환경에서 Flutter를 사용했다. 몇 가지 시행착오는 있었지만, 결과는 성공적이었다. 내가 맥 환경에서 개발 환경을 완벽하게 세팅할 수 있구나라는 확신이 든 순간 바로 나만의 첫 맥북을 장만했다.

대학생이라는 혜택을 고려하여, 학생복지스토어(유니브 스토어)를 이용했다. 내가 구매한 모델은 Macbook Pro 14 M1 512GB 16GB RAM의 기본 모델이었는데, 이때가 마침 M1 Pro 모델이 출시되기 직전이여서 M1 Pro 모델이 단종 직전 할인을 하기도 했다. 프로 라인업은 전통적으로 새 제품이 나오면 기존 제품은 단종되기에, 최적의 기회라고 생각했고 바로 구매했다. 애플케어까지 합해서 거의 20%의 가격을 할인받았다. M2의 성능이 굳이 필요하지 않았던 나에게는 정말 운이 좋은 선택이었다. 유니브 스토어 최고다.

맥과 아이패드

이전에 학교에서 빌린 아이패드가 있었는데, 이게 맥북과 만나자 엄청난 시너지를 발휘했다. 애플 생태계의 강력한 무기인 연동의 편리함은 정말이지 윈도우나 안드로이드는 반성해야 한다. 특히 맥에서 아이패드의 연동 중 가장 요긴하게 쓰였던 기능은 화면 미러링이다. 내 아이패드를 제 2의 무선 모니터처럼 사용할 수 있게 해주는 건데, 이게 놀랐던 점이 어떤 확장 프로그램을 설치하거나 복잡한 연동 과정을 거칠 필요 없이 그냥 버튼 한 번만 누르면 바로 페어링이 된다. 그 순간 내 아이패드를 제 2의 모니터로 사용할 수 있게 되는데, 심지어 무선인데도 불구하고 너무 부드럽게 화면이 확장된다.

다소 컨셉도 포함된... 개발 환경 세팅

 

모바일 개발을 하다보면 주로 모바일 에뮬레이터를 함께 보며 코드를 작성하는 경우가 많다. 코드의 변경 사항이 모바일 화면에 바로 반영되기에, 옆에다가 띄워놓고 이를 확인하는 게 편하다. 내 코드의 변경사항이 바로바로 즉각즉각 반영되는 것을 직관적으로 볼 수 있기 때문이다. 이때 아이패드의 화면 미러링이 큰 역할을 해준다.

 

사진처럼 화면을 세팅해놓고 개발을 하다보면, 정말 쾌적하게 개발이 가능하다. 이게 별도의 외장 모니터를 들고 다닐 필요 없이, 심지어 펜슬로 터치가 가능한 모니터를 들고 다닐 수 있다보니, 카페같은 곳에 가서 개발을 할 때 정말 편리하다.

 

거기다가 참고할 만한 자료들을 띄워놓고 운용할 수도 있기 때문에, 정말 쾌적하게 세팅 가능하다. 이건 모바일 개발 뿐만 아니라 프론트 개발자들이 더 유용하게 쓸 수 있을 것 같다.

 

아이패드와의 호흡에 감동한 것은 이것 뿐만이 아니었는데 클립보드 연동 기능 또한 소소하지만 중요했다. 내가 맥에서 복사한 이미지나 텍스트를 아이패드에서 바로 붙여넣을 수 있다. 그 반대도 가능하다.

사진은 예시를 위한 컨셉샷이지만.. 실제로 공부할 때 매우 유용한 기능이다.

 

이 기능은 공부를 할 때 정말 요긴하게 쓰고 있다. 강의를 들을 때 빠르게 필기를 하면서 사진을 붙여넣어야 할 때가 있다. 특히 한 강의에서는 교수님께서 슬프게도 사진을 강의록에서 제공을 안 해주셔서... 필기 도중 필요한 사진은 직접 검색해서 붙여넣어야 하는데, 이때 맥북에서 바로 검색해서 복사하고, 필기를 하던 아이패드 굿노트에서 바로 붙여넣기를 하면 복사 붙여넣기가 된다.

 

맥북 성능

M1 Pro의 성능은 정말 감동적이다. 플러터 프로젝트는 아니었고 Solidity를 이용한 블록체인 프로젝트를 진행할 때에도, 기존에 윈도우 i7 노트북에서 거의 1분 가까이 걸리는 컴파일과 빌드 과정이 맥북 프로에서는 10초 내외로 순식간에 완료된다. 컴파일과 빌드 과정은 CPU 성능 차이가 그렇게까지 드라마틱하게 반영되는 분야가 아닌데도 그정도 차이가 난다.

 

그리고 모바일 에뮬레이터도, 은근히 리소스를 많이 잡아먹는 무거운 프로그램 중 하나인데, 빠릿빠릿하게 켜지고 돌아간다. 조금의 렉도 걸리지 않고, 쾌적하게 돌아간다.

 

영상 편집할 일이 많지는 않았지만, 대회 제출을 위해서 영상을 편집해야 할 때가 있었는데, 정말 쾌적하게 돌아갔다. 물론 M1 Pro의 영상 편집 성능은 이미 유명하니깐..

종합 후기

개발을 공부하는 입장에서, 혹은 학생의 입장에서도 맥북 구매는 절대로 후회하지 않는 선택같다.

내가 어떻게 맥북으로 소위 뽕(?)을 뽑아먹는지를 소개했는데, 생산성이 이전에 비해서 극대화된 것이 내 스스로 체감이 될 정도이다.

처음에 이 노트북을 샀을때 이것으로 내가 얼마나 더 생산성이 높아질 지 기대됐었는데, 산지 2달 조금 넘은 이 시점에서 이미 가격값은 한 기분이다.