죄송합니다. noobie 질문과 같은 질문이 있으시면 ObjC와 iOS에 비교적 익숙하지만 소프트웨어 개발에 익숙하지는 않습니다. 주제에 대해 잘 모르겠다는 문구가 들리면 다음 용어에 대한 간단한 설명을 주려면 잠시 시간을 내 주시겠습니까?이 질문에 대한 답변 Objective-C/iOS
나는 아래에 나열된 용어들과 함께 붙어있다. 그리고 나는 그것이 내가 의미하는 것이라고 생각한 것, 즉 애플의 문서의 흐름을 더 잘 따를 수 있도록 나를 수정하는 데 도움이된다고 생각한다.
1) 싱글
PHP에서 완전히 정적 클래스에 아마 비슷한, 아니 인스턴스 메소드
이 없습니다2) 모델, 뷰, 컨트롤러 (MVC) 조직 - 특히 '모델'구성 요소
넓은 정의는 물건을 분리 상태로 유지한다는 것을 알고 있습니다.이 생각은 프로그래머블 또는 인터페이스 빌더에서 화면으로 출력하기 위해 빌드 한 것이고 컨트롤러는 메시지 (클릭 수, 탭 수를 처리하는 코드입니다. 등)을 표시하고 많은 경우에보기로 정보를 푸시합니다. 폼과 컨트롤러를 구성하는 .xib와 .h/.m 쌍은 같은 패밀리의 일부입니다 (즉, MyViewController.h/.m/.xib). 내 추측의 모델은 소스에서 데이터를 읽고 쓰는 별도의 핸들러입니다 (예 : SQLite 데이터베이스 또는 XML 피드에서 데이터를로드하고 반환 할 수있는 메시지를 보내는 클래스).
3) 개체 유형에 대해 이야기 할 때 *의 올바른 위치는 어디입니까?
NSString *myVar;
NSString* myVar;
NSString * myVar;
나는이 * 헤더 예 : 메시지에 입력 한 후 간다 이해 :
그들은 같은 뜻처럼 나는 * 포인터를 의미 알고 있지만 내가 찾고 아래와 같이 기록 된 것을 본 적이 :
- (void)myMessageHandler:(NSString *)str;
4) NSInteger와 평범한 int를 사용하는 경우는 언제입니까?
이것은 나를 바보처럼 보이게 할 수도 있지만, 언제 사용해야하는지 잘 모르겠다. 그리고 혼합 된 여러 가지 예를 볼 수있다.
5) 재사용 가능한 엔티티 식별자
디 queing은/재사용 큐를 통해 작동 객체를 생성, I는 "cellIdentifier"@ 2있는 UITableViewCell 각 시간 (예를 사용하여 동일한 동일한 식별자를 참조
). 그러나 내가 보는 것은 대기열에 단순히 저장되는 대신 관련 행 데이터로 셀이 재설정된다는 점입니다.이 혼란은 각 행을 주소 지정하는 HTML의 표에서 나옵니다. DOM을 트래버스하거나 ID 태그를 추가합니다. 각 행은 고유합니다.저는 이것이 기본 클래스를 사용하는 경우 실제로 어떤 일이 일어나는지 알지 못하게하는 메모리 관리 작업이라고 생각하지만 다른 사용자 정의 클래스를 사용하는 경우 각 유형 중 하나를 인스턴스화한다고 가정합니다 부모 클래스 인스턴스 (예 : UITableView)마다 매번 속성을 재설정하더라도 필요한 총 메모리가 최소화되고 인스턴스화 시간이 한 번만 수행되므로 루프에서 제거됩니다.
이 질문에 대한 2 부는 여러보기 컨트롤러가 서로 밀어 붙인 경우 특정보기와 관련된 고유 식별자를 사용하는 것이 좋을 수 있으므로 사용자 지정 하위 클래스를 사용하는 경우, 식별자는 오버랩과 아마도 메모리 누수를 일으키지 않을 것입니다.
예 : UITableView는 주석이 선택 될 때 UITableView를 푸시하는지도를 푸시합니다. 두 셀에서 재사용 가능한 ID 이름으로 'cellIdenfier'를 사용하지만 두 번째 셀은 UITableViewCell에 대한 맞춤 클래스를 사용했습니다. 상위보기로, 시스템이 잠재적으로 나를 대기열에서 잘못된 유형을 반환하지 않을 것이고 약간 이상한 결과가 발생합니까?
리소스로 스택 오버 플로우의 문제를 해결하기 때문에 실제로 한 번에 하나의 질문 만 게시해야합니다. :-) –
죄송합니다, 나는 5 개의 동시 게시물이있는 시스템을 어수선하게 만들 것이라고 생각하지만, 함께 그룹화하면 필요한 질문에 완전히 답하기 위해 필요한 기술을 가진 사용자를 끌어 들이지 않을 수도 있습니다. 나는 앞으로도 별도의 게시물을 작성하는 것을 잊지 않을 것입니다. – JamesB
질문 3에 대한 답변에서 그 중 하나는 문제가 없습니다. 필자는 이름 옆에있는 오른쪽으로 선호합니다. 포인터가 그 타입보다 더 포인터라는 사실을 연관시키기 때문입니다. –