The book is intended for people (graduates, researchers, but also undergraduates with a good mathematical background) involved in the study of (static) optimization problems (in finite-dimensional spaces). It contains a lot of material, from basic tools of convex analysis to optimality conditions for smooth optimization problems, for non smooth optimization problems and for vector optimization problems. The development of the subjects are self-contained and the bibliographical references are usually treated in different books (only a few books on optimization theory deal also with vector problems), so the book can be a starting point for further readings in a more specialized literature.