O livro apresenta os conceitos básicos da programação imperativa e da programação orientada por objetos, de maneira clara e didática, incluindo uma grande variedade de exemplos e exercícios ilustrativos. O enfoque é centrado no desenvolvimento do raciocínio abstrato empregado na construção de algoritmos e no uso dos novos recursos de linguagens de programação orientadas por objetos para o desenvolvimento de programas. Concebido para ser utilizado como texto didático em cursos introdutórios de programação de computadores, este livro não pressupõe experiência prévia do leitor em programação ou em computação em geral, buscando orientá-lo, passo a passo, no aprendizado do desenvolvimento de programas.