Los principios fundamentales de la orientación a objetos incluyen la abstracción, el encapsulamiento, la modularidad, la jerarquía, el paso de mensajes y el polimorfismo. La abstracción permite modelizar la realidad como objetos mediante la búsqueda de similitudes. La modularidad propone dividir aplicaciones en módulos distintos para simplificar problemas. La herencia permite que las clases hijas tomen propiedades de las padres para evitar duplicar código.