본문 바로가기
반응형

65

Effective C# - Item2 const보다는 readonly가 좋다. Item2 const보다는 readonly가 좋다. 컴파일타임 상수(const) 상수의 값은 이미 코드를 컴파일할 때 결정된다. 따라서 런타임에 값이 변경되지 않고 상수로 사용된다. 그러므로 상수 값을 사용할 때 추가적인 평가나 계산이 필요하지 않다. 이는 주로 attribute의 매개변수, switch/casw문의 레이블, enum정의시 사용하는 상수 등에 사용된다. // Millennium을 사용하는 모든 곳에서 컴파일러난 이를 200으로 대체한다. cosnt int Millennium = 200; 값이 변경되었을 경우 응용 프로그램 전체를 다시 빌드해야한다. 변경된 const값은 새로운 컴파일 시점에 반영되기 떄문이다. 이는 변경사항이 생겼을때 소스 코드에서 값을 직접 수정하고 다시 컴파일 한 후 .. 2023. 10. 27.
Effective C# - Item1 지역변수를 선언할 때는 var를 사용하는 것이 낫다. 0. 들어가기 앞서코딩테스트를 준비하면서 C#에 대해 더 자세히 알고 싶고 효율적으로 코드를 짜고 싶다는 욕심이 생겼다. 어떻게 공부해야할까 하다가 찾아보던 중 Effective 시리즈 책을 알게 되었다. 더 나은 개발자로 성장해보자1. Item1 지역변수를 선언할 때는 var를 사용하는 것이 낫다.01 지역변수의 타입을 암시적으로 선언하는 것이 좋은 이유C# 언어가 익명 타입(anonymouse type)을 지원하기 때문이다. var를 사용하게 되면 타입 추론이 사용된다. 이는 정적 타이핑(static typing), 동적 타이핑(dynamic typing)과 별개의 개념이다. 타입 추론을 사용게하되면 할당 연산자의 오른쪽 값으로부터 왼쪽 변수의 타입을 추론하여 결정하며 여전히 컴파일 시간에 변수의 정.. 2023. 10. 24.
컴퓨터 구조 - 정보단위(비트,바이트,워드,이진수,십육진수) 정보 단위 1. 비트(bit) 컴퓨터가 이해하는 가장 작은 정보 단위이다. 0또는 1의 값을 나타내며 n비트로 2ⁿ가지의 정보 표현 가능하다. 프로그램, 데이터 및 파일은 이진 비트의 조합으로 구성된다. 2. 바이트(Byte) 8비트로 이루어진 정보 단위이다. 컴퓨터 시스템에서 문자, 숫자, 이미지, 음악 및 기타 데이터를 저장하고 전송하는데 사용된다. 3. 워드(word) 워드는 CPU가 한 번에 처리할 수 있는 데이터 크기를 의미한다. CPU의 워드 크기는 해당 CPU가 한 번에 처리할 수 있는 비트 수를 나타낸다. 예를 들어, 만약 CPU가 한 번에 16비트를 처리할 수 있다면 1워드는 16비트가 되고, 32비트를 처리할 수 있다면 1워드는 32비트가 된다. 워드 크기는 CPU마다 다르지만, 현대 .. 2023. 10. 21.
컴퓨터구조 - 컴퓨터구조의 큰 그림(CPU, 메모리,보조기억장치,입출력장치) 컴퓨터 구조 지식은 크게 컴퓨터가 이해하는 정보와 컴퓨터의 네가지 핵심 부품으로 나눠질 수 있다. 컴퓨터가 이해하는 정보 컴퓨터는 0과 1로 표현된 정보만을 이해한다. 그리고 0과 1로 표현되는 정보에는 크게 두 종류가 있는데 바로 데이터와 명령어이다. 01 데이터(Data) 데이터는 컴퓨터와 상호 작용하고 저장하는 정보를 나타낸다. 이는 숫자, 문자, 이미지, 동영상 등과 같은 정적인 정보를 포함한다. 이러한 정보는 0과 1로 표현되며 이진(binary) 표현을 통해 컴퓨터에 저장 및 처리된다. 02 명령어(Instructions) 명령어는 컴퓨터의 동작을 지시하는 정보이다. 명령어는 컴퓨터의 중앙 처리 장치(CPU)에서 실행되며, 프로그램을 구성하는 기본 요소이. 명령어는 다양한 동작을 수행하도록 설.. 2023. 10. 18.
컴퓨터구조 - 컴퓨터 구조를 배워야 하는 이유 프로그래머에게 프로그래밍 언어의 문법을 이해하는 것은 중요하다. 하지만 그전에 컴퓨터 구조를 이해하는 것이 중요하다. 컴퓨터 구조를 알게된다면 다음과 같은 것이 향상시킬 수 있다. 1. 문제 해결 능력 프로그래머는 같은 코드를 작성하더라도 다양한 상황에서 발생하는 문제를 해결할 수 있어야 한다. 이는 코드상의 문법적인 오류 뿐만 아니라 논리적인 오류, 실행 시간 오류 등을 포함된다. 이는 개발자는 문법뿐만 아니라 문제 해결 능력을 키우고 컴퓨터 내부를 이해하여 문제를 심도 있게 생각할 수 있어야 한다. 따라서 프로그래머는 컴퓨터를 미지의 대상에서 분석의 대상으로 보야아 한다. 이는 컴퓨터의 작동 원리와 운영체제를 이해하고 코드가 어떻게 실행되는지를 알야한다는 의미이다. 2. 성능, 용량, 비용을 고려 단.. 2023. 10. 18.
반응형