본문 바로가기

전체 글90

[Typescript] Module 절대경로 설정 방법 Module 절대경로 설정 방법 타입스크립트 프로젝트에서 소스코드 관리를 위한 절대경로 설정 방법을 알아보자. 절대경로를 사용하는 이유 타입스크립트 프로젝트는 기본적으로 상대경로를 통해 module을 import 하도록 되어있는데 프로젝트나 소스파일의 규모가 커지면 자연스럽게 import 구문도 늘어나면서 소스코드가 더러워질 수 있다. ../으로 도배된 import 구문으로 인해 가독성 저하 소스파일 이동 시 상대경로 변경으로 인한 사이드이펙트 등의 문제가 발생한다. 상대경로 대신에 절대경로를 적용하면 위 문제를 해결할 수 있다. 절대경로 설정 절대경로를 적용하려면 tsconfig.json를 수정해야한다. // tsconfig.json { "compilerOptions": { "baseUrl": ".",.. 2024. 3. 14.
[Ubuntu] 부팅 시 스크립트 자동 실행하기 부팅 시 스크립트 자동 실행하기 우분투 부팅 시 프로그램이나 스크립트가 자동으로 실행될 수 있도록 환경을 구성해보자. rc.local 이란? rc.local 파일은 리눅스 시스템에서 부팅 과정 중 마지막에 실행되는 스크립트 파일이다. 이 파일은 부팅 시에 자동으로 실행되는 사용자 정의 명령이나 스크립트를 포함시킬 수 있다. rc.local 수정 $ sudo vi /etc/rc.local root 권한으로 rc.local 파일을 연다. [설치] WantedBy=multi-user.target #!/bin/bash // 부팅 시 실행하고 싶은 명령어 or 스크립트 작성 exit 0 파일의 내용을 위 내용처럼 작성한다. #!/bin/bash로 시작하여 파일의 내용이 bash 쉘 스크립트임을 선언 부팅 시 실행.. 2024. 3. 9.
[Typescript] Typescript와 OOP 언어의 Function Overloading 비교 Typescript와 OOP 언어의 Function Overloading 비교 타입스크립트와 객체지향 언어의 함수 오버로드의 차이점에 대해 알아보자 사전 지식 함수 오버로드 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 함수 오버로드(영어: Function overloading)는 다양한 에이다(Ada), C#, C++, 자바(Java) 등의 다양한 프로그래밍 언어에서 사용되는 함수의 특징으로, 같은 함수 이름을 가 ko.wikipedia.org Typescript와 OOP 언어의 함수 오버로드 정의 방법과 차이점 스타크래프트 오버로드 프로그래밍 언어들은 다형성을 만족시키기 위해 함수 오버로드를 지원한다. 그러나 타입스크립트에서는 일반적인 객체지향 언어에서의 함수 오버로드와 다른 .. 2024. 3. 7.
[Python] Python 라이브러리 패키지를 Github Actions를 이용하여 PyPi에 배포하는 방법 Python 라이브러리 패키지를 Github Actions를 이용하여 PyPi에 배포하는 방법 파이썬 라이브러리를 Github Actions을 이용하여 쉽고 빠르게 pypi에 배포하는 환경을 구축해보자. 시리즈 2023.12.08 - [Programming/Javascript] - [Javascript] Javascript 라이브러리 패키지를 Github Actions를 이용하여 npm에 배포하는 방법 2023.12.15 - [Programming/C#] - [C#] C# 라이브러리 패키지를 Git Actions를 이용하여 NuGet에 배포하는 방법 2024.01.02 - [Programming/Java] - [Java] Java 라이브러리 패키지를 Git Actions를 이용하여 Maven centra.. 2024. 2. 23.
[Java] Java 라이브러리 패키지를 Github Actions를 이용하여 Maven central repository에 배포하는 방법 Java 라이브러리 패키지를 Git Actions를 이용하여 Maven central repository에 배포하는 방법 자바 라이브러리를 Github Actions을 이용하여 쉽고 빠르게 Maven central에 배포하는 환경을 구축해보자. 시리즈 2023.12.08 - [Programming/Javascript] - [Javascript] Javascript 라이브러리 패키지를 Github Actions를 이용하여 npm에 배포하는 방법 2023.12.15 - [Programming/C#] - [C#] C# 라이브러리 패키지를 Git Actions를 이용하여 NuGet에 배포하는 방법 2024.02.23 - [Programming/Python] - [Python] Python 라이브러리 패키지를 G.. 2024. 1. 2.
[C#] C# 라이브러리 패키지를 Github Actions를 이용하여 NuGet에 배포하는 방법 C# 라이브러리 패키지를 Git Actions를 이용하여 NuGet에 배포하는 방법 C# 라이브러리를 Github Actions을 이용하여 쉽고 빠르게 NuGet에 배포하는 환경을 구축해보자. 시리즈 2023.12.08 - [Programming/Javascript] - [Javascript] Javascript 라이브러리 패키지를 Github Actions를 이용하여 npm에 배포하는 방법 2024.01.02 - [Programming/Java] - [Java] Java 라이브러리 패키지를 Git Actions를 이용하여 Maven central repository에 배포하는 방법 2024.02.23 - [Programming/Python] - [Python] Python 라이브러리 패키지를 Githu.. 2023. 12. 15.
[Javascript] Javascript 라이브러리 패키지를 Github Actions를 이용하여 npm에 배포하는 방법 Javascript 라이브러리 패키지를 Github Actions를 이용하여 npm에 배포하는 방법 자바스크립트 라이브러리를 Github Actions을 이용하여 쉽고 빠르게 npm에 배포하는 환경을 구축해보자. 시리즈 2023.12.15 - [Programming/C#] - [C#] C# 라이브러리 패키지를 Git Actions를 이용하여 NuGet에 배포하는 방법 2024.01.02 - [Programming/Java] - [Java] Java 라이브러리 패키지를 Git Actions를 이용하여 Maven central repository에 배포하는 방법 2024.02.23 - [Programming/Python] - [Python] Python 라이브러리 패키지를 Github Actions를 이용하.. 2023. 12. 8.
[프로그래밍 이론] HTTP forward와 redirect HTTP forward와 redirect HTTP 통신에서 request를 다른 URL로 보내버리는 기법인 forward와 redirect를 알아보자. 포워딩 (Forwading) 포워딩은 클라이언트의 request를 서버 내부에서 다른 리소스로 전달하는 기법이다. 모든 처리가 서버 내부에서 이루어지기 때문에 클라이언트는 이 과정을 알 수 없으며, 클라이언트는 처음 요청한 URL을 유지하게 된다. 단일 요청/응답 구조를 가진다. 리디렉션 (Redirection) 리디렉션은 클라이언트의 request를 새로운 URL로 이동하도록 서버가 클라이언트에게 재안내하는 기법이다. 서버는 클라이언트에게 HTTP 상태코드와 함께 새로운 URL을 제공하여 다시 request를 보낼 것을 명시적으로 알린다. 클라이언트는 .. 2023. 12. 7.
[AWS] EC2 인스턴스 구축하기 EC2 인스턴스 구축하기 AWS에서 온디맨드 EC2 인스턴스를 구축해보자. EC2란? EC2는 AWS 클라우드 환경에서 사용할 수 있는 가상 컴퓨팅 서비스를 의미한다. 사용자가 원격으로 제어할 수 있는 컴퓨터를 빌리는 것이다. 사용자는 대여한 컴퓨터에 원격으로 접속하여 웹서버를 운영하거나 데이터베이스를 설치하는 등 원하는 작업을 수행할 수 있다. 선행 작업 이 글은 VPC가 있어야 진행 가능하므로 아직 VPC를 생성하지 않았다면 아래 링크에서 먼저 작업을 완료해야한다. (선택) [AWS] VPC 구축하기 VPC 구축하기 AWS에서 가상 네트워크인 VPC를 구축해보자. VPC란? VPC는 Virtual private cloud의 약자로 논리적인 가상 네트워크망 개념을 의미한다. AWS에서 EC2나 EKS .. 2023. 11. 28.
[Ubuntu] Ubuntu OS 버전 업그레이드 방법 Ubuntu OS 버전 업그레이드 방법 쉘 환경에서 Ubuntu OS 버전을 업그레이드하는 방법을 알아보자 스크립트 // 버전 체크 $ lsb_release -a // 업그레이드 가능한 버전 조회 $ do-release-upgrade -c // 업그레이드 실행 $ sudo do-release-upgrade // 패키지 업데이트 $ sudo apt upgrade // 버전 체크 $ lsb_release -a 위 스크립트를 순서대로 실행하여 아래 항목에 서술된대로 진행한다. 버전 업그레이드 방법 쉘에 접속하여 현재 사용중인 OS 정보를 조회한다. 현재 사용중인 OS의 업그레이드 가능 버전이 존재하는지 조회한다. OS 버전 업그레이드를 실행한다. 버전 업그레이드는 바로 다음 메이저 버전으로 진행된다. (예시 .. 2023. 11. 13.
[AWS] EC2 인스턴스로 AMI를 만드는 방법 EC2 인스턴스로 AMI를 만드는 방법 AWS EC2 인스턴스로 AMI 이미지(사진 아님)를 만들어보자. AWS AMI란? AMI(Amazon Machine Image)는 AWS 환경에서 가상 머신을 생성하는 데 사용되는 이미지이다. AMI는 가상 서버의 기본 구성, 운영 체제, 애플리케이션 및 데이터를 정의한다. 간단히 말해 AMI는 가상 머신을 시작하기 위한 템플릿으로 볼 수 있다. 이미지 만들기 EC2 콘솔로 접속하여 베이스 이미지로 만들고 싶은 EC2 인스턴스를 선택한다. 인스턴스를 선택하고 이미지 및 템플릿 > 이미지 생성 버튼을 클릭한다. 여기가 제일 중요하다. 이미지에 대한 정보와 생성 전략을 선택한다. + 원래 EC2 인스턴스를 안전하게 이미지화 하기 위해서는 EC2 인스턴스를 중지하고 이.. 2023. 11. 1.
[AWS] Route 53을 이용하여 도메인의 상태를 모니터링하는 방법 Route 53을 이용하여 도메인의 상태를 모니터링하는 방법 AWS에서 특정 도메인 혹은 IP의 상태를 실시간으로 모니터링하고 장애 발생시 Slack으로 알림을 주는 시스템을 구축해보자. Route 53의 모니터링 기능 일반적으로 Route 53은 AWS에서 도메인주소를 호스팅하는 도구로써 더 유명하지만 특정 도메인이나 IP 주소가 유효한지 검사할 수 있는 상태 검사 기능으로써의 역할도 수행할 수 있다. 이를 CloudWatch와 연계하면 검사 대상에게서 상태 이상이 감지되었을 때 경보를 발생시킬 수 있다. 사전 지식 Amazon SNS What is Amazon SNS? - Amazon Simple Notification Service What is Amazon SNS? Amazon Simple Not.. 2023. 10. 24.
반응형