favicon

Jayden { do: smite }

220831(수)

🪴 성장일지

행복한 이기주의자(웨인 다이어)의 내용에 자극받아 시작하는 소박한 성장기록

살아있는 꽃과 죽은 꽃은 어떻게 구별하는가?<br/> 성장하고 있는 것이 살아 있는 것이다.<br/> 생명의 유일한 증거는 성장이다!

🌳 키워드 최대한 간단하게 정리, 추후에 보면서 스스로 설명

JavaScript 함수형 프로그래밍

함수형 프로그래밍은 프로그래밍 패러다임 중 하나로 수학적 함수의 계산을 통해 자료를 처리하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임이다.

function addMaker(a) { return function (b) { return a + b; }; }

순수함수

  • 동일 한입력에 대해 항상 같은 값을 반환하는 함수
  • 함수의 실행이 프로그램의 실행에 영향을 끼치지 않는 함수
  • 함수 내부에서 인자의 값이나 프로그램 상태를 변경하는 부수 효과(side effect)가 없는 함수
  • 흔히 우리가 생각하는 외부값을 참조하고 바꾸고, 인자의 값을 변경하는 프로그래밍 함수가 아닌 수학에서의 함수를 떠올리면 이해하기 좋다.

수학에서의 함수 ex) f(x, y) = 2x + 3y처럼 인자 x, y에 대해 어떤 변경없이 동일한 인자에 대해 동일한 결과를 반환하며 애초에 수학적 함수에서 외부의 값을 참조한다.는 개념 자체가 없다. 즉, 이것이 순수함수

비상태, 불변성

  • 함수형 프로그래밍에서의 데이터는 변하지 않는 불변성을 유지해야한다.
  • ⭐ 데이터의 변경이 필요한 경우, 원본 데이터 구조를 변경하지 않으며 그 데이터의 복사본을 만들어서 그 일부를 변경하고 변경한 복사본을 활용 혹은 반환한다.

일급 객체(일급 함수)

자바스크립트의 함수는 일급 객체로서 일급 함수로 다뤄진다. 함수가 값으로 다뤄질 수 있다는 의미이다.

  • 어떤 함수의 인자로 전달될 수 있다.
  • 어떤 함수의 반환값이 될 수 있다.
  • 어떤 자료구조에 저장될 수 있다.
  • 그 자체의 리터럴로 생성 가능하다.

네트워크 기초

  • 네트워크란 두 대 이상의 컴퓨터를 연결하여 서로 데이터를 전송할 수 있는 통신망이다.<br/>
  • 인터넷은 TCP/IP 프로토콜을 사용하는 세계 최대 규모의 네트워크이다. 전 세계의 컴퓨터가 서로 데이터를 전송할 수 있도록 만들어진 거대 통신망이다.
  • 패킷: 네트워크 통신 시 사용되는 작게 분할된 데이터 조각, 네트워크에서 전송하는 데이터의 기본 단위가 된다.

    대역폭(최대 전송 속도로 전솔할 수 있는 단위 시간 당 데이터의 양)이 존재하기에 한 번에 큰 데이터를 보낼 수 없다. 그렇기에 데이터의 조각인 패킷으로 쪼개어 송신 후 수신하여 다시 퍼즐을 맞추듯 그 패킷을 조합하여 원래의 형태를 갖추도록 한다. 이 때, 원래의 형태를 갖추기 위해 각 패킷에는 그 순서가 담긴 정보가 들어있다.

  • 온프레미스와 클라우드
    • 온프레미스: 회사의 서버를 운영하기 위해 사내에 서버를 두거나 데이터 센터에 두는 방식
    • 클라우드: 인터넷을 통해 제공되는 소프트웨어, 하드웨어 등의 컴퓨팅 서비스를 이용하여 서버를 빌리는 방식
  • DMZ: 네트워크 구성에서 외부 네트워크(인터넷)과 내부 네트워크(기업) 사이에 위치한 중간 지대로, 공개할 서버만 공개하고 공개하면 안되는 부분은 보안을 지키는 역할을 한다.
undefined

Copyright 2023. all rights reserved by Jayden