MVC模式中的文件层次结构和文件链接

时间:2013-07-22 10:46:13

标签: ios objective-c model-view-controller code-organization

随着项目开始增长,我倾向于将代码逻辑分成几个.h / .m文件。我喜欢这样做,特别是当模型部分(MVC模式应用程序)是最重要的部分时。

逻辑示例是分割数据加载/保存部分和数据编辑部分(例如,所有计算方法)。但现在我面临一些循环链接问题:

// DATA SAVING/LOADING PART

#import "DataSavingLoading.h"
#import "DataCalculation.h"

@implementation DataSavingLoading

+ (NSDictionary *)loadData 
{
     // loading goes here ...
     if (!data) {
         NSDictionary *newData = [self createData];
         [self saveData:newData];
         return newData;
}

+ (void)saveData:(NSDictionary *)data { ... }

+ (NSDictionary *)createData
{
     NSDictionary *newData = @{...};
     return [DataCalculation calculateInitialData:newData];
}

+ (NSDictionary *)loadDataConfiguration { ... }

@end

然后在计算部分:

// DATA CALCULATION PART

#import "DataCalculation.h"
#import "DataSavingLoading.h"

@implementation DataCalculation

+ (NSDictionary *)calculateInitialData:(NSDictionary *)initalData 
{
     // Get config
     NSDictionary *dataConfig = [DataSavingLoading loadDataConfiguration];

     // Calculation goes here...

     return calculatedDataConfig;
}

@end

数据加载部分包括数据计算部分,因为调用了计算方法。数据计算部分必须包含数据加载部分,因为它需要一些配置资料。我可以通过循环链接获得任何问题吗?或者是否有更好的概念来组织模型部分中的大量方法?

1 个答案:

答案 0 :(得分:1)

#import不是#include,你不应该遇到问题。

What is the difference between #import and #include in Objective-C?