.NET/C#

    [C#] 흐름제어

    1. 분기문 (selection statements) ● if if는 분기문이라 하여 말 그대로 Boolean 식을 평가한 후 처리를 분기하는 제어문입니다. if (Boolean식) { } else if (Boolean식) { } else { } if의 Boolean식이 True라면 중괄호({})안의 코드를 실행하게 됩니다. else if나 else는 선택적이며 if의 결과가 false인 경우 실행될 수 있습니다. 이때 else if문은 다른 if문에서 의존하지 않는 새로운 Boolean 식을 평가할 수 있습니다. 또한 if문은 필요하다면 여러 개로 중첩될 수 있습니다. if문을 비롯한 다른 제어문이나 반복문에도 해당될 수 있는 내용으로 실행되는 구문의 영역이 한 줄에 불과하다면 중괄호({})는 생략될 ..

    [C#] 연산자

    ● 산술 연산자 연산자는 변수나 실제값에 해당하는 피연산자를 더하거나 곱하는 등의 연산을 수행하며 일반적으로 다른 변수에 할당 가능한 또 다른 값을 반환합니다. 연산자 중 이항 연산자는 연산에 필요한 피연산자가 최소 2개 이상은 되어야 하는 연산자임을 의미하며 int i = 10; int j = 20; int result = i + j; 가(+), 감(-), 승(*), 제(/) 연산을 위해서 가장 많이 사용되는 연산자입니다. 참고로 % 는 나머지를 의미합니다. int i = 10; int j = 20; int result = i % j; 단항 연산자는 단 하나의 피연산자를 필요로 합니다. int i = 10; int result = ++i; 단항 연산자는 대표적으로 변수의 값을 1만큼 증가시키는 ++와 ..

    [C#] C# 개요 - 3. 기타 Console Application 관련

    [C#] C# 개요 - 3. 기타 Console Application 관련

    4. Console Application 추가사항 Console형식의 App은 화려하고 편리한 GUI를 지원하지는 않지만 간단하게 특정 기능을 테스트하고 코드를 학습하기 위한 좋은 선택이 될 수 있으며 이미 이전의 예제에서 Console프로젝트를 생성해 사용해 왔습니다. 하지만 때로는 Console상에서 어떤 결과를 출력할 때 다소 불편한 상황이 전개될 수 있는데 이를 위해 몇 가지 보완할 수 있는 방법을 알아보고자 합니다. ● 번호가 매겨진 선택적 매개변수의 사용 (numbered positional arguments) 'numbered positional arguments'는 Write()나 WriteLine() 메서드를 통해 문자열을 출력하는 경우 특정 포맷으로 형식화할 수 있는 방법 중에 하나가 ..

    [C#] C# 개요 - 2. 변수

    3. 변수 Application은 기본적으로 필요한 Data를 Memory에서 다루기 위해 '변수'를 사용합니다. 데이터는 파일이나 DB혹은 외부의 사용자 입력 등 다양한 곳에서 들어올 수 있지만 이렇게 입력된 데이터를 처리하기 위해서는 어딘가에 해당 데이터를 저장해야 하고 이러한 수단에서 '변수'를 활용하는 것입니다. 다만 '변수'는 Application이 종료되면 Memory에서 제거되므로 이를 지속적으로 저장하기 위해서 파일이나 DB 등을 별도로 이용할 수 있습니다. '변수'는 사용하고자 하는 type에 따라 Memory를 차지하는 크기가 달라집니다. 가능한 한 작은 type을 사용하면 그만큼 적은 Memory를 할당받게 되지만 그렇다고 해서 작은 크기의 '변수'가 그렇지 않은 '변수'보다 항상 처..

    [C#] C# 개요 - 1. C#의 특징및 개요

    [C#] C# 개요 - 1. C#의 특징및 개요

    1. C#언어의 버전별 특징 ● 1.0 객체지향 언어에 대한 모든 특징을 담고 2002년에 릴리즈 되었습니다. ● 2.0 2005년에 릴리즈 되었으며 generic을 통한 강력한 데이터 타입이 사용되기 시작했습니다. 이는 코드에 대한 성능의 증가와 함께 타입에러를 감소시키는 역활을 하였습니다. 또한 null 가능한 값형식이 추가되었습니다. ● 3.0 2007년에 릴리즈 되었으며 익명타입과 람다식 그리고 LINQ(Language INtegrated Queries)사용을 통한 서술적 코딩이 가능해 졌습니다. 또한 타입추론을 통한 암시적 지역변수 사용이 가능해졌습니다. ● 4.0 2010년에 릴리즈 되었으며 F#, Python과 같은 동적언어와의 상호운용성이 향상되었습니다. 이로인해 동적타입이 사용되기 시작했..

    [C#] C#과 .NET6 시작하기 - 3. Console App 만들어 보기

    [C#] C#과 .NET6 시작하기 - 3. Console App 만들어 보기

    3. Console App 만들어 보기 (Visual Studio 2022) 지금부터 만들어볼 환경은 Windows상에서 Visual Studio 2022를 사용하는 것으로 간단한 Console App을 만드는 과정을 담고 있습니다. Visual Studio 2022는 설루션(Solution)이라고 하는 다수의 Project를 관리할 수 있는 개념을 가지고 있으므로 Project를 생성하면 자동으로 하나의 설루션 안에 Project를 담아두는 구조로 생성될 것입니다. Visual Studio 2022를 실행하여 처음 나오는 Create a new project화면에서 C#언어의 Console App template을 선택합니다. Project설정 화면에서 Project name을 설정합니다. 프로젝트가 ..

    [C#] C#과 .NET6 시작하기 - 2. .NET 이해하기

    [C#] C#과 .NET6 시작하기 - 2. .NET 이해하기

    2. .NET .NET과 연관되는 .NET 6, .NET Core, .NET Framework, Xamarin 등은 서로 밀접하게 연관되어 있으며 어느 부분에서는 서로 간에 중복성을 가지기도 합니다. 이들 연관성이나 각각의 특징에 관해 알아보려면 각각에 대한 개별적인 콘셉트를 이해할 필요가 있습니다. ● .NET Framework .NET Framework는 CLR(Common Language Runtime)을 포함하는 하나의 개발 플랫폼으로서 코드의 실행을 관리하고 Application 개발에 필요한 여러 가지 클래스 라이브러리를 제공하기도 합니다. 마이크로소프트는 원래 .NET Framework를 Cross-platform으로 설계하기를 시도했으나 결과적으로 윈도 전용이 되었으며 4.5.2버전 부터는..

    [C#] C#과 .NET6 시작하기 - 1. 개발환경설정

    1. 개발환경설정 대체적으로 C# 프로그래밍을 시작하기 위해서 사용할 수 있는 도구로는 다음과 같은 것들이 있습니다. Visual Studio 2022 (Windows or Mac) Visual Studio Code (Cross Flatform) GitHub Codespaces 이외 기타 JetBrains사의 Rider와 같은 것들도 도구도 사용할 수 있습니다. ● Vsiaul Studio Code 크로스 플랫폼이며 가벼운 편집기로 Visual Studio Code는 훌륭한 선택이 될 수 있습니다. Microsoft 제품답게 Windows는 물론이고 Red Hat이나 Ubuntu와 같은 다양한 Linux배포판, Mac OS에서도 사용이 가능합니다. 심지어 ARM 프로세서도 지원하므로 Raspberry P..