Насколько я понимаю, @ infront свойства делает его директивой компилятора. Он говорит компилятору что-то делать. В этом случае он создает, сообщает компилятору, как создать методы getter и setter для переменной-члена. Конечно, вы можете сделать это вручную, но это так, чтобы компилятор мог сделать это за вас.