블록체인 기반 핀테크 및 응용 SW개발자 양성과정 일기 (184) 썸네일형 리스트형 [35일차 복습 및 정리] JavaScript try... catch... finally 란? 사용법, 특징, 예외처리, throw도 함께 써보기 연습 try .. catch... finally 1. 기본 frame try{ 내가 실행할 코드 }catch(e){ // e 또는 err 또는 error 아무거나 변수명으로 입력! 코드에 에러가 발생되면 여기에 실행할 코드 (error handling) } 1. 설명 1. try { ... } 의 코드 실행 -> 에러가 없다면 try 만 실행하고 catch는 건너 뛴다. -> 에러가 있다면 -> 2. try{ ... } 코드 실행이 중단되고 catch{ ... } 로 제어 흐름이 넘어감. -> 에러가 나도 catch에서 에러 처리하기 때문에 스크립트는 죽지 않는다. try 안의 코드를 실행, 예외(exception)이 발생(throw) 할 경우의 응답을 지정한다. throw = 예외가 발생하는 경우 무엇을 할.. [35일차 20210430] 비동기 / 동기 / 콜백함수 / promise / promise.all / async await --------------------------------------------------------------1교시---------------------------------------------------------- promise / 콜백함수 / 동기 / 비동기 개념 동기 방식 A가 요청하면 server가 응답할 때까지 기다리는 거 - > server도 다른 요청을 안받고 A의 요청을 처리할 때까지 B의 요청을 처리 안함 ex) console.log에 찍히는거 비동기 방식 A가 요청하면 server가 응답할동안 A는 개인 일, server도 할일 함. A의 요청 진행과 무관하게 B의 요청 들어오면 처리함 ex) console.log('start1'); setTimeout(()=>{ console.l.. [34일차 복습 및 정리] node.js proto prototype 이란 ? __proto__ / Prototype Object 분석 오늘 공부한 내용 proto, prototype ???? 기억도 잘 나지 않는 ㄷ ㅏ...... 다시 보면서 하나하나 복습해보자............... prototype JavaScript는 Class 라는 개념이 없다. 그래서 기존의 객체를 복사(Cloning) 하여 새로운 객체를 생성하는 prototype 기반의 언어이다. prototype 기반 언어는 객체 원형인 prototype을 이용하여 새로운 객체를 만들어 낸다. 이렇게 생성된 객체도 또 다른 객체의 원형이 될 수 있다. prototype은 객체를 확장하고 객체 지향적인 프로그래밍을 가능하게 함. prototype은 크게 두가지로 해석 됨 1. prototype 속성 2. proto 속성 (객체멤버) 요 두가지의 차이를 이해하려면 JS의 .. [34일차] 20210429 proto prototype Object etc function Person(){ this.eyes=2; this.nose=1; } //새로운 객체 생성 let kim = new Person(); let park = new Person(); console.log(kim.eyes); this = Person this = 자기 자신 Function과 Object의 차이 ? JavaScript 한해서 차이는 없다. 객체도 결국 함수이다. console.log(kim.eyes) //2 -> 이렇게 된 이유 Person Function 이 kim , park 에 적용됨 실질적으로 변수 4개 만든 것 kim이라는 변수에 eyes라는 것을 가져온다. function Person(){ this.eyes=2; this.nose=1; } //새로운 객체 생성 let k.. [33일차 복습 및 정리] node.js connection pool 이란? 노드 제이에스 커넥션 사용법 Connection pool (CP) 소프트웨어 공학에서 데이터베이스로의 추가 요청이 필요할 때 연결을 재사용할 수 있도록 관리되는 데이터베이스 연결의 캐시이다. ( ? ) 쉽게 생각하면 DB에 미리 연결된 connection을 미리 만들어 놓은 후 Pool에 보관하였다가 필요할 때 pool 에서 connection을 가져다 사용한 후 다시 server에 반환하는 것 사이트에서 client가 ----요청 ---> 백엔드 서버에서 DB서버에 접속해서 query 를 실행하게 된다. CP를 사용하면 접속 / 연결의 과정을 최소한으로 줄일 수 있어서 소요 시간, 서버 자원을 아끼고 과부하를 줄일 수 있다. 필요할 때 빌리고 다 쓰면 돌려줘서 원활하게 만든다. 어제까지 배운 DB와 연결하는 connection은 .. [33일차] 20210428 node.js connection pool 이론 / 코드 --------------------------------------------------------1교시 이론수업-------------------------------------------------- Client -------------------요청 get (http규격)-------> Server -----------------query문(ex. select * from ...)---------> DB Client server도 안됨 과부하를 어느정도 해소하고 싶어서 connection pool 이라는 거 Pool 개념의 일종 어떤 서버든 왠만한 bd접속은 connection pool로 이루어져 있음. DB - 접속할 때 mysql + connection 사용 Server -----query 사.. [32일차 복습 및 정리] 라우터 / middle-ware 사용해서 node.js express 서버 분산 관리 middle-ware, 미들웨어란? / next() 사용법 Router, 라우터는 node.js express로 서버를 만들 때 필수가 아니지만 쓰면 좋은 점 -> 파일들을 분산시켜 관리에 용이함. 오늘 라우터, 미들웨어를 배웠는데 이해가 잘 되지않아서 다시 찾아봤다. Middle ware (softward glue) = pipe 의 기능 middle ware란 양 쪽을 연결하여 데이터를 주고 샆을 수 있도록 중간에서 매개 역할을 하는 소프트웨어, 네트워크를 통해 연결된 여러 개의 컴퓨터에 있는 많은 프로세스들에게 어떤 서비스를 사용할 수 있도록 연결해주는 소프트웨어이다. 3계층 client / server 구조에서 middle ware 가 사이에 존재. 웹브라우저에서 데이터베이스로부터 데이터를 저장하거나 읽어올 수 있게 공통 서비스 및 기능을 애플리케이션에 제.. [32일차] 20210427 라우터 middle ware 사용해서 express server 분산시켜 만들기 배움 라우터 없어도 서버를 만들 수 있지만 많은 정보 (?) 가 들어갈 수록 떠 깔끔하게 + 더 관리를 잘 하도록 쓰는거다. middle ware url 바로 써서 보내기 -> get input form -> post Client가 req 요청 보낼 때 app.get('/', ()) 이 처리되기 전 middle ware 를 거침 (라우터) 사실 * 도 middle ware 이다. (쉽게 설명위해 위와같이 설명) /* middle ware */ const express = require('express'); const app=express(); app.get('/', (req,res)=>{ res.send('Good morning'); }) app.listen(3000,()=>{ console.log('erve.. [31일차 복습] req, res 배열, 객체 연습 교실을 바꿔서 1. mysql, node.js 설치 2. js terminal 명령들 npm init npm istall express npm install nunjucks chokidar npm install body-parser npm install mysql npm install dotenv 3. mysql source + path 까지 다시 연습을 후딱 하게 되었는데 좋은 연습이었다. 그동안 게시판 만드느라 까먹었던 내용들 다시 블로그 보면서 복습할 수 있었다. 앞으로 방향 앞으로 배울 것은 라우터, ajax, javascript 심화문법, db접목한 to do list 을 배울 예정 blckchainetc.tistory.com/71 Router, 라우터란? API란? AJAX란? 비동기란? 특징.. [31일차] 20210426 게시판 만들기 점검 , order by idx ---------------------------------------------------------1교시---------------------------------------------------- 교실을 바꿔서 다시 1. mysql, node.js, JS 설치 2. JS terminal 에서는 npm init npm install express npm install nunjucks chokidar npm install body-parser npm install mysql npm install dotenv 3. mysql prompt 창에서는 source +path; ---------------------------------------------------------2교시---------------.. [30일차 복습2 / 숙제 ] node.js express서버 구축, 게시판 만들기 수정, 삭제, 조회수 올리기 - mysql DB연결 *{ margin:0; padding:0; } a{ text-decoration: none; } ul,li{ list-style: none; } 1. DB 연결부터 다시 해보기 SQL by vs CREATE DATABASE homepage7; use homepage7; CREATE TABLE board( idx INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, subject VARCHAR(100) NOT NULL, writer VARCHAR(50) NOT NULL, content text, today datetime default CURRENT_TIMESTAMP, hit INT(11) ) AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4; auto_i.. [30일차 복습] node.js로 서버, 게시판 만들기 node.js template css 연결하기 mysql DB 연결하기 배열 for item in 변수 endfor node.js html +css : nunjucks template에 css 연결하기 node.js (server) 에 html을 연결한다는 것은 html을 server가 가져오는 것 css도 일반html에 이렇게 그대로 쓰면 X server가 html을 가져오듯 css를 가져와야함 express 안의 기본값으로 구현 가능 JS 추가 내용 app.use(express.static('public')); app.use(express.static('public')); //정적파일 = css, js, image, 동영상 // express 야 나 정적파일들은 (public) 안에 있는 내용으로 만들꺼야 express의 use?? or static??이라는 method를 활용 - 안에는 해당 css가 들어갈 폴더.. nunjucks 정리 if, for문 % 변수, 배열, 요소 nunjucks Nunjucks의 변수 {{ }} nunjucks에 건네주는 쪽에서 {{변수}} 를 넣어 줘야 한다. if, else, endif 프로그래밍에 사용할 연산자를 사용할 경우 {% %} 을 사용한다. {% for [변수] in [배열]} {{[변수],[요소]}} {% endfor %} block, endblock include와 같은 개념 A.html {% block content %} {% endblock %} B.html {% extends "A.html" %} {% block content -%} (B.html에서만 보여줄 내용들 ㅇㅇㅇㅇㅇㅇ) {% endblock %} -> A.html 의 블록 부분에 B.html에서 보여줄 내용들이 보이게 된다. set 설정에 사용하는 거 set t.. [30일차] 20210423 node.js로 게시판 만들기 mysql연결, create table by Visual Studio CRUD 기본 -------------------------------------------------------------------1교시------------------------------------------------------- Nunjucks if, for문 {% for [변수] in [배열]} {{[변수],[요소]}} {%forend %} velog.io/@pkbird/Nunjucks-basic Nunjucks 정리 Nunjucks의 완전 기초적인 기능만 정리해보았다. velog.io nunjucks template에 css연결하기 res.render('join',{ name:req.body.user_name, id:req.body.user_id, pw:req.body.user_pw, }) 가져와서 뿌려.. mySQL Primary key PK 뜻, 의미, 특징 정리 Primary Key (PK), 기본키 - 해당 테이블에서 가 ~ 장 기본적인 값 (행을 고유하게 구분해 주는 최소의 정보) - 단일값(Unique) ex)주민등록증처럼 - 하나 이상의 컬럼이 그룹화되어 기본키로 쓰일 수 있음 (그 column, 여러개의 컬럼들의 그룹을 *candidate key 라고 함. ) - 한 테이블에 세 개의 candidate key(회원번호, 주민번호, - 기본키는 null 상태가 될 수 없다. - 모든 테이블에는 PK가 반드시 존재해야하며 단 1개만 존재해야 한다. - 관계형 db상 모든 테이블은 반드시 하나의 기본 키를 가져야함. (최선) - 관례상 테이블의 첫 번째 컬럼을 pk로 하지만 반드시는 아님. - create table 명령어 사용할 때 꼭 잊지말자. pk만들기.. [29일차 복습 정리] express로 서버 만들기 html, mariaDB 연결하기 1. 오늘 한 최종js, html2개, env 외우기 2. 어제 한거 app.post 부분 외우기 3. 다시 새로운 파일 만들어서 따라 해보기-> 내일.. 4. 숙제하기 1. 외우자 express-> nunjucks -> body-parser -> mysql -> dotenv ------------------------------------------------------안보고 쳐보기 1----------------------------------------------------------- -> connection 부분 보고침 -> 문제 : env - database, password 부분만 안됨. -> 문제 해결 ! .env 파일을 views 파일 안에 넣어놓아서 안됐다. JS require('dot.. [29일차 zoom수업] 20210422 node.js 총복습 ( express, app.post, app.get, mariaDB, dotenv / express로 서버 만들기 ) 줌 수업 장점 : 9시에 일어나도 된다 너무 좋다 단점 : 졸림.. 어제 html, js를 다 못외움. 오늘 남은거 외우기 ** ----------------------------------------------------------1교시--------------------------------------------------------- 숙제 검사 찾는거는 학원에서 한 것밖에 못했다 오늘 다시 하자! ??? 나오면 한글의 인코딩의 문제이구나 ~ 라고 인지하기 가변적이면 varchar 고정적이면char (ex. 남자, 여자 이렇게 정해져있으면) -----------------------------------------------------------2교시----------------------------.. [28일차 복습] mariaDB 다운로드 및 설치 / Mariadb mysql 명령어 정리 / nunjucks .env (보안위해) mysql (DB 내용 가져오기 위해) 실제로 mariaDB에서 data 가져오기까지 mariaDB 다운로드 및 설치 Mariadb 설치 방법 offbyone.tistory.com/199 Windows 10에 MariaDB 설치하기 개발용으로 Windows 10 PC에 MariaDB 를 설치해 봅니다. 1. http://mariadb.org/ 에 접속하여 다운로드 페이지로 들어갑니다. 2. 실제 다운로드 URL은 https://downloads.mariadb.org/ 입니다. 현재 안정 버전은.. offbyone.tistory.com Maria DB 다운 주소 https://downloads.mariadb.org/downloads.mariadb.org/ Downloads - MariaDB downloads.mariadb.org 비밀번호 입력 (아무거나!) 오늘 배운 내용은 DBMS 중 하.. [28일차]20210421 node.js mySQL dotenv 설치 연결 app.port app.get 등 1. Mariadb 설치 방법 offbyone.tistory.com/199 Windows 10에 MariaDB 설치하기 개발용으로 Windows 10 PC에 MariaDB 를 설치해 봅니다. 1. http://mariadb.org/ 에 접속하여 다운로드 페이지로 들어갑니다. 2. 실제 다운로드 URL은 https://downloads.mariadb.org/ 입니다. 현재 안정 버전은.. offbyone.tistory.com Maria DB 다운 주소 https://downloads.mariadb.org/ ------------------------------------------------------------------------------------------------------------- Ser.. [27일차 복습] node.js 와 html연결하기 view engine 이용하여 html load /nunjucks chokidar body-parser post&get QuerySting이란? 오늘 배운 것은 node.js 서버에 html 를 연결해서 html의 값을 서버로 다시 보내서 사용자에게 html page를 보내는 것 맞는지도 모르겠지만 일단 js, html쓰는거 다 외우고 분석해보자아~~~~~~~~~ 1. views 폴더 에 index.html 파일 만들기 - sendfile 로 html을 보낼 수 있으나 단순히 html만 나옴 => 그래서 view engine 이라는 것을 사용해야함 = > 이것은 node.js 자체 내장이 아니어서 npm을 사용해 다운 받기. *view engine : The view engine is what's responsible for rendering your view, and converting your code into glorious HTML. As.. [27일차 zoom 수업] 20210420 node.js html 연결하기 / nunjacks / body-parser 설치 / post & get // views 폴더 만들기 > 안에 index.html 만들기 //sendfile 로 html 파일을 보낼 수 있는데 단순히 html 만 보내게 됨 //그래서 view engine 이라는 걸 사용해야함. //view engine= 사용자한테 간 맞춰라 / 노드js의 자체 내장이 아님. // npm으로 설치ㅎㅐ야함 nunjucks? nunjacks는 또 몰까 ? -> 아 위에 설명 해주셧네 html파일을 잘 보내기 위한 거 ! 하루하루 모르는 단어들이 계쏙 몰려옴 터미널에 npm install nunjucks chokidar 입력 (nunjucks, chokidar 받기) package.json 가서 내용 추가되었는지 확인 { "name": "nodejs", "version": "1.0.0", "desc.. [26일차 연습] node.js 란? 노드제이에스를 사용해 간단한 server 서버 구축해보기 node.js 다운로드 방법 node.js 장점 및 특징 Node.js 란? Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser. Wikipedia 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. V8 (자바스크.. [26일차] 20210419 git branch 조금 + Node.js 찍먹 1 교시 git branch git add . git commit git branch git checkout git rebase head git game 복습 learngitbranching.js.org/?locale=ko Learn Git Branching An interactive Git visualization tool to educate and challenge! learngitbranching.js.org 2교시 git branch head = cursor 와 비슷. *이 있는 곳을 바라보고 있다. 맨 마지막을 가리킴. HEAD 가 진짜 원 주인 HEAD 중심 절대경로 - 처음부터 주소를 적어 정확한 파일위치를 작성하는 방법 ex) C:\/document/.... 상대경로 - 내가 있는 곳을 중.. console.log에 달력 출력하기 이전 1 ··· 3 4 5 6 7 8 다음