2013-02-21 2 views
1

10.5에서 10.8 mac os x까지 호환 가능해야하는 코드가 있습니다. 10.5에 ARC가 없기 때문에 수동 메모리 관리를하고 있습니다.수동 메모리 관리를 할 때 사용할 Json 라이브러리

json을 처리 할 수 ​​있도록 프로젝트에 제 3 자 json 라이브러리를 통합해야합니다. 나는 Objective-c와 코코아에 꽤 새로운 사람이다. 도서관이하는 메모리 매니지먼트에 대해 걱정해야하는지에 대해 우려하고 있습니다.

제 생각에는 ARC를 사용하는 lib를 사용해서는 안됩니다. 맞습니까? 그 경우에는 수동 메모리 관리를 수행 할 json 라이브러리를 사용해야하는지에 대한 권장 사항이 필요합니다.

ARC는 내 요구 사항에 맞지 않는다고 추측하지만 SBJson이있는 것으로 보입니다.

이 새로운 친구에 대한 조언이 필요하십니까?

+0

ARC의 작동 방식을 잘못 이해했다고 생각합니다. ARC는 컴파일 타임 기술입니다. 컴파일러가 지원하는 한 이전 OS 버전에 배포 할 수 있습니다. (약한 포인터와 관련한 몇 가지 예외가 있습니다.) –

+0

구형 플랫폼에서는 GC를 사용하고 최신 버전에서는 ARC를 사용할 수 있습니까? 아니면 모든 플랫폼을 지원하는 단일 바이너리를 사용해야합니까? –

답변

0

https://github.com/johnezang/JSONKit
매우 높은 성능 (일반적으로 다른 JSON 라이브러리와 비교하여 크기가 큼), 사용하기 쉽습니다. ARC가 필요하지 않습니다.
더 정확히 말하면 JSONKit은 ARC를 지원하지 않으며 아마도 ARC를 지원하지 않으므로 앞으로 ARC로 전환하려는 경우이를 염두에 두십시오.

+0

감사합니다. 매우 도움이됩니다 .. – Ahmed

-1

ARC 삽입은 컴파일 타임에 호출을 유지/해제하므로 ARC를 지원하는 컴파일러 (10.8에서 컴파일)를 사용하는 한 확인해야합니다. (약한 포인터와 같은 일부 기능이 지원되지 않을 수 있습니다.)

+0

약한 참조가 없어도 ARC는 Leopard와 호환되지 않습니다. ARC가 지원되는 최소 전개 대상은 10.6입니다. http://developer.apple.com/library/mac/releasenotes/ObjectiveC/ObjCAvailabilityIndex/ –