공부 69

CI /CD 란?

출처 : https://www.youtube.com/watch?v=0Emq5FypiMM CI / CD 프로젝트 개발 단계부터 배포까지 사용자에게 빈번히 배포할 수 있도록 만드는 것을 말합니다 CI(Continuous Integr, 지속적인 통합) 버그 수정이나 새로운 기능을 깃 리파지토리에 머지되는 경우를 말합니다 개발자는 코드 변경사항을 주기적으로 빈번하게 머지해야 한다 협업하는 과정에서 여러 가지 기능을 원기옥처럼 모아뒀다가 한 번에 머지할 시 협업하는 다른 개발자의 코드와 충돌이 일어날 수 있으니 작은 단위의 기능들을 작성해 머지해야 합니다 통합을 위한 단계(빌드, 테스트, 머지)의 자동화 개발자는 하루에도 몇 번씩 코드 리뷰를 받고 머지를 하는데 머지를 한 후 자동으로 팀에서 만든 CI스크립트를 ..

공부 2021.09.01

[ javascript ] 식별자 네이밍 규칙

식별자란? 식별자란 변수, 함수, 클래스 등 이름은 모두 식별자입니다 식별자는 어떤 값을 구별해서 식별할 수 있는 고유한 이름을 말합니다 식별자는 값이 저장되어있는 메모리 주소와 매핑 관계를 맺으며, 이 매핑 정보도 메모리에 저장이 되어야 합니다 이처럼 식별자(변수)는 값이 아니라 메모리 주소를 기억하고 있습니다 즉 식별자는 메모리 주소에 붙인 이름이라고 할 수 있습니다 식별자는 3가지 네이밍 규칙을 준수해야 합니다 식별자는 특수문자를 제외한 문자, 숫자, 언더바( _ ), 달러 기호($)를 포함할 수 있습니다 식별자의 특수문자를 제외한 문자, 언더바, 달러 기호로 시작해야 합니다 숫자로 시작되는 것은 허용되지 않습니다 예약어는 식별자로 사용할 수 없습니다 JS 예약어 await break case ca..

공부/javascript 2021.08.19

[ javascript ] REST AIP 란 무엇인가?

REST REST는 HTTP/1.0과 1.1의 스펙 작성에 참여했고 아파치 HTTP 서버 프로젝트의 공동 설립자인 로이 필딩의 2000년 논문에 처음 소개되었습니다 발표 당시의 웹이 HTTP를 제대로 사용하지 못하고 있는 상황을 보고 HTTP의 장점을 최대한 활용할 수 있는 아키텍처로서 REST를 소개했고 이는 HTTP 프로토콜을 의도에 맞게 디자인하도록 유도하고 있습니다 REST의 기본 원칙을 성실히 지킨 서비스 디자인을 RESTful(레스트 풀)이라고 표현합니다 REST API RESTful을 지키면서 설계한 API를 REST API라고 합니다 REST API의 구성 REST API는 자원(resource), 행위(verb), 표현(representations)의 3가지 요소로 구성됩니다 REST는 ..

공부 2021.08.01

[ React ] input 여러개 상태 관리하기

import React,{ useState } from 'react' function State3() { // 객체 형태의 상태를 관리 const [inputs, setInputs] = useState({ name:'', nickname:'', }); // 비구조 항당을 통해서 추출 const {name,nickname} = inputs; const onChange = (e) => { // name 값과 value를 매개변수 e에서 추출 const {name, value} = e.target; // React에서 객체 형태를 업데이트 하기위해선 기존의 객체를 복사해야 합니다 setInputs ({ ...inputs, // 기존의 값을 덮어 씌우고 새로운 값을 넣어줍니 // 이 방식이 불변성을 지킨다고 합..

공부/React 2021.06.29

[ javascript ]async / await

async/await 란? async/await 는 javascript에서 promise를 더욱 쉽게 사용할 수 있도록 서포트해주는 문법입니다 // promise 를 만드는 함수 function sleep(ms){ // 파라미터 ms 이후에 resolve를 호출해 promise가 끝이납니다 return new Promise(resolve => setTimeout(resolve, ms)); } // async / await 문법을 사용할때는 앞에 async 표기 async function process(){ console.log('안녕하세요;'); // promise의 앞부분에 await를 붙여줘야합니다 // promise를 기다리는 작업을.then 을 쓸필요가 없어집니다 await sleep(1000);..

공부/javascript 2021.06.29

[ JS 코딩테스트 ][ 체험 문제] 네이버웹툰 개발 챌린지 1차 코딩 테스트

문제 설명 직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다. 제한사항 v는 세 점의 좌표가 들어있는 2차원 배열입니다. v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다. 좌표값은 1 이상 10억 이하의 자연수입니다. 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해주세요..

공부/알고리즘 2021.06.29

[ javascript ] Promise

Promise 란? Promise는 비동기 작업을 좀 더 수월하게 처리할 수 있도록 ES6에 도입된 기능입니다 이전에는 비동기 잡얼을 처리해야 할 때 이 작업이 끝나고 어떤 작업을 처리해야 할 때 콜백 함수로 처리를 해줬어야 했는데 콜백 함수가 많이 질 경우 코드가 난잡해졌었습니다 그래서 Promise가 추가 가 되었습니다 원래는 라이브러리였는데 이후에는 javascript에 추가가 된 기능입니다 콜백 함수가 난잡한 코드 // 숫자 n을 파라미터로 받아와서 5번을 걸쳐 1초마다 1씩 더하는 함수 function increaseAndPrint(n, callback) { setTimeout(() => { const increased = n + 1; console.log(increased); if(callba..

공부/javascript 2021.06.29

[ JS 코딩테스트 ] 서울에서 김서방 찾기

문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 입출력 예 seoul return ["Jane", "Kim"] "김서방은 1에 있다" 초기화면 function solution(seoul) { var answer = ''; return answer; } 글쓴이 풀이 function solution(seoul) {..

공부/알고리즘 2021.06.28

[ javascript ] 동기 비동기의 이해

1. 동기적(Synchronous) 동기적으로 작업을 처리한다면 1번이 작업중이라면 2번은 작업 준비상태이고 1번이 끝이 나야 2번이 작업을 합니다 2. 비동기적(Asynchronous) 비동기적으로 작업을 처리한다면 동시에 여러가지 작업을 처리할 수도 있고 기다리는 과정에서 다른 함수를 호출할 수도 있습니다 예시 동기적 function work() { const start = Date.now(); // 현제 시간을 표시해줍니다 for(let a = 0; a < 100000000; a++){} const end = Date.now(); console.log(end - start + 'ms'); } work(); // 521ms console.log('다음작업'); // 다음작업 코드윗줄부터 순서대로 실행..

공부/javascript 2021.06.28