본문 바로가기

Study Memos

(206)
메일 전송 프로토콜 Feat. SMTP, POP3, IMAP SMTP (Simple Mail Tranfer Protocol) ㆍSender -> Mail Server, Mail Server -> Mail Server 로 메일을 보낼 때 사용하는 프로토콜. ㆍRFC2821 규약에 따라 TCP 포트 번호는 25번을 사용한다. SMTP PORT ㆍSMTP 포트들은 역사적으로 크게 3가지 번호를 가져왔다. PORT 25 ㆍ1982년 RFC 821 에서 처음 제안되었다. 이후 30년이 넘는 세월동안 25번 포트는 여전히 기본적인 SMTP 포트로 사용되고 있다. 하지만 오래 전 할당된 포트답게 보안 면에서 다른 포트들보다 취약하다. PORT 465 ㆍ465번 포트는 위의 RFC 821 규약을 보장하는 IETF(Internet Engineering Task Force) 라는 ..
Winform vs WPF (라 쓰고 WPF 짱 이라고 읽는다) 인터넷 서칭을 통해서 정리해본 Winform vs WPF 사실 거의 WPF로 마음이 기운다. winform 1. 폐기된 마차 2. 많은 문서 (WPF도 이젠 어느정도 쌓임...) 3. 배우기 쉽다 4. .NET 1.0 부터 지원 5. 버튼, 라벨등이 모두 Windows의 Window 객체 WPF 1. 훨씬 유연하다. (바인딩 메커니즘을 이용한 MVVM패턴 덕분) 유연성이 뛰어나 새 컨트롤 작성 없이 할 수 있는 것의 폭이 넓음 2. 럭셔리카 3. 생산성이 훨씬 높다. 4. 개발자와 디자이너가 시각적으로 뛰어나며 차별화된 사용자 환경을 만들 수 있게 해줌 5. 태그 언어인 XAML을 사용하므로 디자이너가 훨씬 더 쉽게 응용 프로그램을 빌드할 수 있음 => GUI를 만들거나 편집하기 쉽게 해줌 6. 레이아웃..
Mosh의 Udemy C# 강의를 듣고나서 끄적이는 메모 [ 초급 ] 1. Class 들을 묶은 개념이 Namespace이다. Namespace 들을 묶은 개념이 Assembly이다. Assembly는 DLL 형태나 EXE 형태로 존재한다. Assemly 들을 묶은 개념이 Application이다. 2. C#에서 코딩할 때 나오는 byte, short, int, long, float, double, decimal, char, bool 키워드들은 C#에서 사용하는 primitive type이다. Byte, Int16, Int32, Int64, Single, Double, Decimal, Char, Boolean 키워드들은 .NET 언어군(C#, F#, VB ..)에서 사용하는 .NET의 primitive type이다. 3. C#에서 "3.4" 와 같이 실수형 값..
#59.Unchecked VS OverflowException 체크 설정이 되어 있을 때, unchecked 키워드를 쓰면 해당 코드는 OVerflowException 체크를 하지 않고 그냥 wrap(비트 절삭) 한다.
#58. OverflowException Visual Studio 설정을 변경하면 check 키워드 없이도 OverflowException 을 catch 할 수 있다. 만일 checked 나 VS 설정이 안되어있으면 그냥 상위 비트들을 버린 채로(값이 유실된 채로) 연산된다. VS 설정 경로 : Build > Advanced > Advanced Build Settings > Check For Arithmetic overflow / underflow
#56. Convert explicit convert -> 소수점 아래 버림 System.Convert -> 반올림 또는 반내림 -> 만일 딱 중간이면, 가까운 짝수를 리턴 ex) Convert.ToInt32(8.5f) -> 8 Convert.ToInt32(9.5f) ->10
#53. Modulo a % b 에서 a나 b가 음수이면, 결과값은 a의 부호와 동일한 부호를 가진다. ex) a > 0 이면 결과값은 1, a < 0 이면 결과값은 -1
#51. float 소수점이 있는 수들은 기본적으로 double 이므로 float 형 변수에 소수점이 있는 수들을 대입하려면 f suffix가 필요하다. 없으면 dobule -> float 묵시적 변환을 시도함으로써 compile error 가 발생한다