▲GN⁺ 2024-03-28 | parent | ★ favorite | on: Swift로 GNOME 앱 개발하기 (swift.org)Hacker News 의견 SwiftUI와 유사한 래퍼에 대한 논의 SwiftUI와 유사한 선언적 래퍼를 제공하는 접근 방식에 대해 언급함. Gnome 기능을 위한 SwiftUI 스타일의 래퍼를 제공하고자 함이 핵심 전제임. SwiftUI 자체는 적절한 스레드에서 처리/업데이트를 수행하고 데이터 바인딩을 올바르게 하는 것과 관련하여 성장통을 겪고 있음. swift.org 또는 Apple의 블로그 글들은 대체로 잘 동작하는 경로를 보여주는 작은 데모에 불과함. 새로운 프레임워크나 플랫폼을 논할 때, 저자들이 주요 이슈를 이해하고 해결하며 개발을 지속할 것이라는 더 많은 증거를 보고 싶어함. 크로스플랫폼 UI 프레임워크는 빠르게 복잡해지며, Flutter나 Java/Eclipse 등과 같이 사용자나 클라이언트에게 장애물이 될 수 있는 장기적인 문제들을 가지고 있음. Swift의 경우, 여러 가지 동시성 모델과 Apple 플랫폼과 Linux에서의 다른 동작(공식적으로 UI가 테스트되지 않음)으로 인해 도움이 되지 않음. 다른 프로젝트와 도구들에 대한 언급 SwiftUI와 유사한 래퍼, Tokamak, 그리고 내장형 사용 사례를 위한 FlutterSwift에 대한 링크를 제공함. 개인적인 프로젝트 경험 공유 Vala와 gtk4를 사용하여 작은 사이드 프로젝트를 작성한 경험을 공유함. Blueprint의 포맷을 좋아했지만, 좀 더 고급 기능을 수행하는 방법에 대한 문서 부족으로 어려움을 겪음. Vala 언어를 매우 좋아하지만, 모든 로직과 모델을 Vala로 작성한 다음, UI에 이 Swift 라이브러리를 사용하는 것이 좋을 것이라고 생각함. 과거의 경험과 비교 약 20년 전 Mono를 사용하여 C#으로 Gnome 앱을 작성했던 경험과 유사함을 느낌. Mac에서의 실행 문제 Mac에서 실행을 시도했지만, adwaita.h가 누락된 문제를 겪음. 개인적인 "꿈의 프레임워크"에 대한 의견 SwiftUI와 같은 오픈 소스이며 GTK4를 타겟팅하는 것이 꿈의 크로스플랫폼 데스크톱 UI 프레임워크에 가까움. Swift 문법은 익숙해지는 데 시간이 걸리지만, 일단 모든 개념에 익숙해지면 매우 사용하기 좋은 언어임. Swift를 사용하지 않는 유일한 이유는 Linux에서의 지원이 Apple 플랫폼만큼 좋지 않기 때문임. gtk4에서의 3D 지원에 대한 질문 gtk4에서 3D를 사용할 때 여전히 OpenGL 컨텍스트에 제한되어 있는지에 대한 의문을 제기함. 함수 매개변수에서의 키 사용에 대한 의견 함수 매개변수에 키를 도입하는 것이 실수였다고 생각함. Swift 코드베이스 테스팅에 대한 논의 Swift 코드베이스를 테스트하는 방법에 대해 논의함. 테스팅에 관한 문서가 부족하고, 모의 객체, 스텁, 보고, 코드 커버리지 등에 대한 전략을 제공하지 않음. 네트워크 확장을 사용하는 앱의 경우, 서명 제한 때문에 물리적 기기에서만 테스트해야 함. iOS와 macOS 기기 모두를 지원하는 좋은 물리적 기기 CI 서비스를 아는 사람이 있는지에 대한 질문을 함. Swift가 데스크톱 개발에 흥미로운 옵션이 되고 있음을 발견 Swift가 데스크톱 개발에 흥미로운 옵션이 되고 있다는 것을 최근 발견함. 이 예제 외에도 macOS와 Windows를 위한 Arc를 추가함.
Hacker News 의견
SwiftUI와 유사한 래퍼에 대한 논의
다른 프로젝트와 도구들에 대한 언급
개인적인 프로젝트 경험 공유
과거의 경험과 비교
Mac에서의 실행 문제
개인적인 "꿈의 프레임워크"에 대한 의견
gtk4에서의 3D 지원에 대한 질문
함수 매개변수에서의 키 사용에 대한 의견
Swift 코드베이스 테스팅에 대한 논의
Swift가 데스크톱 개발에 흥미로운 옵션이 되고 있음을 발견