C#

    [C#] 문자열 String & StringBuilder

    String 클래스 C#에서 문자열(string)은 큰 따옴표 ("")를 사용하여 표현하고, 단일 문자(char)는 작은따옴표(')를 사용하여 표현한다. 키워드 string은 .NET의 System.String 클래스의 별칭이므로, string 타입 데이터에서 System.String 클래스의 모든 메서드와 속성(Property)를 사용할 수 있다. ex) Substring() 메서드, Length 속성 using System; namespace CobookApplication { class Program { static void Main(string[] args) { // 문자열(string) 변수 string s1 = "Cheeze"; string s2 = "Ramyun"; // 문자(char) 변수..

    [C#] 상수 const & readonly

    의미 상수는 값을 변경할 수 없는 메모리 공간이다. 상수와 변수의 차이 변수는 프로그램 중간에 값을 변경할 수 있지만, 상수는 초기에 정한 값을 중간에 변경할 수 없다. 선언 방식 C# 상수는 키워드 const 또는 readonly를 사용하여 정의한다. 변수와 비슷하게 선언하는데, 앞에 const 또는 readonly 키워드를 붙여 상수임을 나타낸다. 초기화 이후에 선언된 상수 값을 변경할 수 없다. const 선언과 동시에 값을 할당하여 초기화해야 한다. 상수만 선언하고 나중에 값을 넣을 수 없다. 내장 자료형 (정수형, 실수형, Enum, String)에 대해서만 사용할 수 있다. 메모리 할당 영역은 Stack Memory이다. Heap Memory에 저장하는 readonly 보다 더 빠르게 접근할 ..

    [C#] 네이밍 룰

    기본적으로 모든 C# 변수의 이름은 대소문자를 구별한다는 것을 알아야 한다. 하기의 규칙은 관례적으로 주로 사용하는 표준이지만 회사 혹은 팀마다 다른 방식으로 사용할 수 있다. 모듈 단위 및 팀 단위 개발을 진행할 때 가장 기초적이고 중요한 요소가 네이밍 룰이다. 1. 헝가리안 표기법 (Hungarian Case) 변수의 자료형을 변수명의 접두사로 붙이는 방식. 멤버 변수에는 m_을 접두사로 사용한다. 그러나 닷넷 코딩 표준에서 헝가리안 표기법은 추천하지 않는다. 모든 변수에는 카멜 표기법을 사용하고, 데이터 타입보다 변수가 담는 내용을 표현하는 것이 중요하다. int intNum; string strName; int m_Age; 2. 카멜 표기법 (Camel Case) 단어와 단어 사이를 대문자로 구분..

    [C#] 지역 변수, 전역 변수

    C# 변수는 지역 변수와 전역 변수 두 가지 방법으로 선언될 수 있다. 지역 변수 메서드 안에서 선언되고, 해당 메서드 내에서만 사용되며, 메서드 호출이 끝나면 소멸한다. 전역 변수보다 메모리 관리에 유용하다. 함수 밖에서는 불러올 수 없다. 각기 다른 함수 내에서 같은 이름의 지역 변수를 만들어도 무관하다. 기본 값을 할당받지 못하기 때문에 반드시 사용 전에 값을 할당해야 한다. 전역 변수 (Field, 필드) 클래스의 객체가 살아있는 한 존속한다. 다른 메서드들에서 필드를 참조할 수 있다. 만약 필드가 정적 필드(static field)라면 클래스 타입이 처음으로 런타임에 의해 로드될 때 해당 타입 객체에 생성되어 프로그램이 종료될 때까지 유지된다. 값을 할당하지 않으면, 해당 타입의 기본 값이 자동..

    [C#] 2. C# 참조 타입과 값 타입, 박싱과 언박싱

    1. Object C#에 존재하는 모든 타입의 기본 클래스는 Object로 모든 값 타입과 참조 타입이 Object 클래스를 상속받고 있다. Object 클래스에는 필드는 존재하지 않고, Equals(), GetType(), ToString() 등의 메서드들이 존재한다. 2. 참조 타입과 값 타입 (Reference Type & Value Type) CLR은 참조 타입과 값 타입이라는 두 종류의 타입을 지원한다. 참조 타입은 값을 사용자가 직접 관리하는 힙 영역에 할당하고, 메모리의 주소는 변수명과 함께 스택에 할당한다. 참조 타입을 사용할 때마다 메모리의 할당이 발생하기 때문에 모든 타입이 참조 타입이라면 엄청난 성능 저하가 있을 것이다. 따라서 성능 향상을 목적으로 단순하고 자주 사용되는 타입들을 경..

    [C#] 1. C# 기초

    1. C# C#은 마이크로소프트에서 개발한 객체 지향 프로그래밍 언어로, C++과 JAVA와 비주얼 베이직(VB)의 장점을 합쳐 C#을 만들었습니다. C++과 JAVA의 문법과 비슷한 문법을 가지고 있습니다. 2. C#의 장점 첫 째, 뛰어난 생산성 수 많은 라이브러리와 IDE(통합 개발 환경)가 손쉽게 코딩을 할 수 있게 도와줍니다. ※ IDE(Integrated Development Environment)(통합 개발 환경) : 코딩, 디버그, 컴파일, 배포 등 프로그램 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공하는 소프트웨어를 말한다. 둘 째, 엄격한 문법 사소한 실수까지 컴파일 에러를 띄워주기 때문에 사소한 에러까지 방지할 수 있습니다. 셋 째, 완벽한 프로그래밍 C#에..