2013-04-09 3 views
-1

최근에 나는 John Levine의 저서 "Linkers and Loaders"를 보았습니다. 이 책은 2000 년에 작성되었습니다. 누구든지 자신의 책을 읽었다면 2013 년에 Objective-C와 관련하여 작성자가 말하는 모든 것이 있습니까? 선반 위에 올려 놓은 책이 좋아 보이기 때문에 묻습니다. 정보가 오래 되었다면 책을 정말 공부하고 싶지 않을 것입니다.Objective-C 용 링커 및 로더

감사합니다.

+0

모르겠다. 나는 그것을 읽지 않았다. 특정 질문이 있으십니까? – nneonneo

+0

나는 ARC –

+0

을 다루지 않을 것이라고 확신한다. 나는 정말로 구체적인 질문이 없다. 링커 및/또는 로더가 일반적으로 어떻게 작동하는지 이해하고 싶습니다. 나는 변수와 포인터가 실제로 어떻게 작동 하는지를 깊이 이해하려고 노력 중이다. 필자가 읽은 것은 링커와 컴파일러가 어떻게 작동하는지에 관계가있는 기호 테이블과 관련이있다. 그래서 지금까지 읽은 적이있다. –

답변

0

예 & 아니 ...

나는 특정 책을 모르겠지만, 2000 년 최신 인 경우 다음의 재료는 여전히 일을 아래에서 작동하는 방법에 대한 자세한 내용은 유효해야합니다 후드.

그러나 변수와 포인터를 이해하기 위해 연결 및로드에 대해 알 필요가 없습니다.

기호 표를 이해하지 않아도됩니다. 심볼 테이블은 컴파일러가 컴파일하는 동안 프로그램 코드를 CPU가 이해하는 명령어로 변환하는 과정에서 컴파일 중에 변수를 추적하는 데 사용되는 데이터 구조입니다.

프로그래밍 언어에서 변수와 포인터의 개념은 CPU 수준에서 메모리 위치 및 메모리 주소 개념을 추상화 한 것입니다 (일부는 하위 수준의 요소를 추상화하여 회로로 마무리됩니다. 충분히 깊이 파고, 전자! ;-))

당신이 찾고 있어야하는 것은 프로그래밍 언어 개념에 대한 책으로 컴파일, 링크 및로드하는 것이 아닙니다. 좋은 책은 변수와 유형을 소개하고, 배열과 레코드와 같은 합성물과 객체 (결국 발견할만한 변수)가 될 것입니다. 유형과 변수가 함께 사용되면 다른 비트가 비트 콜렉션을 유지하기 위해 제공하는 비트 콜렉션을 해석하는 방법이 있습니다. 포인터는 정수가 일부 정수 유형의 값인 것처럼 일부 포인터 유형의 값 (비트 모음)입니다.

변수와 포인터는 어려운 개념은 아니지만 종종 오해됩니다. SO에 대한 많은 질문은 이러한 개념의 오해에서 유래합니다. 따라서 귀하의 퀘스트는 좋고 가고, 읽고 있습니다! 죄송 합니다만, 나는 손을 대면 아무런 언급이 없습니다.

+0

도움 주셔서 감사합니다. :) –

1

ObjC는 80 년대 후반 (이전에는 크게 프리 컴파일러 생성 언어 + 런타임이었습니다)부터 기본적으로 컴파일 된 언어로 사용되고 있었고 이후 링크 /로드를 지원했기 때문에 ObjC는 책이 C에서 파생 된 어떤 언어로도 적용될 수 있습니다. 그 말로는 잠수 시간이 낭비 될 가능성이 높습니다. 역시 링크/로딩은 시스템이 거의 처리하지 않는 세부 사항입니다. [OS X, OpenStep]을 개발자에게 구성 할 필요가 없습니다.

물론 흥미로운 차이점과 링크 /로드에 대한 깊은 이해는 컴파일 및 실행 도구 체인과 관련된 모든 작업과 관련이 있습니다.

+0

도움을 주신 BBC에 감사드립니다. :) –

관련 문제