I'm looking for a book or two that details affine spaces and transformations, then differential geometry of surfaces in affine spaces, starting at a level suitable for a year 1-2 undergraduate. In particular, I'd like to understand a few properties (e.g. what's the gradient and curvature at a point) and carry out a constrained optimization on these properties over affine space. I'm familiar with constrained optimization in Euclidean space and to a lesser degree, on any general vector space, if that helps a little. Could someone recommend me a book? Thanks!