Welcome to Qlik World!
1) There are two ways to build dashboard 1) Using desktop 2) From Hub directly -- Which way is preferable? Pros and cons any?
It depends, let's say your users like to build their own ad-hoc report then centralized qliksense server hub is the best way (qlikview is Guided where as qliksense is self- service analysis so we should allow them to create their own report [ensure model should exists, logical calculated dimension / measure already added into Master item so that they can simply add any chart object using drag and drop and they can start visualizing it easily) --also note Content admin Role/equivalent custom role required (i.e: like designer role)
for the developer perspectives, always try to develop using qliksense desktop tool and then migrate into UAT/Production environment (just follow that SDLC method)
2) The latest version in Nov 2017 and i am using the same for my desktop development, however latest server up-gradation is still 3.2? Will it create any problem while publishing like newly added features wont work etc?
I would recommend you to keep both (server and desktop) in same version -->[ new feature may not work in server so always keep same version in both environment)
3) For example, i built a dashboard using desktop and published, users have created their own visualization and shared to others. Later i got an enhancement and in that case do i need use latest exported copy from server or i can still do the enhancements in local copy and re-publish? In that case Does users created object go away?
No it won't. let's say if your going to do the enhancements on users sheet then export server copy and re-publish it. or it's just your own dashboard sheet object then no need to export from server (assume that local desktop is base copy and server child copy). u use the desktop app and enhance it then import into server via QMC (here we can option to publish only specific sheet )
Hope it helps