프로그래밍&IT (155) 썸네일형 리스트형 (1) Event 발행 (Publisher), 구독(Subscriber) 패턴에 대해서 현재 내가 만들고있는 프로그램과 관련되어,이벤트 구독 & 발행 (Event Publisher / Subscriber)에 대해 알아본다. 목차이벤트 발행 & 구독 패턴의 목적이벤트 발행 및 구독 구조실제 사용 사례이벤트 패턴의 장단점 이벤트 발행 & 구독 (Event Publisher & Subscriber) 패턴의 목적1. 느슨한 결합발행자(Publisher)와 구독자(Subscriber)는 서로 직접적으로 연결되지 않습니다.발행자는 구독자가 누군지 알 필요가 없고, 구독자는 발행자의 내부 구현에 대해 알 필요가 없습니다.이는 시스템을 보다 모듈화하고 유지보수를 쉽게 해줍니다.이를 통해 한 객체가 변경되더라도 다른 객체에 미치는 영향을 최소화할 수 있습니다.2. 확장성여러 구독자가 동일한 이벤트를 구독할.. Winform (윈폼)의 컨트롤 이벤트와 WPF의 Routed event간의 차이 / RoutedEventArgs에서 많이 사용되는 내용 내가 거의 C# Winform(윈폼)으로만 먹고살다보니,WPF의 기본 개념이 어렵다. 목차Winform 컨트롤 이벤트와 WPF의 Routed event간의 차이RoutedEventArgs에서 많이 사용되는 프로퍼티와 내용 Winform 컨트롤 이벤트와 WPF의 Routed event간의 차이1. 이벤트 모델 비교WinForm의 컨트롤 이벤트WinForm은 일반적인 .NET 이벤트 모델을 사용합니다.각 컨트롤에 이벤트가 있으며, 이벤트가 발생하면 컨트롤 자체에서 직접 처리됩니다.이벤트의 버블링이나 터널링은 지원하지 않으며, 이벤트는 한 번 발생하면 해당 컨트롤에만 영향을 미칩니다.이벤트 핸들러는 이벤트가 발생한 컨트롤에 바로 연결됩니다.WPF의 Routed EventWPF는 RoutedEvent 모델을 .. WPF의 클래스 계층구조 WPF 클래스 계층 구조 개요WPF는 풍부한 사용자 인터페이스를 만들기 위해 다양한 요소들이 포함된 복잡한 클래스 계층 구조를 가지고 있습니다. 주요 클래스는 다음과 같이 구성됩니다:System.Object모든 클래스의 최상위 부모 클래스.System.Windows.Threading.DispatcherObjectWPF의 모든 UI 객체가 DispatcherObject를 상속WPF의 스레딩 모델에서 UI 스레드에서만 UI를 접근할 수 있도록 보장.System.Windows.DependencyObjectWPF에서 의존성 속성을 사용할 수 있도록 지원.System.Windows.Media.VisualWPF의 렌더링 시스템과 직접적으로 상호 작용하는 기본 클래스.System.Windows.UIElement이벤트.. [C# WPF] 첨부 프로퍼티 (Attached Property)란? 의존 프로퍼티 다음 장에 첨부프로퍼티 (Attached Property)가 나온다.이건 또 뭔가.확실히 WPF가 윈폼.Winform에 비해서 뭔가 복잡한게 많다. 첨부 프로퍼티 (Attached Property)란?일반적인 의존 프로퍼티(Dependency Property)와 달리 하위 요소가 아닌 다른 요소에 적용할 수 있는 속성을 정의하는 메커니즘입니다.주로 레이아웃 컨테이너(예: Grid, Canvas)에서 하위 요소의 배치 속성을 정의하는 데 사용됩니다.WPF의 다양한 컨트롤이 Attached Property를 사용하여 자식 요소의 레이아웃이나 동작을 제어합니다.Attached Property는 하위 요소가 자신의 프로퍼티를 직접 소유하지 않지만, 해당 요소의 부모 컨테이너가 이 속성을 읽고 적절.. 의존 프로퍼티 (Dependency Property) WPF해야할 이유가 생겨서 책을 다시 보고 있다. WPF에서 의존 프로퍼티 (Dependency Propery)란?WPF에서 의존 프로퍼티(Dependency Property)는 WPF의 핵심적인 기능 중 하나로, WPF의 UI 요소들이데이터 바인딩스타일애니메이션등에 의해 동적으로 변할 수 있는 속성을 지원하기 위해 설계되었습니다.일반적인 .NET 속성과는 달리, 의존 프로퍼티는 WPF에서 성능 최적화와 기능 확장을 위해 만들어졌습니다. 의존 프로퍼티의 주요 기능데이터 바인딩 지원: 의존 프로퍼티는 데이터 바인딩을 쉽게 지원하며, UI 요소와 데이터 소스 간의 동기화를 자동으로 처리합니다.스타일과 트리거: WPF 스타일을 통해 의존 프로퍼티의 값을 설정할 수 있습니다.애니메이션: 의존 프로퍼티는 애니메이.. 스레드 동기화를 위한 동기화 객체들 알고리즘 매매를 개발하다보니비동기 그리고 스레드 관련된 일이 좀 많은 듯하다. 이에 스레드 동기화를 위한 객체들에 대해복습차 다시 한번 살펴봤다. 스레드동기화를 위한 동기화 객체들 1. MonitorMonitor는 객체의 동기화에 사용되며, 스레드가 임계 구역에 진입할 때 락을 설정합니다. 생성자가 따로 없으며Monitor.Enter와 Monitor.Exit을 사용하거나lock 키워드를 사용합니다.- 사용 예시lock (obj) { // 임계 구역 }Monitor.Enter(obj); try { // 임계 구역 } finally { Monitor.Exit(obj); }2. Mutex (뮤텍스)Mutex는 프로세스 간 동기화를 지원하는 동기화 객체로, 하나의 스레드만이 리소스에 접근하도록 보장합니다.- 생.. MAUI 관심있어서 유료강의를 신청했다. 사실은 WPF를 공부하다가 우연히 MAUI 라는것도 보게되었다.이것도 나온지 몇년된 기술인데 생업과 c# 윈폼 (winform)에만 빠져있다보니뒤늦게 보게 되었다. 이전에 유니버설 앱인가 그리고 자마린 (Xamarin)까지는 대충 알고있었는데내가 MS의 기술로 먹고 사는데 기술 트렌드에 관심을 좀 적게 둔것같다.WPF가 거의 망한 (그나마 한국에선 좀 프로젝트가 있던데...) 케이스라고 들었는데그 기술로 또 다른걸 만들어낸듯? MAUI의 full name은 Multi platform App UI 의 약자다.폴리네이사의 영웅 이름으로 맞춘것같긴한데.. 여튼(디즈니 애니메이션 영화 중 "모아나"에서 들어봤다..) 이것말고도 멀티플랫폼 기술이 몇 개 더 있는걸로 아는데한 번 이 기술에 대해서 공부하기로 궁.. JWT란 무엇인가? 그리고 사용하는 라이브러리 간혹 증권사나 코인거래소의 경우dll, com 등을 제공하지 않고 아예 Restful API 라고 제공을 하더라.내가 웹쪽은 많이 하지않다보니 잘 모르겠고 샘플찾아다가 꾸역꾸역 작성해서 테스트를 했다.그 중 JWT라는게 있어서 찾아봤다. JWT (JSON Web Token)란?JWT (JSON Web Token)는 JSON 객체를 사용하여 두 시스템 간에 정보를 안전하게 전송하는 개방형 표준입니다.일반적으로 인증과 권한 부여에 사용됩니다. JWT는 세 부분으로 나뉩니다:Header (헤더): 토큰의 타입 (JWT)과 해시 알고리즘 (예: HMAC, SHA256 등)을 포함합니다.Payload (페이로드): 클레임(claims)이라고 하는 사용자 정보나 기타 데이터를 포함합니다. 이는 암호화되지 않으므로 .. 키오스크 개발관련된 분야가 공고로 간혹 올라온다. 잡코리아나 사람인의 공고를 보면 간혹 키오스크관련되어서 나온다.아무래도 물가도 오르고 인건비도 오르다보니 이런 프로젝트도 올라오느듯.. 예전에 C# WPF를 본것같은데,그 외 이 분야에 쓰이는 기술은 뭐가 있나 궁금해졌다. 키오스크에 많이 쓰이는 개발 플레임워크, 언어 그리고 WPF도 많이 쓰이나1. 프론트엔드 기술* HTML/CSS/JavaScript웹 기반 키오스크의 경우, 가장 기본적으로 사용되는 기술들입니다.키오스크 화면을 HTML로 작성하고, CSS로 스타일링, JavaScript로 상호작용을 처리합니다.* React.js, Vue.js, AngularJavaScript 기반의 프레임워크들이 키오스크 UI 제작에 자주 사용됩니다. 이러한 프레임워크들은 빠른 개발과 유지보수를 쉽게 해주며, 특히 .. 2024년 .net 기술변화에 어떤 이슈가 있는가? 사실 C# WPF의 근황에 대해 알아보다가2024년의 .net 개불관련 이슈가 있는지 한 번 더 검색을 해봤다. 목차.net 기술변화 2024년에.net 9 2024년에 나올.net 기술변화1. .NET 8 출시.NET 8은 2023년 말에 출시되었고, 2024년에는 기업과 개발자들이 이를 적극적으로 도입하고 있습니다.NET 8은 성능 개선, 안정성 강화, 새로운 기능 추가로 더욱 성숙한 플랫폼을 제공합니다.특히 Blazor의 발전으로 클라이언트 및 서버 사이드 웹 애플리케이션 개발이 한층 쉬워졌습니다.2. 클라우드 및 컨테이너화.NET은 클라우드 환경에서의 효율성을 높이기 위한 개선이 계속되고 있습니다.Azure와의 통합이 한층 강화되어, 클라우드 네이티브 애플리케이션을 보다 쉽게 배포하고 관리할 수 .. 이전 1 2 3 4 5 6 ··· 16 다음