I am having a problem with modeling objects that have curves like ps4 controller, cars, etc. is there an easy way to do that.
The main way of modeling curved things is to use Subdivision Surface modeling. The idea of subsurf modeling is to model the basic blocky shape, then apply a Subdivision Surface modifier to the mesh. Subsurf works by recursively subdividing and smoothing the mesh. To make sharper corners you can add proximity cuts. Proximity cuts are loop cuts (Ctrl+R) which are made close to corners in the mesh to tighten up the smoothing at that corner.
Here is a very simple example of a game controller like object which I have modeled. You can see the base mesh is the black wireframe cage and the grey solid mesh is after subsurf. Proximity cuts are highlighted in orange.
It is usualy done with subdivision modeling as @PGMath has suggested. You would start with the rough shape, and boundaries, and then connect all the vertices and apply the subdivision modifier.