목록전체 글 (85)
개발일지

문제 설명 5*5 격자판에 아래와 같이 숫자가 적혀있습니다. N*N의 격자판이 주어지면 각 행의 합, 각 열의 합, 두 대각선의 합 중 가 장 큰 합을 출력합니다. 입력설명 첫 줄에 자연수 N이 주어진다.(1
구조 분해 할당(Destructuring assignment) ES6에서 새롭게 도입한 문법이며 객체(Object) 나 배열(List)을 변수로 ‘분해'할 수 있습니다. 객체(Object)의 구조 분해 할당 객체를 분해할 때에는 반드시 변수명과 객체의 프로퍼티 이름이 일치해야 합니다. 프로퍼티의 이름이 유효한 식별자인 프로퍼티만 분해 후 할당됩니다. const obj = { name: "개린이", age: 30, tech: "Node.js" }; const { name, age, tech, hair } = obj; console.log(name); // 개린이 console.log(age); // 30 console.log(tech); // Node.js console.log(hair); // undef..

명령어 소스코드와 명령어 고급언어와 저급 언어 고급 언어 개발자가 이해하기 쉽게 만든 언어 예) C, C++, python, Java 변환을 통해서 컴퓨터가 이해하여 실행된다 저급 언어 컴퓨터가 이해하고 실행하는 언어 기계어, 어셈블리어 기계어 0과 1로 표현되는 기계어 16진수로 표현될 때도 있음 기계어를 변환해서 사람들이 볼 수 있게 해 준 언어 어셈블리어 어셈블리어 0과 1로 이루어진 기계어를 읽기 편한 형태로 번역한 저급 언어입니다. 고급언어 고급 언어가 저급언어로 변환되는 방식에는 두 가지 방식이 있다 컴파일 언어 우리가 고급언어로 작성한 소스 코드를 컴파일러라고 하는 저급언어로 변환시켜주는 프로그램을 통해서 컴파일이 됩니다. 이때 컴파일된 소스코드는 0과 1로 이루어진 저급언어로 변환이 되는데..

데이터 0과 1로 숫자를 표현하는 방법 0과 1만 이해하는 컴퓨터가 3이나 4 이런 숫자를 어떻게 인식하는지 이런 걸 알기 위해 컴퓨터가 표현하는 정보 단위를 알아보고 0과 1만으로 숫자를 표현하는 방법도 알아보자 정보단위 비트 : 0과 1을 표현할 수 있는 가장 작은 정보 단위 1 비트는 두 가지 정보를 표현할 수 있다. 2비트는 4가지 정보 이를 보면 n비트는 2n가지 정보를 표현할 수 있다 바이트 : 8개의 비트를 하나로 묶은 단위 1바이트는 8비트 2의 8 제곱은(256개의 정보 ) 킬로바이트 : 1바이트 1000개를 묶는 단위 메가바이트 : 1 킬로바이트 1000개를 묶는 단위 기가바이트 : 1 메가바이트 1000개를 묶는 단위 테라바이트 : 1 기가바이트 1000개를 묶는 단위 1 바이트 (b..
컴퓨터 구조를 왜 배워야 하는가? 컴퓨터 구조를 배움으로써 소스 코드를 작성만 하는 개발자가 아닌 더 나아가 문제 해결 능력을 키우고 문제를 분석하는 능력을 키울 수 있어서 2, 성능 용량 비용 개발에서 제일 중요한 것들 자신이 웹사이트를 만들었다고 가정하고 그 웹 사이트가 유명해져서 게시글이 매일 100개씩 댓글이 1000개씩 생성된다고 했을 때 회원정보와 회원이 남긴 게시글과 댓글을 어떤 저장 장치에 저장할지도 스스로 판단해야 하는데 이런 부분 들어 알려면 컴퓨터 구조에서 성능 용량 비용을 알아야 합니다 프로그래밍 언어의 문법만 안다고 해결하기는 어려운 부분이다 컴퓨터 구조를 알면 입력과 출력에만 집중하는 개발자가 아닌 성능, 용량, 비용까지 고려하는 개발자가 될 수 있다. 컴퓨터 구조의 큰 그림 컴..
소셜 로그인 기능 client : 소셜로그인 기능을 사용하는 주체, 즉 서비스를 만드는 "나"이다. resource owner : 소셜로그인 기능을 제공하는 서비스를 사용하는 유저이다. 어떻게 보면 진짜 고객 인것! resource server : 소셜로그인 기능을 제공하는 곳, 그리고 그 기능을 제공하기 위한 데이터를 가지고 있는 진짜 서버이다. 일종의 우리가 만드는 서비스의 서버 기능을 하는 것. google, facebook, twitter 소셜 로그인 장점 로그인 간소화 : Facebook이나 Google 계정을 이용하면 버튼만 몇 번 클릭하여 타사 웹 페이지에 간편하게 로그인 할 수 있습니다. 비밀번호에 대한 의존도 감소 : 비밀번호 로그인의 근본적인 취약점 외에도 비밀번호를 하나 더 기억해야 ..
CORS(Cross-Origin Resource Sharing) - 교차 출처 리소스 공유 CORS 에러 이해하기 🚨 Access to fetch at ‘https://myhompage.com’ from origin ‘http://localhost:3000’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. If an opaque response serves your needs, set the request’s mode to ‘no-cors’ to fetch the resource with CORS disabled. 💬 'https://myhomepage.c..
암호화(양방향 암호화)와 해싱(단방향 암호화) 이전 시간에 회원가입을 하면 DB에 비밀번호가 그대로 저장되었습니다. 만약 DB가 해킹을 당하게 된다면 해커가 해당 서비스 사이트의 이메일과 비밀번호를 가져갈 수 있는데 일반적으로 많은 사람들이 여러 사이트에 동일한 이메일과 비밀번호를 사용하는 경우가 많으므로, 다른 서비스까지 추가 해킹을 당하는 일이 발생할 수 있습니다. 따라서, 기밀성을 유지하기 위해 DB에 비밀번호를 저장할 때는 비밀번호를 암호화(Encrypt) 하여 저장하게 됩니다. 암호화를 하여 저장을 하면 암호화에 사용된 키(비밀번호)를 통해 데이터를 복호화 할 수 있다 암호화를 구성하는 요소 양방향 암호화 : 암호화와 복호화과정을 통해 송 ・ 수신 간 주고받는 메시지를 안전하게 암호화하고 평문으..