event

    [C# 12와 .NET 8] 6. Interface와 Class상속

    [C# 12와 .NET 8] 6. Interface와 Class상속

    이번 글을 통해서는 OOP(Object-Oriented Programming)을 사용한 하나의 개체에서 다른 새로운 type을 상속하는 기본 개념에 대해 알아볼 것입니다. 또한 generic을 사용하여 어떻게 code를 안전하게 만들고 성능을 높일 수 있는지, delegate와 event를 통해 type 간 message를 어떻게 교환할 수 있는지를 알아보고 참조와 값 type에 대한 차이점도 확인해 볼 것입니다. 공통기능에 대한 interface를 구현하고 기능을 재사용하기 위해 기반 class로부터 상속받는 파생 class를 만들 것이며 상속된 type member를 재정의하고 다형성(polymorphism)도 사용해 볼 것입니다. 또한 확장 method의 생성과 계층적으로 상속된 class간 변환에..

    [C# 11 과 .NET 7] 6. Interface와 Class상속

    [C# 11 과 .NET 7] 6. Interface와 Class상속

    OOP(Object-Oriented Programming)을 사용한 하나의 개체는 다른 새로운 type을 상속하는 기본 개념과 generic을 사용하여 어떻게 code를 안전하게 만들고 성능을 높일 수 있는지, delegate와 event를 통해 type 간 message를 어떻게 교환할 수 있는지를 알아보고 참조와 값 type에 대한 차이점도 확인해 볼 것입니다. 공통기능에 대한 interface를 구현하고 기능을 재사용하기 위해 기반 class로부터 상속받는 파생 class를 만들 것이며 상속된 type member를 재정의하고 다형성(polymorphism)을 사용해 볼 것입니다. 또한 확장 method의 생성과 계층적으로 상속된 class 간 변환에 대한 것들, 그리고 static code ana..

    ASP.NET Core - [Blazor] 5. Blazor Form과 Data

    ASP.NET Core - [Blazor] 5. Blazor Form과 Data

    이번 글에서는 Blazor가 Data validation을 포함하여 HTML form을 처리하기 위해 제공하는 몇 가지 기능에 대해 알아볼 것입니다. Blazor가 제공하는 내장 component에 대한 것들과 함께 이들을 실제 어떤 방식으로 사용할 수 있는지와 Blazor model이 Entity Framework Core를 통해 어떤 형태로 예상하지 못한 결과를 유발하고 또 이러한 issue를 어떻게 해결할 수 있는지 등을 포함할 것입니다. 마지막으로 CRUD(Create, Reading, Updating, Deleting)가 가능한 간단한 form application을 만들어 보고 사용자의 경험을 향상하기 위해 어떻게 Blazor form 기능을 확장할 수 있는지도 알아보겠습니다. 1. Proje..

    [node.js] 이벤트 처리

    [node.js] 이벤트 처리

    node.js에서는 events 모듈을 사용해 임의의 이벤트를 등록하고 호출할 수 있습니다. const EventEmitter = require('events'); const event = new EventEmitter(); event.on('myevent', () => { console.log('event!!'); }); event.emit('myevent'); 이벤트 사용을 위해서는 우선 EventEmitter()를 통해 객체를 생성하고 해당 객체에 필요한 이벤트를 on으로 등록합니다. 이후 등록한 이벤트는 emit()으로 호출하여 실행합니다. 만약 같은 이벤트가 다시 등록되면 기존 이벤트에 추가되는 것이며 event.on('myevent', () => { console.log('event!!'); ..