NOC:Solar Photovoltaics: Principles, Technologies and Material