2017-02-02 5 views
1

안녕하세요. 버전 포드 'SBJson', '~> 2.2.3'이있는 SBJson lib를 사용하며 최신 버전 포드 'SBJson5', '~> 5.0.0'으로 마이그레이션하고 싶습니다.SBJson 2.2에서 SBJson 5로 마이그레이션

마이그레이션하기위한 노력은 무엇입니까? 나는 오래된 메소드를 지원할 것인가, 아니면 비추천되거나 변경된 메소드 또는 다른 특정 변경을 찾아야 할 필요가 있는지를 의미한다.

SBJson과 함께이 lib 또는 마이그레이션을 사용한 사용자 중 누구도이 스레드에 게시물을 게시하지 않습니다. 몇 가지 해결책을 제안하십시오.

답변

0

사용법이 얼마나 복잡한 지 잘 모르겠지만 몇 가지 수동 편집을해야합니다. 나는 2011 년에 JSON 스트리밍 방식으로 스트리밍하는 데 초점을 맞춘 버전 3을 출시했으며, 현재 컴파일 된 버전 2.x.x도 솔직히 놀라 울뿐입니다!

레포의 NEWS 파일의 변경 사항을 문서화하려고했습니다. 릴리스 이름을 지정할 때 SemVer을 따르려고했는데, 이는 2.xx -> 3.xx 및 3.xx -> 4.xx 및 4.xx -> 5.xx가 모두 이전 버전과의 호환성을 위반했기 때문에 이름이 지정되었음을 의미합니다. 어떤 방법으로.

버전 3의 경우 API가 스트리밍에 집중하기 위해 큰 변화를 겪었습니다. 많은 API가이를 지원하기 위해 변경되었습니다. 버전 4는 3.1.x, 3.2.x 및 3.3.x 시리즈에서 더 이상 사용되지 않는 이전 메소드를 제거했습니다. 4 -> 5의 경우에는 변경 사항이 매우 작았습니다. API는 동일하게 유지되었으며 동작 만 약간 다릅니다. ("Naked Scalars", 예를 들어, 배열이나 객체를 감싸지 않은 문자열과 숫자는 이제 업데이트 된 JSON RFC에 따라 허용됩니다.)

SBJson을 실제로 사용해야하는지 고려 했습니까? NSJSONSerialisation을 사용하는 것이 더 나을 수도 있습니다. 어쨌든 iOS 5부터는 iOS SDK에, Mac SDK에서는 그 이후부터 사용 해왔다. SBJson을 사용하면 JSON을 완전히 다운로드하기 전에 파싱을 시작할 수 있다는 점에서 가장 큰 이점이 있습니다. (따라서 대기 시간을 인식 개선.) 당신이로 실행할 수 있습니다

기타 문제 : 나는 파서는 그때보다 훨씬 엄격 의미 2.x.x 출시 이후 많은 버그를 해결했습니다. (버그로 인해 모든 종류의 깨진 JSON과 깨진 UTF-8을 허용했다.) 그래서 당신이 그 행동에 의존한다면 너는 운이 나올 것이다. 다행히 그게 아니라면 :-)