Search results

이제 C Go(Golang)처럼 간결하고 강력한 네이티브 바이너리를 만드는 시대가 되었습니다. 복잡한 빌드 스크립트나 환경 설정은 더 이상 필요 없습니다. 제가 만든 SDK를 사용하면, 단 한 줄로 모든 준비가 끝납니다.

dotnet publish nativeapp.cs

이 명령어 하나가 불필요한 세레머니를 싹 걷어냅니다. 심지어 DNNE를 내장하여 정적 라이브러리(Static Library)를 빌드하고, C/C++ 연동에 필요한 헤더 파일까지 자동으로 생성해 줍니다.

Go처럼 가볍게 빌드하고, C++처럼 강력하게 동작하는 C 새로운 가능성을 확인해 보세요.

👇 Gist 보기: https://gist.github.com/rkttu/719fad34908e3298f093501b6135b2e6

0

Catswords.Phantomizer is an HTTP-based dynamic-link library (DLL) loader designed for .NET applications. It allows your application to fetch and load assemblies directly from your CDN (Azure Blob, S3, Cloudflare R2, etc.) at runtime, with optional GZip compression support.

github.com/gnh1201/welsonjs/tr

0

압축 요청 헤더 지원 여부에 따른 HTTP Client 이중화

고남현 @gnh1201@hackers.pub

이 글에서는 .NET 환경에서 HTTP를 통한 파일 전송 시 압축을 활용하여 로딩 시간을 단축하는 방법에 대해 설명합니다. 특히, `Accept-Encoding` 헤더를 이용한 압축 요청이 서비스별로 다르게 처리될 수 있는 문제점을 지적하고, 이를 해결하기 위해 HTTP Client를 이중화하는 방법을 제시합니다. 미리 압축된 파일을 우선적으로 다운로드하고, 실패 시 압축 요청 헤더를 포함한 요청을 보내는 방식으로 압축 전송을 보장합니다. 실제 적용 사례인 `AssemblyLoader.cs` 파일의 예시를 통해, 이 방법이 어떻게 라이브러리 로딩 속도를 향상시키는지 확인할 수 있습니다. 이 글은 네트워크를 통한 라이브러리 로딩 시 안정성 확보와 성능 향상을 동시에 추구하는 개발자에게 유용한 인사이트를 제공합니다.

Read more →
1

DLL을 JS 처럼 import 단계에서 네트워크로 동적 로딩하기

고남현 @gnh1201@hackers.pub

이 글은 .NET 기반 Windows 앱 개발 시 발생하는 "DLL Hell" 문제를 해결하기 위한 새로운 접근 방식을 소개합니다. 기존의 어셈블리 병합 방식 대신, 네트워크에서 동적으로 어셈블리를 로드하는 방법을 제안합니다. C#의 `using` 키워드 해결 과정에 개입하여 CDN(Azure Blob Storage)을 통해 어셈블리를 로드하고, 코드 서명 검증을 통해 보안을 강화합니다. .NET IL뿐만 아니라 네이티브 어셈블리 로딩도 지원하며, 실제 코드 예시를 통해 구현 방법을 설명합니다. 이 방법은 배포 시 추가 어셈블리 누락으로 인한 오류를 방지하는 데 도움을 주지만, 여전히 추가 어셈블리를 함께 배포하는 것을 권장합니다. 이 글을 통해 개발자는 어셈블리 관리의 유연성을 높이고 잠재적인 배포 문제를 해결하는 데 도움이 되는 유용한 정보를 얻을 수 있습니다.

Read more →
6

Blogged: Recent updates to NetEscapades.EnumGenerators: [EnumMember] support, analyzers, and bug fixes

andrewlock.net/recent-updates-

In this post I describe some recent changes to the NetEscapades.EnumGenerators source generator, including support for [EnumMember] and new analyzers

0
0

I'm super enjoying my holidays as I'm finally getting a first end-to-end proof of concept of my UI prototype in C# 🥳

Nothing impressive captured in this GIF 😅 but the code behind is still substantial: layout machinery, Button UI styling with themed colors following WinUI3 design, dirty regions rendering, mouse events, bi-directional bindings with automatic update of the UI elements, zero alloc (apart the string!), NativeAOT optimized (under 2.3MB)

Next step: animations! 🚀

UI code associated with the video

Look at these animations! 🤩

On every counter update, it modifies the horizontal alignment of the YStack and colors differently the sphere, while automatic binding dependencies are able to determine which variables to animate. The sample code is still a bit messy (and limited - one running animation for one visual), but it will hopefully get refined and even simpler!

And all of this is still running with delta rendering / dirty rectangles. 🪟

The POC is completed. 🥳

Associated C# code
0

I'm super enjoying my holidays as I'm finally getting a first end-to-end proof of concept of my UI prototype in C# 🥳

Nothing impressive captured in this GIF 😅 but the code behind is still substantial: layout machinery, Button UI styling with themed colors following WinUI3 design, dirty regions rendering, mouse events, bi-directional bindings with automatic update of the UI elements, zero alloc (apart the string!), NativeAOT optimized (under 2.3MB)

Next step: animations! 🚀

UI code associated with the video
0
0
0

🎉 새로운 Kiro 플랫폼 출시! .NET 10 개발자를 위한 팁 공유

.NET 개발자 여러분께 흥미로운 소식을 공유합니다. 새로운 개발 플랫폼 Kiro가 정식 출시되었습니다!

Kiro는 .NET 10의 File-based App과 같은 최신 기술 스택을 지원합니다. Kiro 환경에서 .NET 10의 최신 C# 편집 기능(File-based App 지원 등)을 원활하게 사용하시려면, 이에 최적화된 C# 익스텐션을 설치하는 것이 좋습니다.

아래 링크를 통해 Kiro 환경에 권장되는 익스텐션을 확인해 보세요.

🔗 Kiro용 .NET 10 지원 C# 익스텐션: https://open-vsx.org/extension/dotnetdev-kr-custom/csharp

Kiro Stable 버전에서 dotnetdevkr-custom C# 익스텐션을 설치한 화면
1