Is Using custom form & then saving node a good solution in long run?
With d7, not necessarily. Depending on whether or not you really need a 'node' (in the d6 sense), you might be better off with creating your own entity.
Don't be a Help Vampire - read and abide the forum guidelines.
If you find my assistance useful, please pay it forward to your fellow drupalers.
I don't mind creating my own entity but issue comes when i have to use the fields of different type (like: addressfield, entityreference,etc) then I have to again use field ui, the form can't be customized in my way
I don't think you are providing enough information to get a good answer here. Why is the Field UI a problem for you? What are you trying to accomplish?
spovlot is right-- back up and describe the goal. There's no part of a form (entity or content type), that i know of, that can't be customized with form_alter or theming.
Let me describe my case:-
I need to create events (multiple on one page) : Solution Field Collection
Now I want to copy first childs information to other children...
Suppose i have 3 columns i)Event Info ii)Date iii)Venue
I want to copy the event info of first child to all other child
I couldn't figured out a solution to this and so I thought to use "Save Node Programmatically" as it also provide more flexibilty on my form.
That doesn't really describe the form customizations you want, but this is typically done with individual nodes and reference fields rather than field collections. You can then do things like use views and eva to share info among referenced nodes. There's also lots of reference enhancing modules like entityreference_prepopulate and references_dialog.
Drupal is a registered trademark of Dries Buytaert.