C# - 닷넷API

2025. 6. 17. 17:57Programming Language/C#

반응형

닷넷API

닷넷 API(.NET API)는 .NET 플랫폼에서 제공하는 클래스, 메서드, 인터페이스 등의 집합으로 애플리케이션을 만들 때 사용하는 표준 라이브러리라고 이해하면 된다

닷넷 API는 크고 범용적이기에 다양한 환경에서 사용 가능하도록 만들어져 있다.

 

마이크로 소프트에서는 이 닷넷API에 대한 정보를 제공하는 문서를 제공한다.

https://learn.microsoft.com/en-us/dotnet/api/

 

.NET API browser

Explore Microsoft's comprehensive .NET API browser. Your ultimate resource for all .NET-based APIs. Start your search now.

learn.microsoft.com

 

이제 이 닷넷API에서 제공하는 클래스 및 여러 기능에 대해서 알아보도록 하자.

 

Math 클래스

Math 클래스는 .NET API의 System 네임스페이스에 포함수학 계산용 유틸리티 클래스로 수학적인 연산을 편하게 제공해주며 대부분 정적 메서드로 구성되어 있다.

 

주된 메서드 및 상수는 아래와 같다.

 

1. 상수

System.Math.PI 원주율 π ≈ 3.14159265
System.Math.E 자연상수 e ≈ 2.71828182

 

 

2. 주요 메서드

Abs(x) 절댓값
Ceiling(x) 올림(소수점 위 정수)
Floor(x) 내림
Round(x) 반올림
Pow(x, y) 제곱
Sqrt(x) 제곱근
Max( x , y ) 최대값
Min( x , y )  최소값
Truncate(x) 소수점 이하 버림

 

1) Abs(x) : 절댓값을 반환한다

 

2) Ceiling(x) : 정수까지 올림한다 

 

3)  Floor(x) : 정수까지 내림한다

 

4) Round(x) : 정수까지 반올림한다

 

5) Pow(x, y) : 제곱, x를 y번 제곱한다

 

6) Sqrt(x) : 제곱근(n을 제곱했을때 x가 나오는 n)

 

7) Max(x) : 최대값

 

8) Min(x) : 최소값

 

9) Truncate : 소수점 이하 버림

 

클래스명을 생략하는 Using

using System을 썼던것 처럼 Math도 using을 사용해서 생략이 가능하다.

물론 다른 점이 있다.

Math클래스의 경우는 정적 클래스이기 때문에 인스턴스화가 불가능하기에 모든 메서드가 static으로 구현되어 있다.

그래서 사용하기 위해서는 무조건 Math라는 클래스명을 붙여줘야만 함수 및 상수의 사용이 가능하다.

그래서 using을 사용할때도 static키워드를 같이 붙인 상태로 사용해줘야한다.

using System;
using static System.Math;   // 정적클래스
using stitc System.Console; // 정적클래스

물론 Math에서만 해당하는 내용이 아니라 모든 정적 클래스를 using을 사용해서 클래스명을 생략하기위해서는 static 키워드를 붙여줘야 한다.

보통 Math의 함수를 자주 사용하기에 작성이 번거로울 때 사용하지만 이렇게 사용하면 가독성이 떨어져서 보기가 힘들다는 점을 알아야한다.

왠만하면 지향하는게 좋을것 같다.

 

nameof 연산자

nameof 연산자는 겉보기엔 함수같이 생겼으나 실제는 함수가 아니라 컴파일 타임 연산자이다

nameof는 6.0 부터 도입된 컴파일 타임 연산자로 변수, 메서드, 클래스, 속성등의 이름을 반환한다.

nameof가 함수가 아니라 컴파일 타임 연산자라고 불리우는 이유보통의 함수들은 런타임 시점에 실행되는데 nameof는 컴파일 타임에 이미 문자열로 치환되기에 실행 시점에는 존재하지도 않기 때문이다.

 

 

 

이것 말고도 닷넷API는 너무 다양하고 활용도 있는 API들이 많이 존재한다.

만약 추가적으로 나중에 개발을 하거나 공부를 할때는 이런 API를 사용하면서 공부해두는 것이 좋다.

API는 여기까지....

 

반응형

'Programming Language > C#' 카테고리의 다른 글

C# - 구조체2  (0) 2025.06.21
C# - 구조체 1  (0) 2025.06.17
C# - 함수  (1) 2025.06.15
C# - 배열  (0) 2025.06.15
C# - 제어문  (0) 2025.06.15