2013-07-15 15 views
5

Tôi sử dụng DataManager lớp singleton của mình trong 99% dự án của tôi. Thay vì nhập nó trong mỗi lớp tôi nghĩ về việc chỉ cần nhập nó vào trong tệp pch như tôi làm với các hằng số của mình. Có bất kỳ nhược điểm nào đối với điều này không? Nó được coi là thực hành xấu?Nhập khẩu lớp đơn của tôi bằng Project_Prefix.pch - Thực hành không tốt?

Cảm ơn

#import <Availability.h> 

#ifndef __IPHONE_5_0 
#warning "This project uses features only available in iOS SDK 5.0 and later." 
#endif 

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
    #import "Constants.h" 
    #import "DataManager.h" 
#endif 
+3

Thực tiễn không tốt là mã của bạn 99% phụ thuộc vào lớp này vì mã của bạn có nhiều khớp nối ẩn .. –

+3

@Maria Có thể, nhưng đó không phải là câu hỏi. – Segev

Trả lời

3

Việc đánh giá thực hành tốt của #importing XYZ.h sẽ là, trong suốt thời gian của dự án,

NSTimeInterval saved = (time that would have been spent compiling XYZ.h plus every header it #imports in each file that included it every build); 

NSTimeInterval wasted = (time spent recompiling files that do not include XYZ.h when XYZ.h changed); 

if (saved > wasted) goodPractice = YES; 

Vì vậy, bất kỳ hệ thống #import và rất có thể hầu hết thư viện #imports của bạn, là những ứng cử viên xuất sắc. Còn gì nữa không; tốt, nếu 95% mã của bạn được biên dịch lại với tiêu đề cụ thể đó, hãy chắc chắn đặt nó vào đó có ý nghĩa. There's a good writeup here về chủ đề.

+0

+1 cho định dạng của câu trả lời này –

Các vấn đề liên quan