Newly I am switched from xamarin.iOS to Xcode.
In C# a good feature is that you have a solution that contains several projects and you can define debug/build configurations and based on them build separate projects with each other.
Now, I want to know that is there any mechanism like this in the Xcode too?
Actually I want to develop 3 apps that they have many shared codes. So I want to create a base project that contains shared codes (and contents) and then 3 sub projects. Now with some thing like build configuration, I can build each of them that I want for publishing.
Does Xcode support mechanisms for this porpose?
UPDATE
By reading below answers I created a workspace with below structure:

I also added ../testproject/testproject to the build settings of link1Project but when I want to use files in testproject the autosuggest is not working and also when I build the link1Project I face with:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_ShowAlertView", referenced from:
objc-class-ref in mftTbnFlipsideViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Am I wrong in creating the workspace? Does the structure is right or I missed something?
You can have multiple targets for the same project, and each target can have different settings or files.