반응형
최신 글
시니어 .NET 개발자가 전하는 17가지 핵심 팁
C#2025.03.31 15:19시니어 .NET 개발자가 전하는 17가지 핵심 팁

초보자든, 몇 년의 경험을 쌓은 개발자든 상관없이, 이 글은 실제 개발 경험에서 얻은 교훈과 실수, 그리고 깨달음을 바탕으로 작성되었습니다. 이제부터 .NET 개발자로서 반드시 알아야 할 최고의 팁과 트릭을 공유하겠습니다.1. 비동기 프로그래밍(Async Programming)을 마스터하라.NET을 처음 접했을 때는 모든 API를 동기적으로 작성했습니다. 하지만 트래픽이 증가하자 서비스가 쉽게 무너졌습니다. 이후 비동기 프로그래밍(async/await) 으로 전환하면서 성능과 확장성이 크게 개선되었습니다.📌 핵심 포인트Task.Run을 신중하게 사용하라.async void는 피하라.라이브러리 코드에서는 ConfigureAwait(false)를 활용하라.public async Task FetchDataA..

ChatGPT를 활용하여 10배 빠르게 코딩하는 방법
ChatGPT2025.03.21 10:00ChatGPT를 활용하여 10배 빠르게 코딩하는 방법

많은 개발자들이 ChatGPT를 활용하고 있지만, 단순한 코드 생성에 그치는 경우가 많습니다. 하지만 상위 1% 개발자들은 ChatGPT를 단순한 코드 생성기가 아니라 개발 파트너로 활용하여 복잡한 시스템을 빠르게 구축하고 있습니다. 다음은 ChatGPT를 사용하여 생산성을 극대화하는 방법입니다.1. 명확한 문제 정의가 우선이다단순히 "이 버그를 어떻게 고치죠?" 라고 묻는 것은 비효율적입니다. 대신, 다음 요소를 포함하여 구체적으로 설명하세요.✅ 문제의 맥락 제공: 어떤 기능에서 문제가 발생하는지 설명✅ 목표 명확히 하기: 디버깅, 최적화, 리팩토링 중 어떤 것이 필요한지 구체화✅ 샘플 코드 포함: 문제가 발생한 코드 조각 제공✅ 사용하는 프레임워크 및 라이브러리 명시: Flask, Django, Re..

Docker 이미지 크기를 최대 99%까지 줄이는 방법
Docker2025.03.17 22:26Docker 이미지 크기를 최대 99%까지 줄이는 방법

Docker 이미지는 디스크 공간을 차지하고 배포 속도를 늦추는 문제를 유발할 수 있습니다. 하지만 최상위 DevOps 팀들은 이미 이미지 크기를 최대 99%까지 줄이는 기술을 활용하고 있습니다. 이번 글에서는 이러한 숨겨진 최적화 기법을 공개합니다.🚀 과도한 Docker 이미지가 초래하는 숨은 비용Docker 이미지가 너무 크면 단순한 불편을 넘어 다음과 같은 비용을 발생시킵니다.✅ 시간 낭비: 빌드 및 배포 속도가 느려짐✅ 비용 증가: 저장 공간과 네트워크 대역폭 사용 증가✅ 성능 저하: 애플리케이션 응답 속도 감소📉 1.2GB → 8MB로 최적화: 실제 사례이러한 기술의 힘을 보여주기 위해 실제 사례를 살펴보겠습니다. 초기 Docker 이미지 크기가 1.2GB인 기존 Python 기반 머신 러닝..

.NET 성능 저하 안티 패턴 10가지와 해결 방법
C#2025.03.15 21:59.NET 성능 저하 안티 패턴 10가지와 해결 방법

애플리케이션의 성능 병목 현상은 효율성, 확장성, 사용자 경험을 저하시킬 수 있습니다. 많은 .NET 개발자들은 무의식적으로 성능을 저하시킬 수 있는 안티 패턴을 따르게 됩니다. 이번 글에서는 대표적인 .NET 성능 저하 안티 패턴 10가지를 살펴보고, 그것이 왜 문제인지, 그리고 최적화된 해결 방법을 제시하겠습니다.1. 과도한 객체 할당 및 가비지 컬렉션(GC) 부하문제점:짧은 수명의 객체를 너무 많이 생성하면 빈번한 GC 실행을 유발하여 애플리케이션 성능을 저하시킵니다.해결 방법:재사용 가능한 객체를 위한 객체 풀링(Object Pooling) 사용작은 크기의 불변 객체는 클래스 대신 구조체(Struct) 사용Span 및 Memory 사용하여 할당 줄이기필요할 경우 GC 설정(GCSettings.La..

코딩에 필요한 11개의 놀라운 GitHub 저장소
Git2025.03.12 23:54코딩에 필요한 11개의 놀라운 GitHub 저장소

코딩을 배우는 것은 비교적 쉬운 일입니다. 그러나 더 나은 코드를 작성하는 기술을 마스터하는 것은 훨씬 더 어렵습니다. GitHub를 탐험함으로써 더 깨끗한 코드를 작성하는 방법을 배우고, 고품질 코드가 무엇인지 이해하며, 더 숙련된 개발자가 되기 위한 필수 단계를 배울 수 있습니다.1. notwaldorf/emoji-translate GitHub - notwaldorf/emoji-translate: :books: Translate text to ✨emoji ✨!:books: Translate text to ✨emoji ✨! Contribute to notwaldorf/emoji-translate development by creating an account on GitHub.github.com누가 평범..

인기 글
꼭 사용해봐야 할 11가지 VS Code 테마
꼭 사용해봐야 할 11가지 VS Code 테마
Information
2024.09.24 10:10
VS Code는 개발자들 사이에서 가장 인기 있는 코드 편집기 중 하나입니다. VS Code의 가장 매력적인 측면 중 하나는 테마를 통해 개인화할 수 있다는 점입니다. 테마는 코딩을 더 즐겁게 만들고, 눈의 피로를 줄여주며, 집중력을 향상시킬 수 있습니다. 이 글에서는 여러분이 꼭 사용해 보아야 할 11가지 VS Code 테마를 소개합니다.Tokyo Night설치: 1,678,000+특징:어둡고 밝은 테마눈의 피로를 줄이기 위한 색상 디자인가독성 향상을 위한 뛰어난 구문 강조 표시 Dracula설치: 7,662,000+특징:밝은 색상의 어두운 테마가독성 향상을 위한 생생한 색상멋진 스타일로 많은 개발자에게 사랑받는 테마 Synthwave '84설치: 1,978,100+특징1980년대에서 영감을 받은 레트..
WinUI와 WPF, WinForms, UWP, MFC 비교
WinUI와 WPF, WinForms, UWP, MFC 비교
C#
2024.01.17 16:29
Windows UI 라이브러리(WinUI)는 Windows의 기본 레이어입니다. 여기에는 디자이너와 개발자가 Windows 애플리케이션을 구축하는 데 필요한 컨트롤과 유연한 디자인 시스템이 포함되어 있습니다. WinUI는 MFC(Microsoft Foundation Class Library) 프레임워크, WinForms, WPF(Windows Presentation Foundation) 및 UWP(Universal Windows Platform)와 같은 다양한 그래픽 사용자 인터페이스(GUI) 프레임워크의 최신 버전입니다. Microsoft는 데스크톱 앱(MFC, WinForms, WPF) 및 UWP 앱을 위한 포괄적인 최신 UI 프레임워크를 만들었으며, 새로운 Windows 애플리케이션 및 이전 애플리..
[CentOS] yum을 이용한 rpm 패키지 다운로드
[CentOS] yum을 이용한 rpm 패키지 다운로드
Linux
2022.09.26 21:05
리눅스 환경에서 yum을 이용한 rpm 패키지 다운로드 방법에 대해 알아보겠습니다. yum-downloadonly 패키지 이용 yum-downloadonly 패키지를 설치합니다. $ yum install yum-downloadonly $ yum install [패키지명] -y --downloadonly --downloaddir=[다운로드 경로] 사용 예제입니다. $ yum install dotnet-sdk-5.0 -y --downloadonly --downloaddir=/home/rpm/download yumdownloader 이용 yumdownloader 명령어가 있는 yum-utils 패키지를 설치합니다. $ yum install yum-utils $ yumdownloader --downloadonl..
자동가입 방지문자(SimpleCaptcha) 사용 방법
자동가입 방지문자(SimpleCaptcha) 사용 방법
JavaScript
2023.08.30 13:56
로그인 또는 회원가입 시 자동 등록 방지가 필요할 경우가 있다. 이를 구현하기 위해 여러 가지가 있는데 CATPCHA를 사용하는 방법을 사용하였다.CAPTCHA는 HIP 기술의 일종으로, 어떠한 사용자가 실제 사람인지 컴퓨터 프로그램인지를 구별하기 위해 사용되는 방법이다. 사람은 구별할 수 있지만 컴퓨터는 구별하기 힘들게 의도적으로 비틀거나 덧칠한 그림을 주고 그 그림에 쓰여 있는 내용을 물어보는 방법이 자주 사용된다.위키백과 다운로드CATPCHA를 사용하기 위해선 https://sourceforge.net/projects/simplecaptcha/ 사이트로 이동해서 jar 파일을 다운로드 받는다. jar 파일 추가사용하는 툴이 이클립스 일 경우 jar 파일을 프로젝트에 포함시켜야 한다. 아래 이전 글을..
[java] Geocoder을 이용해 주소를 위도/경도로 변환하기
[java] Geocoder을 이용해 주소를 위도/경도로 변환하기
Java
2022.08.30 09:32
Geocoding 이란 주소를 위도, 경도로 변환해 주는 Google에서 제공하는 API입니다. 링크 : 지오코딩이란? 처음엔 HttpURLConnection 으로 접속해서 InputStreamReader 로 읽은 후 JSON으로 파싱 하게 만들었는데 해외 사이트에 geocoder 라이브러리를 이용하여 받아오는 예제가 있었다. 어쨌든 더 편리하고 깔끔하게 해결되었습니다. Geocoder Maven dependency com.google.code.geocoder-java geocoder-java 0.16 Method public static Float[] findGeoPoint(String location) { if (location == null) return null; // setAddress : 변환..
IT
ChatGPT를 활용하여 10배 빠르게 코딩하는 방법
ChatGPT를 활용하여 10배 빠르게 코딩하는 방법
ChatGPT
2025.03.21 10:00
많은 개발자들이 ChatGPT를 활용하고 있지만, 단순한 코드 생성에 그치는 경우가 많습니다. 하지만 상위 1% 개발자들은 ChatGPT를 단순한 코드 생성기가 아니라 개발 파트너로 활용하여 복잡한 시스템을 빠르게 구축하고 있습니다. 다음은 ChatGPT를 사용하여 생산성을 극대화하는 방법입니다.1. 명확한 문제 정의가 우선이다단순히 "이 버그를 어떻게 고치죠?" 라고 묻는 것은 비효율적입니다. 대신, 다음 요소를 포함하여 구체적으로 설명하세요.✅ 문제의 맥락 제공: 어떤 기능에서 문제가 발생하는지 설명✅ 목표 명확히 하기: 디버깅, 최적화, 리팩토링 중 어떤 것이 필요한지 구체화✅ 샘플 코드 포함: 문제가 발생한 코드 조각 제공✅ 사용하는 프레임워크 및 라이브러리 명시: Flask, Django, Re..
코딩에 필요한 11개의 놀라운 GitHub 저장소
코딩에 필요한 11개의 놀라운 GitHub 저장소
Git
2025.03.12 23:54
코딩을 배우는 것은 비교적 쉬운 일입니다. 그러나 더 나은 코드를 작성하는 기술을 마스터하는 것은 훨씬 더 어렵습니다. GitHub를 탐험함으로써 더 깨끗한 코드를 작성하는 방법을 배우고, 고품질 코드가 무엇인지 이해하며, 더 숙련된 개발자가 되기 위한 필수 단계를 배울 수 있습니다.1. notwaldorf/emoji-translate GitHub - notwaldorf/emoji-translate: :books: Translate text to ✨emoji ✨!:books: Translate text to ✨emoji ✨! Contribute to notwaldorf/emoji-translate development by creating an account on GitHub.github.com누가 평범..
알아두어야 할 마이크로서비스 설계 패턴 TOP 10
알아두어야 할 마이크로서비스 설계 패턴 TOP 10
Information
2025.03.04 14:56
마이크로서비스에 특화된 다양한 설계 패턴을 소개하려고 합니다. 본격적인 패턴 설명에 앞서 마이크로서비스에 대한 기본 개념과 함께 이로 인해 발생하는 도전 과제를 간단히 정리해 보겠습니다.마이크로서비스란 무엇인가?마이크로서비스란 특정 기능에 집중하며 독립적으로 배포 가능한 소규모 컴포넌트를 말합니다. 각 마이크로서비스는 자체 프로세스에서 실행되며, 일반적으로 API를 통해 다른 서비스와 통신합니다. 이 서비스들은 느슨하게 결합(loose coupling)되어 있어 확장성, 개발 속도, 유지보수 측면에서 많은 장점을 제공합니다.모놀리식 애플리케이션 vs 마이크로서비스 애플리케이션마이크로서비스 아키텍처는 모놀리식 애플리케이션과 비교했을 때 다음과 같은 주요 장점을 제공합니다.확장성각 마이크로서비스를 독립적으로..
ChatGPT가 만들어줄 수 있는 7가지 제품
ChatGPT가 만들어줄 수 있는 7가지 제품
ChatGPT
2025.02.04 13:51
ChatGPT는 이제 많은 사람들의 마음을 사로잡은 도구가 되었습니다. 하지만 단순히 대화를 나누는 데 그치지 않고, 창작자들의 완벽한 조력자 역할도 수행할 수 있습니다! 흥미로운 콘텐츠부터 유용한 도구, 창의적인 영감까지 필요한 모든 것을 생산해내며 생산성을 크게 향상시킬 수 있습니다. 오늘은 ChatGPT로 만들 수 있는 7가지 놀라운 제품을 소개하고, 아이디어를 현실로 바꿀 수 있는 실용적인 프롬프트도 함께 제공하겠습니다.1. 매력적인 PLR(Private Label Rights) 가이드디지털 시장에서 제품을 판매하거나 포트폴리오를 강화할 때 PLR 가이드는 시간과 노력을 크게 절약할 수 있는 강력한 도구입니다. PLR 가이드는 한 번 만들어 두면 재사용할 수 있으며, 콘텐츠를 자유롭게 수정하여 새..
개발자를 위한 고급 ChatGPT 프롬프트 기술
개발자를 위한 고급 ChatGPT 프롬프트 기술
ChatGPT
2025.01.13 16:15
안녕하세요, 개발자 여러분! 💫 ChatGPT가 등장한 이후 많은 개발자들이 이를 활용하고 있습니다. 이미 수많은 프롬프트 엔지니어링에 대한 튜토리얼이 쏟아지고 있는데요, 이번 글은 그런 일반적인 가이드가 아닙니다. AI를 일상에서 활용한 개인적인 경험을 공유하려 합니다. AI가 어떻게 저에게 도움을 주고, 왜 매우 유용하다고 생각하는지 설명하겠습니다. 또한, 이 글은 친구 개발자와의 대화에서 영감을 얻었는데요, 그는 AI가 별로 도움이 안 된다고 느꼈지만, 저는 AI를 통해 많은 이점을 얻고 있습니다. 그가 왜 실패했고, 제가 왜 성공했는지도 함께 이야기해 보겠습니다.AI는 인간이 아닙니다!무엇보다 먼저 명심할 것이 있습니다. ChatGPT가 때로는 인간처럼 느껴질 수 있지만, AI는 인간이 아닙니다..
Backend
Spring Boot에서 Lombok을 활용한 효율적인 Java 개발 가이드 🌟
Spring Boot에서 Lombok을 활용한 효율적인 Java 개발 가이드 🌟
Spring
2024.12.02 15:20
Project Lombok은 자바 코드의 반복적인 작업을 줄이고, 생산성을 향상시키는 라이브러리입니다. Lombok은 어노테이션(Annotation)을 통해 getter, setter, constructor 등의 보일러플레이트 코드를 자동으로 생성해줍니다.Lombok을 사용하는 이유코드 간소화: toString(), equals(), hashCode(), getters, setters 등의 일반적인 메서드를 자동으로 생성합니다.가독성 향상: 불필요한 코드가 줄어들어 코드의 의도가 더 명확하게 드러납니다.개발 시간 단축: 작성해야 할 코드가 줄어들어 비즈니스 로직에 집중할 수 있습니다.리팩토링 용이성: 필드 이름을 변경하더라도 getter/setter를 따로 수정할 필요가 없습니다.Lombok의 주요 기능..
Spring Boot에서 API 응답을 구조화하는 가장 좋은 방법
Spring Boot에서 API 응답을 구조화하는 가장 좋은 방법
Spring
2024.11.24 00:29
오늘은 Spring Boot에서 API 응답을 깔끔하고 일관되며 사용하기 쉽게 구조화하는 가장 좋은 방법에 대해 이야기해보려고 합니다. 이 글을 끝까지 읽으면, 당신의 API가 더 깔끔하고 일관성 있으며, 사용자 친화적으로 바뀌는 모습을 볼 수 있을 것입니다.API 응답 구조가 왜 중요할까?먼저, 잘 구조화된 API 응답이 왜 중요한지 살펴봅시다. 일관된 응답 구조는 다음과 같은 장점을 제공합니다:클라이언트 측 에러 처리 개선: 프론트엔드 팀에서 크게 감사할 것입니다.가독성과 유지보수성 향상: 미래의 당신이나 팀이 명확함에 감동할 것입니다.디버깅과 로깅 간소화: 문제를 빠르고 효율적으로 파악할 수 있습니다.좋은 API 응답의 조건잘 구조화된 API 응답은 다음과 같은 특징을 가져야 합니다:일관성: 다양한..
Spring Boot에서 데이터 캐싱 방법
Spring Boot에서 데이터 캐싱 방법
Spring
2024.11.13 22:50
이 글에서는 시스템 실행 중 성능을 향상시키기 위해 데이터를 캐싱하는 몇 가지 기술을 살펴보겠습니다. 일반적으로 계산하는 데 시간이 오래 걸리는 값을 캐싱하면 나중에 액세스할 때 시간을 절약할 수 있습니다. 캐싱되는 값은 자주 변경되지 않거나, 최신 버전이 필요하지 않은 경우가 많습니다.Spring Boot에서 캐싱Spring Boot REST API에서 캐싱을 활성화하는 가장 간단한 방법은 애플리케이션에 설정하고, 엔드포인트에 @Cacheable 어노테이션을 사용하는 것입니다.애플리케이션에서 다음과 같이 @EnableCaching 어노테이션을 추가하기만 하면 됩니다.@SpringBootApplication@EnableCachingpublic class SpringBootCachingApplication..
[Spring Boot] 대용량 데이터 쿼리 REST 엔드포인트 처리
[Spring Boot] 대용량 데이터 쿼리 REST 엔드포인트 처리
Spring
2024.11.10 22:31
이 글에서는 메모리 소비 문제로 인해 기존 방식으로는 구현할 수 없는 REST 엔드포인트의 예를 살펴보겠습니다.시나리오이번 예제에서는 Customer, Order, OrderItem, 그리고 Product로 구성된 간단한 시나리오를 사용합니다.우리의 목표는 보고서를 생성하는 엔드포인트를 만드는 것입니다. 이 엔드포인트는 다음 데이터를 쿼리하고 반환해야 합니다.백만 개의 주문(Orders)500만 개 이상의 주문 항목(OrderItems)기존 구현몇 가지 필드를 가진 DTO를 정의해보겠습니다.@Datapublic class ReportDto { private final Long orderId; private final LocalDate date; private final String customerN..
백엔드(Backend)를 무료로 호스팅할 수 있는 10가지 사이트
백엔드(Backend)를 무료로 호스팅할 수 있는 10가지 사이트
Backend
2024.10.16 22:54
1) Cloudflare WorkersCloudflare Workers는 서버리스 컴퓨팅 플랫폼으로, 개발자가 Cloudflare의 글로벌 네트워크 edge에서 코드를 실행할 수 있게 해줍니다. 이를 통해 사용자에게 더 짧은 지연 시간과 더 빠른 응답 시간을 보장합니다. 무료 버전은 백엔드 코드를 호스팅하고 실행할 수 있는 넉넉한 용량을 제공합니다.2) VercelVercel은 개발자를 위한 플랫폼으로, 추가 구성 없이 웹 앱을 더 빠르게 빌드하고 배포하는 데 필요한 도구, 워크플로우 및 인프라를 제공합니다.3) Google Cloud FunctionsCloud Functions는 Google Cloud Platform(GCP)에서 제공하는 서버리스 컴퓨팅 서비스입니다. 최소한의 구성과 유지 관리로 이벤..
Frontend
React 컴포넌트 작성, 전문가처럼!
React 컴포넌트 작성, 전문가처럼!
React
2024.11.21 11:41
React에서 컴포넌트를 작성하는 것은 단순히 기능을 구현하는 것이 아니라, 잘 작동하면서도 우아하게 기능하는 컴포넌트를 만드는 예술입니다. 오늘은 React 컴포넌트를 전문가처럼 작성하는 방법을 알아보며, 가독성, 재사용성, 효율성에 중점을 두고 설명해드리겠습니다.1. 기본 List 컴포넌트 만들기먼저, 간단한 List 컴포넌트부터 시작해 보겠습니다.// src/components/List.jsimport React from 'react';const List = ({ data }) => { return ( {data.map((item, index) => ( {item} ))} );};export default List;이 컴포넌트는 배열 형태의 data를..
꼭 알아야 할 21가지 HTML 팁
꼭 알아야 할 21가지 HTML 팁
HTML, CSS
2024.10.15 13:02
이 글에서는 코딩 실력을 향상시킬 수 있는 코드 스니펫(Code Snipet)이 포함된 21가지 HTML 팁을 공유하겠습니다.연락처 링크 만들기HTML을 사용하여 클릭 가능한 이메일, 전화 및 SMS 링크를 만듭니다. Send Email Call Us Send SMS 접을 수 있는 콘텐츠 만들기웹 페이지에 접을 수 있는 콘텐츠를 포함하려는 경우 및 태그를 사용할 수 있습니다. 태그는 숨겨진 콘텐츠를 위한 컨테이너를 생성하고, 태그는 클릭 가능한 레이블을 제공하여 해당 콘텐츠의 표시 여부를 전환할 수 있습니다. Click to expand This content can be expanded or collapsed.시맨틱 요소 활용하기웹사이트에 non-semantic 요소보다 시맨틱(semant..
시간을 절약할 수 있는 6가지 CSS Cheat Sheet
시간을 절약할 수 있는 6가지 CSS Cheat Sheet
HTML, CSS
2024.10.14 15:34
매우 유용한 6가지 CSS Cheat Sheet를 알려드리겠습니다. 참고하세요!CSS FlexboxCSS GridCSS PositionsCSS Display ValuesCSS SelectorsCSS :nth-child Selectors
WPF 애플리케이션 최적화: 성능 팁 및 요령
WPF 애플리케이션 최적화: 성능 팁 및 요령
WPF
2024.08.20 12:23
WPF(Windows Presentation Foundation)은 강력한 UI 프레임워크로, 사용자 친화적이고 시각적으로 매력적인 애플리케이션을 만들 수 있는 다양한 도구를 제공합니다. 그러나 복잡한 UI와 방대한 데이터 처리로 인해 성능 문제가 발생할 수 있습니다. 이 글에서는 WPF 애플리케이션의 성능을 최적화하고 응답성을 개선하기 위한 몇 가지 팁과 요령을 다룹니다. 주요 주제는 UI 응답성, 메모리 관리, 비동기 작업 등을 포함합니다.1. UI 응답성 최적화WPF 애플리케이션에서 UI의 응답성을 유지하는 것은 사용자 경험의 핵심입니다. UI 스레드에서 장시간 실행되는 작업은 애플리케이션이 멈추거나 느려지는 것처럼 보이게 할 수 있습니다.비동기 작업 활용무거운 작업을 UI 스레드에서 비동기적으로 ..
WinUI 3 시작하기: 초보자 가이드
WinUI 3 시작하기: 초보자 가이드
WinUI
2024.08.19 22:46
Windows 애플리케이션 개발에 있어 WinUI 3은 현대적인 사용자 인터페이스(UI)를 구축하기 위한 최신 기술로 자리 잡고 있습니다. WinUI 3은 Microsoft의 WinUI(Windows UI Library)의 최신 버전으로, UWP(Universal Windows Platform)와 Win32 애플리케이션에서 모두 사용할 수 있는 통합된 UI 프레임워크입니다. 이 글에서는 WinUI 3을 처음 접하는 초보자를 위해 기본 개념부터 설정, 간단한 UI 구성, 그리고 Project Reunion과의 연계에 대해 설명합니다.WinUI 3란?WinUI 3은 Microsoft가 Windows 애플리케이션 개발을 위해 제공하는 최첨단 UI 프레임워크입니다. WinUI 3은 최신 Windows 디자인 언..
반응형
image