본문 바로가기

전체 글16

Flutter Package 첫 배포 pub.dev에서 패키지를 항상 쓰기만하다가 드디어 나도 첫 패키지를 배포해보았다 패키지를 만들게 된 이유는...한번도 안해봐서 해보고싶었던게 가장 큰 이유였고, 만들겠다고 결정하고 나서는 어떤걸 만들지에 대해 고민하게 되었다. 가장 많이 흔하게 쓰이는건 ElevatedButton인데 사실 나는 개발하면서 이걸 그대로 쓰는 경우는 거의 없다. 다 커스텀으로 Button Class를 만들어서 컴포넌트화 시켜서 그걸가지고 주로 사용하는편이다. 그리고 개인적으로 생각하는 Flutter의 단점은 깊은 nesting인데... button같은 경우도 만들게 되면 이것저것 스타일 주다보면 nesting이 제법 생기게 된다. 그래서 nesting이 최소화되어 예쁘게 보일 수 있는 custom button 패키지를 만들.. 2023. 11. 4.
flutter가 선택한 dart언어의 특징 검색하며 공부해보다보니 놀라운 사실을 알았다. dart는 사실 javascript를 대체하겠다고 나왔던 언어였다고 한다. 여튼 dart의 특징은 아래와 같다. 두 가지 컴파일 지원(JIT, AOT) Hot Reload 초당 60 프레임의 애니메이션 통합 레이아웃 여기서 JIT, AOT가 생소할 수 있는데 간략하게 설명하자면 JIT(Just In Time): 프로그램을 실행하는 동안 기계어를 생성한다. AOT(Ahead Of Time): 프로그램을 실행하기 전에 기계어를 생성한다. 즉 둘다 지원해서 개발자가 갖는 이점은 JIT방식으로 개발 및 디버깅시 실시간으로 확인이 가능하고 AOT방식의 컴파일로 인해 빠른실행시간, 좋은 성능을 얻을 수 있다.그야말로 두마리 토끼를 둘 다 잡은 것이다. (참고로 java.. 2023. 10. 29.
Flutter vs React Native 간략한 비교 1. 성능비교 우선 성능이 좋다고 알려진건 Flutter이다. 그럼 왜 Flutter가 성능이 더 빠른가? 결론부터 말하자면 둘의 작동방식의 차이로 인해 Flutter가 성능이 더 빠르다. 우선 react-native, flutter 작동방식의 그림을 보자. 위의 그림은 react-native 의 작동방식이다. platform의 코드가 전부 native로 이루어져 있고 react-native는 javascript로 이루어져있기에 bridge가 중간에 껴있다. JavaScript와 Platform 내부의 각 동작은 빠르게 동작해서 문제가 되지 않지만 bridge를 통해 양쪽이 상호작용할 때 병목현상이 발생할 수 있고, bridge 이용이 빈번하게 발생함으로 인해 성능 저하가 생긴다. 다만 요즘 react-.. 2023. 10. 29.
이직준비 그리고 반성 및 블로그의 방향성 이직준비를 시작했다. 이직의 이유는 복합적이지만 가장 큰 이유는 역시 성장가능성이다. 개발자로 자체적으로 공부하는 것도 중요하지만 성장하려면 환경도 중요하다고 생각한다. 이직준비를 하면서 원티드나 점핏같은 사이트에서 공고를 보면서 나의 부족함을 무척이나 느꼈다. 일단 제일 큰건 테스트관련해서 DI(의존성주입)에 대해 나는 그동안 개발하면서 정말 하나도 생각하지 않고 짰다는 것이다. 두번째로는 클린 아키택쳐 + MVVM, MVVM패턴은 지금 짜여진 코드들도 분명 MVVM은 맞긴하다. 하지만 그동안 몇가지 프로젝트를 해오면서 발전은 없고 기존의 아키택쳐 구조를 그대로 고민없이 가져갔다는 점에서 반성했다. 역시 요즘 기술 트랜드를 알려면 구직공고를 봐야하나보다. 구직공고를 보면서 내가 요즘 기술 트랜드에 뒤쳐.. 2023. 10. 29.