MSM8994의 화룡점정 블로그
지난 글(보려면 클릭)에서 자바에서 어떤 멤버변수의 Getter 와 Setter를 만드는 방법을 알아봤습니다. 그런데 이건 그냥 프로그래머가 메소드를 만들어 쓰는 방식이라 단순 대입과는 다르게 코드 내에서 구별해내기 힘들지도 모르겠습니다. C#의 '속성'이런 기법을 언어 자체에서 지원하는게 있습니다 바로 C#입니다. 속성(property)라는 개념으로 지원되며 간단히 Getter와 Setter를 만들 수 있습니다. C#에서 속성은 첫글자를 대문자로 씁니다. public double Average { get; private set; } // 학생의 점수 평균학생의 점수 평균를 담는 속성을 만들었습니다. Setter가 private로 선언돼 다른 클래스가 이 값을 수정하려는 의도로부터 보호받고 있습니다. 그..
클래스에 소속될 멤버 변수를 선언하실 때 무심코 아래와 같이 만드는 경우가 있을 겁니다. public int score = -1; // 학생의 점수를 기억 (-1: 입력되지 않음) 그리고 접근할 때 아래처럼 하시겠죠. student[i].score = inputScore; // 가장 간단히 멤버 변수 값을 바꾸는 법 이렇게 하는 것이 가장 간단하기 때문일겁니다. 그러면 입력될 점수에 유효범위가 필요할 때는 어떻게 하면 좋을까요?if(0
지난 주말 캐나다 몬트리올에서 열린 IETF 해커톤에 참여한 애플, 클라우드 플레어, 패스틀리, 모질라 출신 엔지니어가 TLS 1.3에도 들어가지 못한 SNI 암호화 확장 구현을 위해 힘썼습니다. HTTPS 통신에서 서버와 통신을 하는 과정에서 서버를 식별하는데 필요하지만 암호화 되지 않은채 전송되는 서버 이름 특정(SNI)이 무엇인지는 지난 글에서 잘 소개되어 있습니다. 보통 도메인은 서버 하나의 IP에 연결해 두는데, 그 경우 브라우저가 어느 서비스로 들어오려는건지 서버에선 판단할 수 없습니다. 그래서 SNI필드라는 TLS 확장을 사용해 접속할 서비스가 여기라고 초장부터 선언하는 것입니다. SNI 차단이 뭐야? TLS 1.3은 해결책이 될 수 있을까.http://msm8994.tistory.com/3..