2010-02-13 2 views
12

iPhone App 용 라이브러리를 구현하기 위해 C/Objective-C의 저급, 고성능 언어로 Go를 사용하는 것이 좋습니다. GO 컴파일러 중 하나가 Go 런타임 등으로 기본 iPhone 응용 프로그램에 링크 될 수있는 라이브러리를 생성 할 수 있습니까? Go 용 ARM 포트가 있습니까? 아니면 gccgo/gcc가 이것을 지원합니까? gccgo가 gcc를 백엔드로 사용하고 Xcode가 gcc를 사용하여 iPhone 앱을 컴파일 한 이후로 이것이 가능할 가능성이 큽니다. 가능하다면 Xcode 프로젝트에서 어떻게 설정하겠습니까?Using iPhone 앱용 라이브러리를 작성 하시겠습니까?

누구든지 이것을 시도 했습니까? ("go code iphone"과 같은 Google 검색을 할 때 "go"부분은 완전히 사용되지 않고 iPhone 개발에 관한 것만 얻습니다.)

답변

7

Go는 현재 iphone 플랫폼을 지원하지 않지만 작동하지 않습니다. ARM 프로세서를 지원합니다. 이 문제에 관해서는 메일 링리스트에서는별로 언급하지 않았습니다.

1

가능한 경우에도 Go는 C 또는 Objective C보다 훨씬 느립니다. 대부분의 독립적 인 벤치 마크는 현재 개발 버전을 사용하면 성능이 좋지 않음을 나타냅니다. 이 microbenchmarks against C suggest Go는 C보다 2 ~ 150 배 느립니다. Java 및 C# Mono보다 느립니다. 그래서 Go를 공연 대안으로 부를만한 이유는 거의 없습니다.

응용 프로그램에 따라 다르지만 GPU API를 사용하는 것이 대부분의 성능 문제를 해결하는 가장 좋은 방법이라고 생각합니다.

+0

그래서 Go는 서버에서 C#/Java를 대체하려고합니다. 그런 생각인가요? 나는 C가 내가 원하는 것을 할 것이라고 생각하지만 문자열, 해시 테이블 등을 사용할 수있다. –

+0

코드 크기 칼럼 150X에서 624 (Go)와 2579 (C)를 비교하면 흥미 롭다. 개발 속도가 빨라지고 응용 프로그램이 성공적으로 실행될 때 컴파일러가 향상 될 수 있습니다. – fabrizioM

+0

>> Go는 C보다 2 ~ 150 배 느리다. << boxplot 차트에 대한 좋은 점은 당신이 150이 outlier라는 것을 쉽게 볼 수 있다는 것이다. http://shootout.alioth.debian.org/u32/which-programming-languages- are-fastest.php? gcc = on & go = on & calc = chart – igouy

2

최소한 봐야 할 것은 루아입니다. 그것은 빠르고 내가 사용하는 것을 좋아하는 언어입니다. iPhone Wax은 lua를 사용합니다.

+0

이번 주에 참조 설명서를 읽었습니다! 제가 실제로 구현하고있는 것은 스크립팅 언어이며, 다른 스크립팅 언어로 스크립팅 언어를 구현하는 것이 좋지 않을지라도 루아 C 소스가 유용 할 수 있습니다. (스크립팅 언어에 대한 프로토 타입이 하스켈에 있고 적절한 대체물을 찾고 있었기 때문에 아마도 C로 인해 만들어야 할 것입니다. –

+0

왁스 사용을 강력하게 권장합니다 .2015 년 2 월부터 모든 제출 된 모든 앱에 64 비트 버전이 필요합니다. 아이폰 왁스는 64 비트를 지원하지 않으며 루아와 objc-c 사이의 매개 변수 마샬링을 양방향으로 수정해야한다. 이미 32 비트 버그가있다. (unsigned int는 제대로 작동하지 않는다.). –

0

Go Mobile 프로젝트에는 현재 IOS 및 Android 모바일 개발에 대한 일부 지원이 있습니다. 응용 프로그램에 대한 자세한 내용은 위키 섹션 Building for IOS을 참조하십시오.

관련 문제