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.Assuming only a good (even if not advanced) knowledge of mathematical analysis and linear algebra, this book presents various aspects of the mathematical theory in optimization problems. The treatment is performed in finite-dimensional spaces and with no regard to algorithmic questions. After two chapters concerning, respectively, introductory subjects and basic tools and concepts of convex analysis, the book treats extensively mathematical programming problems in the smooth case, in the non-smooth case and finally vector optimization problems.