2012-06-16 6 views
0

Apple이 ARC를 도입 한 지 약 1 년입니다. 저는 개인적으로 아직 시도하지 않았습니다 - 대부분 고전적인 유지/해제 방식으로 멋지게 채우기 때문입니다. 그리고 ARC는 메모리 관리를 더 쉽게 해주 겠지만, 프로그래머가 컨트롤을 옮기고 오래된 잘 알려진 깨끗한 코드를 대체함으로써 문제를 더욱 복잡하게 만드는 기술인 "Objective-C GC bubble" 다른 것들은 암묵적인 것들과 규칙을 맺는다.ARC 노출

개발자는 실제 작업 환경에서 어떤 인상을 받았는지 궁금합니다. 안도감이나 큰 실망입니까? 사전에

감사합니다, 알렉산더

답변

0

정직하게 생각하지 않는다. 수동으로 메모리 관리. 말했다되고 있음을, 나는 몇 가지 이유에 대한 ARC 사랑 :

  1. 시간
  2. 코드 감속기
  3. 보호기 약한 참조 제로화! 나는 블록을 좋아하고 점점 더 인기를 얻고있다. 약한 참조를 제로화하는 것은 블록의 경우 엄청납니다. ARC를 사용하지 않고 약한 참조를 제로화하려면 MAZeroingWeakRef과 같은 것을 사용해야합니다. 이것은 적합하지만 덜 이상적인 솔루션입니다. 그것은 ARC처럼 보일 수

은 많은 시간을 저장하거나 너무 크게 작성해야하는 코드의 양을 줄일 수 있지만, 제 생각에 그것은 실제로 당신이 생각하는 것보다 더 큰 차이가 없다. 나는 처음에는 회의적 이었지만이 시점에서는 ARC없이 새로운 프로젝트를 시작하지 않을 것입니다.

+0

블록이있는 약한 참조를 없애기위한 사용 패턴을 알려주시겠습니까? – ilowry

0

나는 그것을 즐길 수 있습니다. 나는 그것이 굉장하다고 생각한다.

처음에는 익숙해지기 조금 이상했으나 결코 돌아 가지 않을 것입니다 (나는 생각하지 않습니다). 나는 ARC가 나를 방해하는 것을 느낄 수있는 한 가지 사례를 생각할 수 없다. 실제로 나는 모호한 매달린 포인터 나 메모리 관리 규칙에 대해 더 이상 걱정할 필요가 없다고 생각한다. :)

0

나는 멍청한 소리가 들리 겠지만, ARC는 프로그래밍하는 동안 훨씬 직관적으로 만들었습니다. 저는 Visual C#에서 Xcode로 옮겼습니다. 변경 사항은 그다지 심각하지 않았습니다. C#에는 메모리 관리가 잠시 자동화되었습니다. 개인적인 취향에 더 가깝습니다.