C# 11 required 키워드 소개 | Matt Eland

C# 11에 추가된 required 키워드에 대해 설명 어떤 장점이 있는지를 이야기 합니다. 그리고 required 키워드 등이 C#에 계속에서 추가되면서 학생 등 새로운 학습자가 C#을 배우는데 어려움을 느낄 수 있다는 점을 지적합니다.

여러분의 생각은 어떠세요?


4개의 좋아요

생성자를 아예 문법에서 빼 버릴 수만 있다면 괜찮을 듯 한데,
그게 아니라면 괜히 사람헷갈리게 만드는 게 아닐까 하는 생각도 문득 듭니다 ㅠ
아니면 record 같은데서 한정적으로 쓰이게 하는건 괜찮을 것 같아요…

2개의 좋아요

제가 참고한 URL도 공유드립니다. :smile:
https://www.c-sharpcorner.com/article/c-sharp-11-features-required-members/

개인적으로는 여러 생성자를 사용하는 것을 좋아하지만 무분별한 객체 생성 규칙에 제약을 줄 수 있다면 장기적으로는 긍정적일 것 같아용~

1개의 좋아요

파생 클래스의 보일러 코드를 줄이려는 도입 취지는 매우 높게 살만합니다.

실제로 써보니 꽤 유용하더군요.

그러나, 언어의 문법 장치인데도 불구하고 Attribute 객체에 의존하게 끔 설계한 것, 특히, 키워드의 행위가 Attribute에 의해 완전히 달라지게 만든 것은 치명적인 실수 같아 보입니다.

이 점이 키워드의 신뢰성을 떨어뜨리는 것 같습니다.

만약 아래와 같이 public 키워드가 특성에 의해 달라진다면, 이 키워드를 누가 맘 놓고 사용할까요?

[PrivateWhen(....)]
public ....
3개의 좋아요