service

    [ASP.NET Core] - 8. Shopping mall project 만들기 - 3 (2nd)

    [ASP.NET Core] - 8. Shopping mall project 만들기 - 3 (2nd)

    이제 Cart까지 기능을 완성하였는데 지금부터는 외형적 기능이 아닌 내부적인 개선에 집중해 보고자 합니다. 1. Service를 통한 Cart model 개선 지난번에는 Cart를 위해 Cart Model을 정의하였으며 Session기능을 통해 어떻게 이 개체를 저장할 수 있는지를 살펴보았습니다. Cart는 예제 Project에서 무엇보다 중요한 기능이며 지속적인 관리는 Session data로서 저장하고 가져오는 동작을 수행하는 Cart Razor Page를 통해 이루어져야 할 것입니다. 예제에서의 접근방법에 대한 문제는 다른 Razor page나 Controller에서 이를 사용하고자 할 때 Cart개체를 저장하고 가져오는 Code가 중복될 수 있다는 것입니다. 이를 개선하기 위해 ASP.NET Co..

    [ASP.NET Core] - 6. Shopping mall project 만들기 - 1 (2nd)

    [ASP.NET Core] - 6. Shopping mall project 만들기 - 1 (2nd)

    이제까지 ASP.NET Core 개발에 필요한 여러 사항들을 알아보았으므로 이를 토대로 간략한 Project를 하나 진행해 볼 것입니다. Project는 Comuter 부품을 판매하는 Shopping mall로 사용자가 찾아볼 수 있는 제품과 제품의 category 그리고 특정 상품을 담아 둘 수 있는 Cart, 주문현황의 상세를 볼 수 있는 Checkout 기능을 만들어 볼 것입니다. 또한 Shopping mail자체를 관리하는 관리자기능도 같이 추가해 보고자 합니다. ASP.NET Core를 사용하여 가능한한 실질적인 Application을 만들어 봄으로서 Application이 만들어지는 전체적인 개념을 이해하고자 하지만 ASP.NET Core가 주된 주제이므로 Database와 같은 외부 syst..

    ASP.NET Core - 3. 의존성 주입(Dependency Injection)

    ASP.NET Core - 3. 의존성 주입(Dependency Injection)

    Service는 Middleware와 Endpoint사이에 공유되는 객체라고 할 수 있습니다. Service가 제공할 수 있는 기능에는 제한이 없지만 일반적인 경우 대부분 Application의 여러 부분에 걸쳐 필요한 작업(Logging이나 Database 접근과 같은)에 사용됩니다. ASP.NET Core 의존성 주입기능은 Service를 생성하고 사용하는 데 사용됩니다. 이제 ASP.NET Core platform에서 의존성 주입이 어떻게 지원되는지를 알아보고 의존성 주입을 사용함으로써 어떠한 문제를 해결할 수 있는지를 천천히 확인해 보도록 하겠습니다. 1. Project 만들기 예제로 사용하게될 Project는 [.NET/ASP.NET] - ASP.NET Core - 2. 라우팅(Routing) ..

    ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 전반적인 이해

    ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 전반적인 이해

    ASP.NET Core는 MVC나 Blazor와 같은 기능을 통해 Web Application을 개발하기 위한 Platform입니다. 이번에는 ASP.NET Core에 관한 특징 및 구조 그리고 HTTP 요청을 처리하는 요청 Pipeline에 대해 알아보고 customize 할 수 있는 방법에 대해서도 살펴볼 것입니다. 1. 시작전 준비사항 우선 아래 명령을 통해 최소한의 ASP.NET Core Project를 생성하도록 합니다. 예제에서 Project는 MyWebApp으로 지정하였습니다. dotnet new globaljson --sdk-version 6.0.400 --output MyWebApp dotnet new web --no-https --output MyWebApp --framework net..

    [nestjs] Service

    [nestjs] Service

    nestjs에서 Service를 생성하려면 다음 명령을 사용합니다. nest g s Service 이름을 입력하고 다음으로 넘어갑니다. Service가 생성되면 app.module.ts와 관련 파일이 생성되어 있음을 확인할 수 있습니다. import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { SchoolController } from './school/school.controller'; import { SchoolService } from './school/school.service'; @Module({ ..

    [nestjs] 시작하기

    [nestjs] 시작하기

    1. 구조 확인하기 우선 설치가 완료된 디렉터리에 가서 package.json을 확인합니다. "scripts": { "prebuild": "rimraf dist", "build": "nest build", "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "start": "nest start", "start:dev": "nest start --watch", "start:debug": "nest start --debug --watch", "start:prod": "node dist/main", "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", "test": "jest", "test:watch"..

    [Kotlin] 서비스(Service)

    [Kotlin] 서비스(Service)

    사용자에게 노출되지 않고 무엇인가를 지속적으로 처리해야 하는 경우에 사용되는 서비스는 백그라운드에서 보이지 않게 동작합니다. 얼핏 백그라운드 스레드와 비슷해 보이기는 하지만 스레드는 별도의 메인 스레드와는 상관없이 다중적인 작업 처리가 가능한 반면 서비스는 메인 스레드를 사용하므로 메인 스레드와 서비스 중 하나에만 처리를 집중할 수 있다는 차이가 있습니다. 서비스는 서비스가 시작하는 방식에 따라 2가지 정도로 나뉠 수 있는데 각각의 서비스에 대해서는 실제 서비스를 만들어 동작시켜 보면서 조금씩 살펴보도록 하겠습니다. 1. 스타티드 서비스 startService() 메서드로 실행되는 스타티드 서비스는 Ativity와는 무관하게 독립적으로 동작할 수 있습니다. 때문에 Activity가 종료되어도 지속적인 실..