What is the difference between Function User Inputs & View Control User Inputs?

I have specifically been warned against using the "User" Input option for Functions, and told to use the View Control Inputs via Input Forms.

In Example: In the view, create a group, then create a control such as a text box / checkbox. Then in the linked View Operation, create the appropriate outputs of the same name on the Function 'Call_PortalGenerateForm'.

But I have yet to figure out how these two different methods for creating user inputs are functionally different. Details such as how they each handle user variables, and the appropriate times to use one or the other. I have looked around in the Process Builder Help documentation, but I have so far failed to puzzle this out.

I have also had issues getting textbox controls to properly create variables for use by functions in a Pop-Up screen. And I believe a more in-depth understanding of inputs would help in the future.

Any links to helpful resources, or explanations would be greatly appreciated. Thanks in advance!