SwiftUI 3

[iOS] MVC에서 MVI로, AI를 쓰기 전에 개발자가 미리 적용하자 (MVI + Clean Architecture with. SwiftUI

최근 AI가 정말 많이 발전했다.예전에는 카카오톡에서 '개발 도와주세요', '개발 고수님들 찾습니다'라는 오픈 채팅방을 쉽게 볼 수 있었는데,요새는 정말 보기가 힘들더라. AI를 쓰는건 정말 좋은것 같다. 귀찮은 코드를 대신 작성해주고, 새로운 코드나 기술을 적용할 때, 쉽게 설명해주니까.그런데 너무 AI 자체에 의존해서 생기는 문제들도 보여지고 있다. 특히 아키텍쳐나 패턴에 대한 지식이 하나도 없는 상태로 AI에게 코드를 맡겼다가, 유지보수가 불가능한 수준의 프로젝트가 생성되거나.반대로 AI가 특정 아키텍쳐나 패턴을 적용해주었는데, 개발자가 이해하지 못해서 평생을 AI에게만 맡겨야 하는 불상사가 생기고 있다. 물론 AI가 더, 더 발전해서 개발자가 아무런 설계를 하지 않아도 되는 세상이라면 상관 없겠지..

개발/iOS 2026.03.11

[iOS] iOS Toy 1: 스크랩 에디터, 캔버스 에디터, 제스처 조작하기

2024 관광데이터 활용 공모전에서 내가 메인으로 개발했던 기능 중 '스크랩 에디터'를 공유하려 한다. 실제 앱에서는 REST API를 통해 캔버스 데이터를 불러오고 각 디바이스 사이즈에 맞게 재조정하고 배치하고..작성할 코드가 매우 많아서 힘들게 개발했었고, 매우 더럽게(?) 개발했다. 여기서는 간단하게 어떤 원리로 개발할 수 있는지, 이런 방법도 있다는 것을 공유하는 차원에서 글을 쓴다. 대충 이런 스크랩을 만들 수 있는 기능사용한 UI 프레임워크: SwiftUI주요 Skills: GeometryReader, 좌표, Gesture 찾아보니 'Canvas'를 사용하는 것도 있던데, 나는 ZStack을 이용해 구현할거다. // CanvasView.swiftimport SwiftUIstruct Canvas..

개발/iOS 2025.04.26

[Metal] Metal Toy 1: 텍스처 색상 반전

iOS 개발을 하면서 그래픽을 건드리게 된다면, Metal 이라는 단어를 듣게 된다. OpenGL, DirectX처럼 GPU를 직접 제어할 수 있는 API로, Apple 생태계(iOS, macOS 등)에 특화된 성능 최적화된 API이다. 이런말을 사용할 때면 항상 아쉬운게 처음 접하는 입장에서는 저런식의 정의가 쉽게 와닿지 않는다.그래서 항상 내가 이해할 수 있는 방법으로 이해하고, 나중에 다시 정의를 보면 잘 이해가 된다. 그래서 나는 Metal을 이렇게 이해하고 학습을 시작했다.화면에 2D나 3D로 뭔가를 그리거나 연산을 할 때 직접 GPU를 활용할 수 있도록 하는 Apple 전용 그래픽 API 사실 예제에 관련된 포스팅을 하기 전에 Metal에 대해서 먼저 자세히 알아봐야 하지만,스터디에서 발표할 ..

개발/Metal 2025.04.21