efforthye의 등록된 링크

 efforthye로 등록된 네이버 블로그 포스트 수는 28건입니다.

[Javascript] 개발에 자주 쓰이는 ES6 Javascript 문법 5가지 [내부링크]

1. 화살표 함수 - 함수를 더 짧게 사용한다. // 기존 방식 let a = function() { console.log("function"); } a(); // 최신 방식 let a = () => { console.log("arrow function"); } a(); 2. 비구조 할당 - 딕셔너리의 키와 값을 빠르게 꺼낸다. 객체의 값을 꺼내 변수에 담을 때 할당 과정을 거치지 않으면서 딕셔너리의 키 값 그대로 변수 사용이 가능하다. //객체 let blog = { owner : "efforthye", url : "https://m.blog.naver.com/efforthye", getPost() { // 객체의 키값으로 함수를 가질수도 있다. console.log("ES6 문법 정리"); } }; //기존 할당 방식 let owner = blog.owner let getPost = blog.getPost(); //비구조 할당 방식 - good let { owner, getPos

[JavaScript] 원시 타입과 참조 타입의 개념 및 종류 [내부링크]

JavaScript 원시 타입과 참조 타입 JavaScript 에서는 데이터를 저장하는 두 가지 형식의 기본적인 타입인 원시 타입과 참조 타입이 있습니다. 오늘은 원시 타입과 참조 타입에 대하여 알아보는 시간을 가져 보도록 하겠습니다. 데이터 저장 기본 타입 :: 원시 타입 원시 타입 (Primitive) 단순한 데이터를 나타내며, 값이 변수에 직접 저장됩니다. 원시 타입에는 다음과 같은 종류가 있습니다. 1. 숫자(Number) 타입 정수 및 부동 소수점 숫자를 나타내며 C, Java 의 경우 정수와 실수를 구분하여 다양한 숫자 타입을 제공하지만, 자바스크립트는 독특하게 하나의 숫자 타입인 Number 만 존재합니다. ECMAScript 사용에 따르면 숫자 타입의 값은 배정밀도 64비트 부동소수점 형식을 따른다고 합니다. 이는 즉, 모든 수를 실수로 처리하며 정수만 표현하기 위한 데이터 타입이 별도로 존재하지 않음을 의미하며 정수로 표시된다고 해도 사실은 실수라는 것을 의미합니다.

[MongoDB] 몽고 디비(MongoDB)의 기본 개념 및 예제 [내부링크]

MongoDB 몽고디비(MongoDB)의 기본 개념 및 예제 몽고디비(MongoDB)는 분산형 NoSQL 데이터베이스 시스템으로, 오픈소스이며 문서 지향(Document-Oriented) 데이터베이스 시스템입니다. 몽고디비는 아파치 2.0 라이선스로 배포되어있으며, C++로 개발되었습니다. 이번 글에서는 몽고디비의 개념과 특징을 살펴보도록 하겠습니다. MongoDB :: 기본 개념 및 특징 몽고디비의 개념 MongoDB는 NoSQL 데이터베이스 시스템 중에서도 문서 지향 데이터베이스(Document-Oriented Database)에 속합니다. 문서 지향 데이터베이스는 관계형 데이터베이스(Relational Database)와 달리 테이블이나 레코드와 같은 구조를 가지지 않고, JSON 형태로 데이터를 저장합니다. 따라서 몽고디비에서는 데이터를 문서(Document)라는 개념으로 관리하며, 각 문서는 필드(Field)와 값(Value)으로 구성됩니다. 이미지 출처(공식문서) : ht

[Node.js] TCP(net 모듈)를 이용한 HTTP Server 구축 [내부링크]

Node.js TCP를 이용한 HTTP Server 구축 서버와 브라우저의 통신은 axios 등의 라이브러리를 사용해 간편하게 이용할 수도 있지만, 블록체인의 P2P(Peer to Peer) 이해를 위해 서버의 통신에 대해서도 기본적으로 알아야 할 필요가 있기 때문에 이번 포스팅에서는 TCP를 이용하여 HTTP 서버를 구축해 보려고 합니다. 사전 지식 :: Network OSI 7 Layer OSI 7 Layer는 통신을 진행하는 과정을 단계로 나눈 규칙입니다. 이름처럼 7단계로 나누어져 있으며, 하드웨어부터 프로그램까지 정보를 주고받는 과정입니다. TCP / IP OSI 7 Layer와 마찬가지로, 통신의 과정을 단계로 나눈 규칙입니다. TCP/IP는 OSI 7 Layer보다 많이 사용된다는 특징이 있습니다. TCP / IP의 각 단계 1. 네트워크 엑세스(Network Access Layer) 네트워크 액세스 계층은 물리적인 네트워크와의 연결을 관리합니다. 패킷이라고 칭하는 데이

[회고록] 기업 협약 프로젝트 - 1주차 [내부링크]

기업 협약 프로젝트 Forward Thinking 사실 이런 회고록을 작성해 보는 것이 처음이라, 어떤 말로 이야기를 풀어 나가야 할지 잘 모르겠습니다. 그래도 지난 한 주간 기업 협약 프로젝트를 진행하면서 무엇을 하고 어떤 것을 느꼈는지, 팀장으로서 반성해야 할 점은 무엇인지 다시금 한 번 돌아보는 시간을 가져 보려고 합니다. 일단 전체적으로 보았을 때, 프로젝트는 잘 진행 되어가고 있습니다. 안일한 생각일 순 있지만 다른 기업 협약 프로젝트 팀과 비교해 보아도 현재 기업 측과 의사소통도 잘 되고 팀원들도 자신의 역할을 잘 하며 전체적인 흐름이 원활하게 진행되고 있는 것 같아서 우리가 이번 기업 협약에서 가장 안정적으로 프로젝트를 진행하고 있다는 느낌을 가지고 있습니다. 하지만 현재 몇 가지 걱정되는 점은 다소 긴 기간(약 2개월, 이전에는 최대 3주까지 프로젝트를 진행) 동안 프로젝트를 진행하는 데 있어서 팀원의 건강이 악화되는 것과 팀원 중 한 명이라도 슬럼프에 빠지는 것입니다

[메타버스] ZEP Script로 메타버스 개발 맛보기! [내부링크]

메타버스 ZEP Script 최근 스파르타 코딩 클럽 강의 목록을 둘러보던 도중, 메타버스 개발에 관하여 새롭고 흥미로운 강의를 발견하였습니다. 오늘은 해당 강의의 내용인 ZEP의 기본 개념 및 ZEP Script를 활용한 메타버스 개발과 컨텐츠 프로그래밍에 대하여 간단하게 알아보고, 프로그램을 실제 배포하고 가볍게 플레이 해보는 시간을 가져보도록 하겠습니다. 기본 개념 :: ZEP과 ZEP Script란? ZEP ZEP은 웹 기반의 가벼운 메타버스 플랫폼입니다. ZEP은 웹 기반이기 때문에 모바일 앱에서든, 아이패드에서든, 데스크탑에서든 전부 작동하는 크로스 플랫폼의 특성을 가지고 있으며, 링크 하나로 쉽게 접속할 수 있어 접근성이 좋다는 장점이 있습니다. ZEP은 굉장히 직관적이고 쉬운 사용법을 가지고 있으며, 500명씩 채널이 분리되기 때문에 보다 안정적인 동시 접속 환경을 가지고 있다고도 할 수 있습니다. ZEP Script ZEP Script는 직관적이고 쉬운 코딩 언어인

[Windows] 비주얼 스튜디오 코드(Visual Studio Code) 다운로드 및 설치방법 [내부링크]

windows Visual Studio Code 설치 기존 사용하던 노트북을 바꾸게 되어서 VS Code를 새로 설치할 일이 생겼습니다. 오늘은 Visual Studio Code가 무엇인지에 대해 알아보고 다운로드 및 설치를 하는 방법에 대하여 알아 보겠습니다. 개념 :: VS Code란 무엇인가? VS Code(Visual Studio Code) VS Code란 마이크로 소프트(Micro Soft)에서 오픈소스로 개발한 프로그래밍 전용 텍스트 편집기입니다. Visual Studio에서 텍스트 편집 기능만을 추출하여 제작되었으며, 일렉트론(Electron) 프레임워크를 기반으로 만들어졌습니다. MS의 개발 툴 중 최초로 크로스 플랫폼을 지원하는 에디터이며 윈도우, MacOS, Linux를 모두 지원합니다. 확장 프로그램을 설치 및 사용하여 편리하게 개발을 진행할 수 있습니다. 확장 프로그램으로는 Prittier, Live Server 등이 있습니다. windows :: VS Code

[Windows] 깃(Git) 다운로드 및 설치방법 [내부링크]

Windows Git 설치 기존 사용하던 노트북을 바꾸게 되어서 Git을 새로 설치할 일이 생겼습니다. 오늘은 Git이란 무엇인지에 대하여 간단하게 알아 보고, 다운로드 및 설치를 하는 방법에 대하여 알아 보겠습니다 :) 기본 개념 :: Git이란 무엇인가? 깃(Git) Git은 분산 버전 관리 툴으로, 로컬 저장소와 원격 저장소라는 개념이 존재합니다. 저장소(repository)는 파일(data)과 로그를 모두 기록하며 현재 파일을 그대로 저장(snapshot)하여 기록(log)합니다. 기록한 내용(commit)을 기준으로 이전으로 되돌릴 수도 있습니다. 기본적인 명령어로는 clone, add, commit, push, pull 등이 있습니다. clone : 원격 저장소를 다운로드 받는 명령어입니다. add, commit, push : 각각의 명령어를 add, commit, push 순서로 진행하여 원격 저장소에 현재 파일을 저장합니다. pull : 원격 저장소에 저장된 최신 내역

[ChatGPT] Chat GPT를 간단하게 구현하는 자바스크립트 코드를 작성해줘 [내부링크]

Q&A - 20230313 :: 질문 및 응답 Q : Chat GPT를 간단하게 구현하는 자바스크립트 코드를 작성해줘 A : Chat GPT를 구현하려면 OpenAI API와 상호작용하는 코드가 필요합니다. OpenAI API는 인증 토큰이 필요하며, 이 토큰은 OpenAI 웹사이트에서 발급받을 수 있습니다. 여기서는 OpenAI API를 사용하여 간단한 대화 기능을 제공하는 Chat GPT 코드를 작성해 보겠습니다. 먼저, axios 패키지를 사용하여 OpenAI API에 HTTP 요청을 보내는 코드를 작성합니다. 다음 코드는 axios 패키지를 사용하여 OpenAI API의 /completions 엔드포인트로 요청을 보내고, 응답으로 받은 결과 중에서 choices 배열의 첫 번째 요소의 text 필드를 반환하는 getAIResponse 함수를 정의합니다. const axios = require('axios'); async function getAIResponse(prompt)

[Solidity] 최소한의 정보로 토큰(Token) 구현해보기 [내부링크]

Solidity Test Token Contract 오늘은 Solidity와 조금 더 친해질 겸 Token이란 무엇인지 간단하게 알아보고, 최소한의 정보를 가진 Test Token Contract를 구현한 뒤 Metamask에서 해당 Token을 확인해 보는 시간을 가져 보도록 하겠습니다. 기본 개념 :: Token 이란 ? 토큰(Token) 블록체인에서 토큰은 블록체인 네트워크에서 권한이나 자산을 나타내는 디지털 자산을 말합니다. 블록체인에서 토큰은 특정 목적을 가진 플랫폼 내에서 사용되는 유틸리티 토큰, 자산을 대체하는 암호화폐, 또는 보안 토큰 등 다양한 형태로 존재할 수 있습니다. 이러한 토큰은 블록체인 기술의 특성상 분산된 거래 시스템에서 안전하고 신뢰성 있는 거래를 가능하게 하며, 특히 스마트 컨트랙트 기능을 제공하는 블록체인에서는 토큰을 사용하여 복잡한 거래를 자동화하고 프로그래밍 가능한 기능을 구현할 수 있습니다. Ethereum 기반의 Token 대표적으로 많이 알려

[Ethereum] 메타마스크(Metamask) 확장 프로그램 설치 및 사용 방법 [내부링크]

Ethereum Metamask 설치 오늘은 Metamask 가 무엇인지에 대해 알아보고, Metamask를 설치 하는 방법에 대하여 알아 보겠습니다. 기본 개념 :: Metamask 란? 메타마스크(Metamask) Metamask란 이더리움 블록체인과 상호 작용하기 위해 웹 브라우저 및 모바일에서 사용할 수 있는 이더리움(Ethereum) 기반의 암호화폐 지갑입니다. 사용자가 이더리움과 토큰을 편리하게 저장할 수 있으며 구글 웹 브라우저에서 플러그인 방식으로 사용되는 크롬 확장 프로그램입니다. 또한 다른 이들로부터 토큰을 수신할 수 있으며, 코인베이스* 및 셰이프시프트*의 자체 기능을 통애 이를 구매/교환할 수도 있습니다. 현재 메타마스크는 월간 활성 사용자가 2,100만 명이 넘는 가장 인기 있는 암호화폐 지갑 중 하나입니다. 코인베이스(Coinbase) 디지털 자산 거래소로, 비트코인, 이더리움, 리플 등 다양한 암호화폐 거래를 지원합니다. 미국을 비롯한 다양한 국가에서 서비

[Geth] Ubuntu에서 Golang과 Geth를 설치 및 실행하는 방법 [내부링크]

우분투가 설치되어 있지 않다면 이 글을 참고해주세요. [Ubuntu] WSL을 설치하여 Windows에서 Linux(Ubuntu) 사용하는 방법 Windows to Linux WSL WSL이란 Windows SubSystem for Linux의 약자로, 윈도우에서 Linux O... blog.naver.com Blockchain Private ethereum 서버 Ethereum에는 Mainnet과 Private Ethereum 서버가 있습니다. 오늘은 Private Ethereum IPC, RPC 서버를 열어보기 이전에 Geth를 설치해보고 환경 변수를 설정한 뒤 Mainnet 서버 실행까지 해보는 시간을 가지겠습니다. 설치 :: Go와 Geth 설치하기 Geth(Go-Ethereum) Geth란 이더리움에서 제공하는 공식 소프트웨어이자 Go로 구현된 이더리움 서버입니다. Go는 Google에서 개발한 프로그래밍 언어입니다(컴파일 언어). 이름은 Go 이지만 검색 등에서 불편하기

[Ganache] Metamask의 정보를 HTML에 띄워 트랜잭션 보내기 [내부링크]

Metamask가 설치되어 있지 않으신 분은 해당 글을 참고해주세요. 메타마스크는 어떻게 설치하나요? - 업비트 투자자보호센터 메타마스크는 아직까지 인터넷 익스플로러나 엣지에서 기능을 지원하지 않으므로 크롬 브라우저를 기준으로 메타마스크를 설치하는 방법을 설명해 드리겠습니다. ① 크롬 브라우저에서 확장 프로그램 설치 페이지 접속 및 추가 크롬 브라우저에서 다음과 같은 확장 프로그램 설치 페이지에 접속하고 “Chrome에 추가” 버튼을 클릭해서 확장 프로그램을 설치합니다. https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn?hl=ko ② 확장 프로그램 탭에서 m.upbitcare.com 가나슈(Ganache)가 설치되어 있지 않으신 분은 해당 글을 참고해주세요. Ganache 설치와 MetaMask 연동 - 파이썬 블록체인 프로그래밍 3 스마트 컨트랙트 개발 환경 Ganache(가나슈)는

[Web3.js] HTML에 Metamask 잔액 띄우고 Ganache, Geth 서버에 Transaction 보내기 [내부링크]

Ganache :: web3.js로 Ganache 서버에 트랜잭션 보내기 1. 우분투에서 가나슈 서버를 열어줍니다. source ~/.bashrc npx ganache-cli 2. web3.js와 index.html 파일을 생성합니다. index.html <html lang="ko"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> </body> </html> 3. html의 title 위에 web3.js 라이브러리를 가져옵니다. <script src="https://cdn.jsdelivr.net/npm/web3@latest/dist/web3.min.js"></script> 4. body

[Portfolio] Blockchain Explorer, Etherscat [내부링크]

Web3 + Geth Blockchain Explorer 개발 학원에서 팀 프로젝트 조 편성을 위한 실력 테스트용 개인 프로젝트를 진행하였습니다. React로 보여지는 페이지를 구성하고, Node.js 서버를 구축하고, Geth 블록체인 네트워크의 정보들을 MySQL database에 저장하여 화면에 빠르게 나타날 수 있도록 하였고, 최종적으로는 web을 Metamask 와 연동하여 트랜잭션을 보내 보았습니다. 개요 :: 블록, 트랜잭션, 지갑 주소에 대한 모든 정보 확인 개발 기간 : 1주일(2023. 2. 16. ~ 2023. 2. 23.) 개발 인원 : 1명(개인 프로젝트) Tech Stack : React(styled component), Node.js(express), MySQL, MetaMask, Web3, Geth 구현 최소 기능(과제) 블록, 트랜잭션, 지갑 주소 정보 출력 Block 등의 정보 저장 및 출력 프로젝트 깃허브 : https://github.com/eff

[Solidity] 간단한 Counter DApp 만들어보기 [내부링크]

Solidity Counter DApp 오늘은 Solidity의 기본 개념 및 활용 방법을 이해하기 위하여 Ganache 이더리움 네트워크에 간단한 스마트 컨트랙트를 배포하여 보고, 웹 사이트 상에서 간단하게 스마트 컨트랙트의 메서드를 호출하여 ganache 네트워크의 스마트 컨트랙트 값에 접근하여 해당 컨트랙트의 값을 변경하여 보는 시간을 가져 보도록 하겠습니다. Setting :: 기본 폴더 및 라이브러리 세팅 cd projectFolder yarn create react-app front cd front yarn add axios web3 cd .. mkdir back cd back npm init -y npm i truffle express cors web3 npm i prettier-plugin-solidity npx truffle init Setting :: 프로젝트 기본 세팅 1. 우선 Ubuntu에서 Ganache를 실행합니다. source ~/.bashrc ganac

[Solidity] 솔리디티의 기본 개념 (CryptoZombie - 1) [내부링크]

컨트랙트(contract) - 솔리디티 코드는 컨트랙트 안에 싸여 있다. - 컨트랙트는 이더리움 애플리케이션의 기본적인 구성 요소이다. 모든 변수와 함수는 어느 한 컨트랙트에 속한다. - 컨트랙트는 우리의 모든 프로젝트의 시작 지점이라고 할 수 있다. - 아래는 비어 있는 HelloWorld 컨트랙트이다. contract HelloWorld { } 라이센스(License) - 컨트랙트 파일에서 라이선스 표기는 필수라고 한다. - 최상단에 어떤 라이센스를 사용하는지 적어준다. // SPDX-License-Identifier: MIT 버전 플라그마(Version Pragma) - 모든 솔리디티 소스 코드(컨트랙트)는 version pragma로 시작해야 한다. 이는 해당 코드가 이용해야 하는 솔리디티 버전을 선언하는 것이다. 이를 통해 이후에 새로운 컴파일러 버전이 나와도 기존 코드가 깨지지 않도록 예방한다. - Version Pragma를 선언하는 방법 pragma solidity ^

[Solidity] 솔리디티 학습 재미있게 하기 [내부링크]

Solidity 크립토 좀비(Crypto Zombie) Solidity는 이더리움 팀에서 만든 이더리움 프로젝트의 주요 언어입니다. JavaScript(특히 TypeScript)와 비슷하기 때문에 해당 언어를 배웠다면 어렵지 않게 Solidity 언어 또한 학습할 수 있을 것입니다. 또한 오늘은 이러한 Solidity 언어를 게임처럼 쉽게 배울 수 있는 사이트인 크립토 좀비(Crypto Zombie)를 소개하려고 합니다. Solidity 학습 사이트 크립토좀비 - 이더리움 게임을 만드는 법을 학습하세요. Loom Network가 개발했습니다. 크립토좀비는 학습자가 크립토 수집품 게임을 직접 만들어 봄으로써 솔리디티로 스마트 컨트렉트를 작성하는 방법을 배우도록 하는 대화형 코딩 스쿨입니다. cryptozombies.io 1. 우선 사이트에 들어가 보면 우측 상단에 Courses가 있습니다. 유의할 점 : 크립토 좀비 사이트 자체 한국어 번역을 사용하지 말고 영문으로 사용하되 구글 자동

[1984] Careless Whisper - 조지 마이클 [내부링크]

조지 마이클 Careless Whisper Careless whisper는 잃어버린 사랑에 대한 1980년대의 노래입니다. 영국 가수 겸 작곡가인 George Michael(조지 마이클)과 뮤지컬 듀오인 Whan이 발표하였습니다. Careless whisper의 가사에서 마이클은 파트너와의 관계 상실에 대해 애도합니다. 문제의 관계는 다른 여자와 바람을 피운 이후에 끝났으며, 여자에 의해 발견된 남자의 관점으로 이야기가 진행됩니다. 그의 배신은 결과적으로 그를 상심하고 외롭고 후회로 가득 차게 하였습니다. 이 클래식 곡의 주요 하이라이트는 전설적인 색소폰 라인인데, 이는 재즈 색소폰 연주자인 Steve Gregory가 연주하였습니다. 가사 I feel so unsure as I take your hand and lead you to the dance floor. 당신의 손을 잡고 댄스 플로어로 데려가는데, 나는 무언가 불안해요. As the music dies, something i

[프로그래머스] 폰켓몬 [내부링크]

해시 폰켓몬 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 ... school.programmers.co.kr 문제 설명 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다.

[Ubuntu] WSL을 설치하여 Windows에서 Linux(Ubuntu) 사용하는 방법 [내부링크]

Windows to Linux WSL WSL이란 Windows SubSystem for Linux의 약자로, 윈도우에서 Linux OS를 사용하게 해주는 서비스입니다. Linux OS에는 Ubuntu, cent OS, Redhat 등이 있으며 Linux는 Unix 기반의 OS입니다. Mac OS 또한 Unix 기반의 OS입니다. WSL은 VM(Virtual Merchine)과는 조금은 다릅니다. VM은 OS상에서 다른 OS를 설치하여 사용하며 하드웨어 성능을 나눠서 사용하지만, WSL은 Linux의 기반을 설치하지 않고 Windows의 기반을 사용하여 Linux를 실행합니다. 또한 Linux의 Kernel을 사용하지 않습니다. 이의 장점은 성능 저하가 크지 않다는 것입니다. 예전에는 OS 충돌이 잦았으나 많은 패치로 인해 요즘은 상당히 적어진 상태입니다. 오늘은 Ubuntu 명령어 사용에 익숙해질 겸 이러한 WSL에 Ubuntu를 설치하고 실행하는 방법에 대하여 알아보도록 하겠습니다

[Ubuntu] 우분투에서 Node.js 를 설치하고 프로젝트를 실행하는 방법 [내부링크]

Ubuntu Node.js 설치 및 NVM을 통한 버전 관리 우분투가 설치되어 있지 않다면 이전 글을 참고해주세요. [Ubuntu] WSL을 설치하여 Windows에서 Linux(Ubuntu) 사용하는 방법 Windows to Linux WSL WSL이란 Windows SubSystem for Linux의 약자로, 윈도우에서 Linux O... blog.naver.com Ubuntn - 01 :: Node.js 설치 1. 프로젝트를 실행하기 위하여 우분투 창을 켜고 Node.js를 설치하여 줍니다. 아래의 명령어를 입력하고 자신의 패스워드를 입력하여 Node.js를 설치합니다. sudo apt-get install nodejs 2. 설치 이후 운영체제에서 사용 가능한 패키지들과 그 버전에 대한 정보를 업데이트 합니다. sudo apt-get update 3. 운영 체제에 apt-get install 명령으로 설치한 패키지들을 최신 버전으로 업그레이드 합니다. sudo apt-get

[프로그래머스] 크레인 인형뽑기 게임 [내부링크]

2019 카카오 개발자 겨울 인턴십 크레인 인형뽑기 게임 코딩테스트 연습 - 크레인 인형뽑기 게임 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차... school.programmers.co.kr 문제 설명 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은

[JavaScript] parseInt() 메서드를 사용하지 않고 진수 변환 함수 직접 만들어보기 [내부링크]

진수 :: 간략한 설명 Hex : Hexadecimal Hex는 16진수입니다. SHA256 등으로 암호화했을 때 나오는 수 입니다. Dec : Decimal Dec는 10진수 입니다. Oct : Octal Oct는 8진수 입니다. Bin : Binary Bin은 2진수입니다. 컴퓨터가 사용하는 수입니다. Bin to Dec :: 2진수를 10진수로 변환하는 함수 function bin2dec(bin){ let value = 0; for(let i = 0; i<bin.length; ++i){ value += +bin[i] * 2 ** (bin.length - 1 -i); } return value; } * 함수 변환 확인 방법 : 해당 함수를 호출하고 변환하고 싶은 값을 string으로 집어넣은 뒤 그 것을 console.log()에 찍어봅니다. ex) console.log(bin2dec("100101011")); Dec to Bin :: 10진수를 2진수로 function dec2

[Node.js] nodeMailer 모듈로 메일 전송하기 [내부링크]

nodeMailer 란? Node.js에서 email을 쉽게 보낼 수 있게 해주는 모듈입니다. 메일을 단순한 text는 물론 HTML 형식으로 전송할 수 있습니다. gmail 뿐만 아니라 naver 등의 계정으로도 메일을 전송할 수 있습니다. 이메일 인증번호 구현 0. 준비물 이메일을 보낼 본인의 Gmail 계정 이메일을 보낼 본인 Gmail 계정의 2단계 비밀번호 - 2단계 비밀번호 생성 방법 [구글 로그인 후 google.com 이동] - [오른쪽 상단의 ⁙ 아이콘 클릭] - [Google 계정 클릭] - [왼쪽의 보안 탭 클릭] - [스크롤 내려 "Google에 로그인" 까지 이동] - [2단계 인증 클릭] - [본인 인증] - [앱 비밀번호 추가 부분에서 앱선택 : "메일", 기기선택 : "Windows 컴퓨터" 선택] - [생성] --> 생성된 16자리의 2단계 비밀번호 코드를 확인할 수 있다. 1. Node.js 폴더에 nodeMailer 라이브러리를 설치합니다. npm

[AWS] 계정 보안 설정하기 [내부링크]

AWS 요금 폭탄을 피하자 AWS(아마존 웹 서비스)에 관하여 서치하다 보면, 계정을 해킹당하여 적게는 몇 천 원부터 많게는 3억이 넘어가는 요금 폭탄의 피해를 본 사람들의 글들을 심심치 않게 찾아볼 수 있습니다. AWS는 이러한 경우의 환불에 대하여 조금은 관대한 편이라 유저가 예상치 요금 폭탄을 맞았을 때 환불을 잘 해주는 편이지만, 만약 실제로 그런 일을 당하게 된다면 아무 일에도 집중할 수 없겠죠? 그러한 정신적 손해를 미리 예방하기 위해 오늘은 AWS의 2단계 보안(MFA)을 설정하는 방법에 대하여 포스팅하려고 합니다. 휴대폰에 Google OTP 어플을 설치합니다. Google OTP는 고정된 비밀번호가 아닌 무작위로 생성되는 일회용 비밀번호를 이용하는 본인 인증 수단입니다. AWS에 로그인하여 보안 자격 증명 페이지로 이동합니다. 우선 AWS에 로그인 한 뒤 우측 상단의 계정을 클릭하여 줍니다. 그러면 '보안 자격 증명'이라는 메뉴가 나타납니다. 이를 클릭하여 보안 자격

[Node.js] Express Server 개발환경 구축 [내부링크]

Node.js Express Server 개발환경 구축 안녕하세요 오늘은 Node.js 웹 어플리케이션 프레임워크인 Express를 활용하여 웹 개발을 위한 RESTful API 서버 개발 환경을 구축하는 시간을 가져보도록 하겠습니다. 0. 우선 기본적으로 자신의 운영체제와 맞는 Node.js 를 PC에 설치하여 줍니다. Node.js 다운로드 공식 홈페이지 다운로드 | Node.js Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 설치가 잘 되었는지 cmd에서 node.js 버전을 확인하여 봅니다. node -v 1. 이제 VSCode 등의 소스 코드 편집기로 프로젝트 폴더 내부에 Node.js 서버로 만들 서버 디렉토리(server)를 생성합니다. 2. 터미널에서 해당 폴더까지 접근합니다. cd server 3. npm init -y를 하여 node.js의 패키지를 생성하여 줍니다

[Geth] Geth로 Private ethereum 서버 열기 - 임시 저장입니다. [내부링크]

우분투가 설치되어 있지 않다면 이 글을 참고해주세요. [Ubuntu] WSL을 설치하여 Windows에서 Linux(Ubuntu) 사용하는 방법 Windows to Linux WSL WSL이란 Windows SubSystem for Linux의 약자로, 윈도우에서 Linux O... blog.naver.com Blockchain Private ethereum 서버 Ethereum에는 Mainnet과 Private Ethereum 네트워크가 있습니다. 오늘은 geth로 private ethereum 서버를 열고 계정을 생성한 뒤 블록 마이닝 및 트랜잭션을 해볼 것입니다. 01 :: Go와 Geth 설치하기 Geth(Go-Ethereum) Geth란 이더리움에서 제공하는 공식 소프트웨어이자 Go로 구현된 이더리움 서버입니다. Go는 Google에서 개발한 프로그래밍 언어입니다(컴파일 언어). 이름은 Go 이지만 검색 등에서 불편하기 때문에 Golang 이라고 부릅니다. 1. 우선 우분투