Nanotechnology: Principles and Applications