본문 바로가기

분류 전체보기172

동기(Sync) & 비동기(Async) 동기(Sync)와 비동기(Async)에 대한 개념 일반적으로 "동기로 실행된다"라고 함은, 먼저 실행된 코드의 결과가 나올 때까지 대기하는 것을 말합니다. 놀이기구를 생각하면 쉽습니다. 정원이 30명인 놀이기구가 있다고 가정합니다. 놀이기구를 한번 태우는데 약 5분이 걸린다고 가정하면 놀이기구를 막 태우기 시작한 시점에서는 대기자 모두 놀이기구에 탑승했던 사람들이 다 내리기 전까지는 탑승을 할 수 없습니다. 이것은 놀이기구 탑승/하차가 동기적으로 관리된다고 볼 수 있습니다. 일반적으로 "비동기로 실행된다" 라고 함은, 실행된 순서와 관계 없이 결과가 나오는 것을 말합니다. 맛집을 생각하면 쉽습니다. 정원이 최대 30명인 맛집이 있다고 가정합니다. 입장 순서는 선착순이고 퇴장 순서는 다 먹은 사람이 바로 .. 2022. 12. 12.
Node.js란? Node.js란? Node.js®는 Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임입니다. Node.js는 이벤트 기반, 논 블로킹 I/O 모델을 사용해 가볍고 효율적입니다. Node.js 패키지 생태계인 npm은 세계에서 가장 큰 오픈 소스 라이브러리 생태계이기도 합니다. - Node.js 공식 사이트 node 공식 사이트(https://nodejs.org/ko/)의 설명에 따르면 노드란 "Node.js®는 Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임입니다."라고 설명하고 있습니다. V8엔진은 구글에서 만든 것으로 기존에 Javascript가 브라우저 내에서만 작동이 가능했던 것을 브라우저가 없어도 작동할 수 있도록 만든 것입니다. 다.. 2022. 12. 12.
JavaScript란? JavaScript가 존재하기 이전의 웹 생태계 이 당시엔 웹 브라우저가 존재했지만, HTML과 CSS로 아주 간단한 스타일만 적용하는 게 일반적이었습니다. CSS 또한 지금처럼 화려하게 적용할만한 기능이 없었고, 현재의 워드프로세서보다 더 적은 기능으로 텍스트를 꾸미고 간격을 조정하는 게 전부였습니다. HTML이라는 단어 그대로 Hyper Text를 이용해 각 문서(페이지)간 이동이 원활하게 꾸며둘 수 있는 순수한 Markup Language로서 이용이 되었습니다. 순수하게 문서를 웹으로 볼 수 있는 수준으로 이용한 것입니다. JavaScript 탄생 비화 자바스크립트는 이런 정적인(Static) 문서를 조금 더 동적(Dynamic)으로 표현할 수 있도록 만들어졌는데, NetScape라는 웹 브라우저를.. 2022. 12. 12.
22.12.05 ~ 22.12.09 WIL 사실(Fact) 팀 프로젝트 회원가입 기능 구현 로그인 기능 구현 세션 관리 기능 구현 비밀번호 암호화 기능 구현 프로필 이미지 업로드 기능 구현 느낌(Feeling) 이번 프로젝트는 처음부터 끝까지 굉장히 스무스 했었다. 다들 약속도 잘 지켜주고 주말에도 이틀 다 나와서 기능구현을 했다. 굉장히 마음이 편한 프로젝트였다. 교훈(Finding) 코드를 간결화하자 commit message 컨벤션을 잘 지키자 향후 행동(Future action) 협업에 대한 것을 많이 배웠다. 주말엔 CS특강에서 배운 것들을 정리하고, 회고록을 작성햇다. 이번 프로젝트에서 KPT 회고를 했는데 Problem이 많이 나오지 않고 다들 만족하는 프로젝트였다. 다음주부터는 Node.js를 본격적으로 배우는데 열심히 해야겟다. 2022. 12. 11.
22.12.09 / CS특강 / DataBase설계 데이터베이스 설계 순서 튜터자료 개념적 모델링 - https://app.diagrams.net/#G1fpKnZw_HbMybaCXmYvPOBPLD5MrJEdZl 논리적 모델링 - https://docs.google.com/spreadsheets/d/1-WOEukosLCAJneqYGwfllPgHFagsRYDkWb0lOZXKClI/edit#gid=13739035 1. 요구조건 분석 2. 개념적 모델링 개념적 모델링: 개체와 개체들 간의 관계에서 ER다이어그램을 만드는 과정 ER모델 ER모델: 세상의 모든 사물을 개체(Entity)와 개체 간의 관계(Relationship)으로 표현 개체: 독립적인 의미를 지니고 있는 유무형의 사람 또는 사물로 개체의 특성을 나타내는 속성(Attribute)에 의해 식별된다. .. 2022. 12. 11.
22.12.09 / CS특강 / DB 기초 데이터베이스(Database, DB)가 필요한가요? '데이터베이스가 왜 필요한가?'라고 묻는다면 여러 이유가 있지만, 가장 큰 이유로는 상이한 시스템에서 데이터를 공용하여 사용하기 위해 필요하다고 할 수 있다. 이때 '그냥 파일로 저장해놓고 공용하면 되는거 아냐?'라는 의문이 떠오른다. 수많은 시스템이나 응용 프로그램이 사용할 수 있는 데이터를 저장하는 표준 파일 포맷을 만들어서(예. HTML, PDF) 그에 맞게 데이터를 처리하면 된다는 것이다. 이 물음에 대답하기 위해 위의 학생, 출결, 성적파일에 있을만한 데이터의 종류를 봐보자. 학생 파일 출결 파일 성적 파일 이름 이름 이름 수강 강좌 수강 강좌 수강 강좌 강좌 시간 출결 여부 성적 이름과 수강 강좌가 겹쳐있다는 것을 알 수 있다. 파일 내부에 .. 2022. 12. 11.