본문 바로가기

전체 글159

[함수형 프로그래밍] 모나드 1. 모나드란? 1) 개념 설명 값을 감싸고 있는 컨테이너 또는 wrapper 라고 할 수 있다. 모나드는 순수 함수형 프로그래밍에서 부작용을 관리하고 값을 안전하게 조작하는 방법을 제공하는 디자인 패턴 함수형 프로그램의 핵심 개념 중 하나로써, 코드의 안정성과 가독성을 높여준다. 2) 주요 특징 값을 감싸고 있음 : 값을 감싸고 있기에 값에 대한 안전한 조작과 부작용을 효율적으로 처리 가능 평면화 : 중첩된 컨테이너의 값을 단인 컨테이너로 평면화 시키는 기능 제공. 이를 통헤 중첩된 컨테이너를 다루는 작업을 간단하게 처리 결합성 : 순수 함수 합성이 가능하게 해준다. 여러 개의 함수를 순차적으로 적용하거나 조합할 때 모나드를 사용하면 더욱 간편하고 안전하게 합성할 수 있다. 에러 처리 : 모나드는 예외.. 2023. 7. 26.
[React] exhustive-deps Eslint 규칙 이해하기 1. 코드 상황과 해결 import Axios from "axios"; import React, { useState, useEffect } from "react"; type Device = { DEVICE_ID: number; DEVICE_NAME: string; }; function Devices({ DEVICE_ID, DEVICE_NAME }: { DEVICE_ID: number; DEVICE_NAME: string; }) { function checkId() { console.log(DEVICE_ID); } return ( {DEVICE_ID} {DEVICE_NAME} ); } export function getList(){ // eslint-disable-next-line react-hooks/r.. 2023. 7. 23.
[async, promise] db쿼리와 처리 순서 0. 문제 코드 Mutation: { add: async (_, args) => { let name = args.device_name let address = args.device_address let pile_max = args.pile_max const sqlQuery = "INSERT INTO DEVICES (DEVICE_NAME, DEVICE_ADDRESS, PILE_MAX) VALUES (?,?,?)"; let recall_id; await db.query(sqlQuery, [name,address,pile_max], (err, result) => { if (err) { console.log(err); }else{ recall_id = result.insertId; console.log("Inr.. 2023. 7. 23.
[Tool, CI/CD] Jenkins 0. 기본 개념 1. ssh(Secure Shell) 원격지 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜, 말그대로 보안 쉘이다. 기존의 원격 접속에 사용하던 텔넷은 암호과가 없어 거기에 보안기능을 추가하여 1995년에 나온 프로토콜 쉘로 원격 접속을 하는 것이므로 시본적으로 CLI 상에서 작업을 하게되며 기본 포트는 22번이다. 2. CLI(Command Line Interface) 명령 줄 인터페이서, 명령어 인터페이스로 텍스트 터미널을 통해 사용자와 컴퓨터가 상호작용하는 방식이다. 현재는 GUI(Graphic User Interface)를 대부분 운영체제에서 지원한다. 1. CI/CD 1-1. CI(Continous Intergration) 여러명의 개발자가 코드 베이스를 계속해서 통합하.. 2023. 7. 19.