Atomic layer deposition and other thin film deposition techniques: from principles to film properties | Synapse