In this talk I will introduce our recent results on PDE-constrained shape optimization. First, we proposed a modified boundary type shape gradient formula for shape optimization of Dirichlet problems and gave a new error analysis for Neumann problems, which improved the known results numerically and theoretically. Second, we gave a convergence analysis of evolving finite element approximations to shape gradient flows, which is a coupled nonlinear PDE system consisting of the state, the adjoint, the velocity and the flow map equations. In this approach, the constraint partial differential equations could be solved by finite element methods on a domain with a solution-driven evolving boundary. Third, we studied the well-posedness of shape optimization approaches for solving Bernoulli free boundary problems. Previous works showed that tracking Neumann data is well-posed while tracking Dirichlet data is not. In this work we show that tracking Dirichlet data is also well-posed by choosing a stronger norm for the Dirichlet data.