Today I have a theoretical question for you guys. I just joined my first larger software project at my company.
For some tasks such as copying files with some additional verification the company writes command line tools and they're calling them from their Objective-C source code using NSTask, which executes the command line tools as extra processes.
I don't really understand what the point behind that is.
Why would I create a separate command line tool to call it from my code instead of just calling the code in a separate thread?
The only thing that comes to my mind is that a process has an independent address space and maybe that my app would not crash if the command line tool crashes.
I heard that this is a common thing to do, so I would love to hear some opinions on what the advantage of doing so is. Thanks in advance!