웹 프론트엔드 JS 튜토리얼 C# 기본: JavaScript 개발자 관점에서

C# 기본: JavaScript 개발자 관점에서

Sep 22, 2024 pm 04:30 PM

C# Basic: From a javascript developer perspective

저는 주니어 개발자로서 OOP 패러다임을 주로 사용하는 '구식' 프로그래밍 언어를 배우는 것이 항상 두려웠습니다. 그러나 오늘 나는 그것을 빨아들이고 적어도 시도해 보기로 결정했습니다. 제가 생각하는 것만큼 나쁘지는 않습니다. Javascript에도 적용되는 유사점이 있습니다. 먼저 기본부터 살펴보겠습니다.

본 블로그는 자바스크립트에 대한 이해를 전제로 합니다


기본

데이터 유형

동적 유형 언어인 javascript와 달리 C#은 정적 유형 언어입니다. 변수의 데이터 유형은 컴파일 타임에 알려져 있습니다. 즉, 프로그래머는 변수가 생성될 때 변수의 데이터 유형을 지정해야 합니다. 선언합니다.

int: number (32bit)
decimal: number (128bit)
string: string
bool: Boolean
list[]: Array
dictionary{}: Object
로그인 후 복사
-------------- Declaration ----------------
int myInt = 2147483647;
decimal myDecimal = 0.751m; // The m indicates it is a decimal
string myString = "Hello World"; // Notice the double-quotes
bool myBool = true;
로그인 후 복사

목록/배열

참고: 1, 2번 방법을 사용하는 경우 길이를 추가하거나 연장할 수 없습니다
List 메소드 1 선언 및 할당

string[] myGroceryArray = new string[2]; // 2 is the length
myGroceryArray[0] = "Guacamole";
로그인 후 복사

목록 방법 2 선언 및 할당

string[] mySecondGroceryArray = { "Apples", "Eggs" };
로그인 후 복사

목록 방법 3 선언 및 할당

List<string> myGroceryList = new List<string>() { "Milk", "Cheese" };
Console.WriteLine(myGroceryList[0]); //"Milk"
myGroceryList.Add("Oranges"); //Push new item to array
로그인 후 복사

다차원 목록 선언 및 할당

','의 숫자에 따라 크기가 결정됩니다

string[,] myTwoDimensionalArray = new string[,] {
    { "Apples", "Eggs" },
    { "Milk", "Cheese" }
};
로그인 후 복사

IEnumerable/배열

열거 또는 반복에 특별히 사용되는 배열입니다.

"목록과 무엇이 다른가요?"라고 물으실 수도 있습니다. 대답은 다음과 같습니다.

IEnumerable과 List의 한 가지 중요한 차이점(하나는 인터페이스이고 다른 하나는 구체적인 클래스임)은 IEnumerable은 읽기 전용이고 List는 그렇지 않다는 것입니다.

List<string> myGroceryList = new List<string>() { "Milk", "Cheese" };

IEnumerable<string> myGroceryIEnumerable =  myGroceryList;
로그인 후 복사

사전/객체

Dictionary<string, string[]> myGroceryDictionary = new Dictionary<string, string[]>(){
    {"Dairy", new string[]{"Cheese", "Milk", "Eggs"}}
};

Console.WriteLine(myGroceryDictionary["Dairy"][2]);
로그인 후 복사

연산자

C#의 연산자는 자바스크립트와 매우 유사하게 동작하므로 여기서는 설명하지 않겠습니다

조건부

//Logic gate
  //There's no === in C#
myInt == mySecondInt 
myInt != mySecondInt 

myInt >= mySecondInt
myInt > mySecondInt
myInt <= mySecondInt 
myInt < mySecondInt 

// If Else
if () {}
else if () {}
else () {}

// Switch
switch (number)
{
    case 1:
        Console.WriteLine("lala");
        break;
    default:
        Console.WriteLine("default");
        break;
}
로그인 후 복사

루프

? foreach를 사용하면 일반 for 루프보다 훨씬 빠릅니다

int[] intArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

int totalValue = 0;

for (int i = 0; i < intArr.Length; i++)
{
    totalValue += intArr[i];
}

int forEachValue = 0;

foreach (int num in intArr)
{
    forEachValue += num;
}
로그인 후 복사

방법

C#은 무엇보다도 OOP 지향 언어입니다.

namespace HelloWorld
{
    internal class Program
    {
        static void Main()
        {
            int[] numArr = [1, 2, 3, 4, 5];
            int totalSum = GetSum(numArr);
        }

        static private int GetSum(int[] numArr)
        {
            int totalValue = 0;
            foreach (var item in numArr)
            {
                totalValue += item;
            }
            return totalValue;
        }
    }
}
로그인 후 복사

네임스페이스 및 모델 선언

네임스페이스는 일반적으로 수업을 구성하는 등 조직 목적으로 사용됩니다.

namespace HelloWorld.Models
{
    public class Computer
    {
        public string Motherboard { get; set; } = "";
        public int CPUCores { get; set; }
        public bool HasWIfi { get; set; }
        public bool HasLTE { get; set; }
        public DateTime ReleaseDate { get; set; }
        public decimal Price { get; set; }
        public string VideoCard { get; set; } = "";
    };
}
로그인 후 복사

C# 10부터는 네임스페이스를 이와 같이 선언할 수도 있습니다

namespace SampleNamespace;

class AnotherSampleClass
{
    public void AnotherSampleMethod()
    {
        System.Console.WriteLine(
            "SampleMethod inside SampleNamespace");
    }
}
로그인 후 복사

네임스페이스 가져오기

using HelloWorld.Models;
로그인 후 복사

위 내용은 C# 기본: JavaScript 개발자 관점에서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

JavaScript로 문자열 문자를 교체하십시오 JavaScript로 문자열 문자를 교체하십시오 Mar 11, 2025 am 12:07 AM

JavaScript로 문자열 문자를 교체하십시오

jQuery 날짜가 유효한지 확인하십시오 jQuery 날짜가 유효한지 확인하십시오 Mar 01, 2025 am 08:51 AM

jQuery 날짜가 유효한지 확인하십시오

jQuery는 요소 패딩/마진을 얻습니다 jQuery는 요소 패딩/마진을 얻습니다 Mar 01, 2025 am 08:53 AM

jQuery는 요소 패딩/마진을 얻습니다

10 JQuery Accordions 탭 10 JQuery Accordions 탭 Mar 01, 2025 am 01:34 AM

10 JQuery Accordions 탭

10 JQuery 플러그인을 확인할 가치가 있습니다 10 JQuery 플러그인을 확인할 가치가 있습니다 Mar 01, 2025 am 01:29 AM

10 JQuery 플러그인을 확인할 가치가 있습니다

노드 및 HTTP 콘솔로 HTTP 디버깅 노드 및 HTTP 콘솔로 HTTP 디버깅 Mar 01, 2025 am 01:37 AM

노드 및 HTTP 콘솔로 HTTP 디버깅

사용자 정의 Google 검색 API 설정 자습서 사용자 정의 Google 검색 API 설정 자습서 Mar 04, 2025 am 01:06 AM

사용자 정의 Google 검색 API 설정 자습서

jQuery div에 스크롤 바를 추가합니다 jQuery div에 스크롤 바를 추가합니다 Mar 01, 2025 am 01:30 AM

jQuery div에 스크롤 바를 추가합니다

See all articles