본문 바로가기

분류 전체보기

(106)
[클라우딩 어플리케이션 엔지니어링 TIL] 10. 프론트엔드 백엔드 연결 1.학습 주제 DB와 Node js 연결 프론트엔드와 백엔드 연결 2.주요 메모 사항 소개 DB와 Node.js 연결 Node.js 터미널에 'npm install my sql -save' 입력 시 다음과 같이 json파일이 생성. mysql 모듈을 사용하여 데이터베이스에 연결한다. const mariadb = require('mysql'); //mariadb.js const conn = mariadb.createConnection( { host: 'localhost', port: 3306, user: 'root', password: 'root', database: 'Tennis' } ); module.exports = conn; 그 후, 아래 코드와 같이 다른 파일에서 끌어다 사용 가능해진다. cons..
[클라우딩 어플리케이션 엔지니어링 TIL] 9. 백엔드 기초 1.학습 주제 백엔드란? 포트번호와 HTTP 상태코드 데이터베이스 도커와 SQL 2.주요 메모 사항 소개 백엔드란? 백엔드: 웹 서비스에서 서버측에서 프론트엔드로부터 전달받은 데이터와 요청을 내부 데이터와 연산을 활용하여 처리하고 프론트엔드에 결과를 전송 구조 웹서버: 정적 페이지에 대응. 동적 페이지에 대한 처리는 직접하지 않고 웹 어플리케이션 서버에게 전달. 웹 어플리케이션 서버: 동적 페이지 처리. 필요한 연산을 위해 데이터베이스에 연결되어 있으며 데이터 조회/수정/삭제에 대한 처리 요청 Node JS: 자바스크립트를 스크립트 언어 이상으로 프로그래밍 언어 역할을 할 수 있도록 지원하는 플랫폼. 이를 통해 백엔드를 구현 가능 //index.js let server = require('./server..
[클라우딩 어플리케이션 엔지니어링 TIL] 8. 웹 프론트엔드 기초(2) 1.학습 주제 자바스크립트 2.주요 메모 사항 소개 자바스크립트 특정 HTML 요소를 선택하여 제어할 수 있는 스크립트 언어, 최근에는 백엔드 언어로도 각광 스크립트 언어: 독립적인 프로그램을 개발할 수 있는 프로그래밍 언어가 아닌 프로그램을 제어하는 스크립트 역할을 하는 언어 CSS와 유사하게 적용하는 방법은 3가지가 존재 인라인 내부 스크립트 외부 스크립트 function Alert(){ ///test.js alert(); } 객체 선택 document.getElementById('test'): id가 test인 객체 선택 document.getElementsByClassName('test'): 클래스가 test인 객체 선택 document.getElementsByTagName('test'): 태그가..
[클라우딩 어플리케이션 엔지니어링 TIL] 7. 웹 프론트엔드 기초(1) 1.학습 주제 웹이란? HTML CSS 2.주요 메모 사항 소개 웹이란? www(World Wide Web) 인터넷에 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 공간 특징: 정보를 하이퍼텍스트 형식으로 표현하여, 하이퍼텍스트(링크)를 따라 이동하며 다양한 정보/문서들을 연결, 제공 클라이언트와 서버 클라이언트: 서비스를 이용하는 컴퓨터 서버: 서비스를 제공하는 컴퓨터 프론트엔드와 백엔드 프론트엔드: 웹 서비스에서 사용자 측면의 그래픽 사용자 인터페이스로, 사용자와 상호작용을 담당 백엔드: 웹 서비스에서 서버측에서 프론트엔드로부터 전달받은 데이터와 요청을 내부 데이터와 연산을 활용하여 처리하고 프론트엔드에 결과를 전송 웹의 구성 HTML: 웹 페이지 구성 요소들의 구조 CSS: 웹 페이지 구성 ..
[클라우딩 어플리케이션 엔지니어링 TIL] 6. 클라우드 컴퓨팅 1.학습 주제 클라우드 컴퓨팅이란? 클라우드 컴퓨팅의 핵심원칙 마이크로서비스 아키텍처 2.주요 메모 사항 소개 클라우드 컴퓨팅이란? 컴퓨팅 리소스를 인터넷을 통해 서비스로 사용할 수 있는 주문형 서비스 장점 민첩성(IT 리소스의 구동이 빨라짐) 탄력성(요구에 따른 리소수 확장/축소 용이) 비용절감(사용한 만큼만 내면 사용가능) 가용성(빠른 배포와 무중단 교체) 종류 개방형 클라우드: 사용자가 요금을 지불하고 이용. 일반 대중, 규모가 작은 기업에게 적합 폐쇄형 클라우드: 자사의 IT 시스템 인프라 구축을 목적으로 클라우드 서비스를 자체 운영 또는 인프라 구축과 운용을 아웃소싱. 대규모 기업에 적합 모델 IaaS(Infrastructure as a Service): 가상화된 물리적인 자원을 제공 PaaS(..
[클라우딩 어플리케이션 엔지니어링 TIL] 5. 소프트웨어 공학 1.학습 주제 소프트웨어 공학 정의와 중요한 이유 소프트웨어 개발방법론 2.주요 메모 사항 소개 소프트웨어 공학 정의와 중요한 이유 정의: 소프트웨어를 제품화함에 있어서 적용할 수 있는 품질보증 및 개선 활동을 규정하는 프로세스 중요한 이유: 소프트웨어의 결함은 인명의 손실이나 비지니스에 큰 타격을 줄 수 있음 품질 보증이 어려운 이유 검증을 위한 프로토타입의 제작과 양산 단계 구별 어려움 코드의 변경과 개선이 끊임없이 일어남 잦고 유연한 릴리스 때문에 통제된 공정을 적용하기 어려움 개발 조직의 역량 평가 모델: CMMI(Capability Maturity Model Integrated), SPICE(Software Process Improvement and Capability dEtermination)..
[클라우딩 어플리케이션 엔지니어링 TIL] 4. 컴퓨터 네트워크 1.학습 주제 디지털 통신을 왜 사용하는가? OSI-7 계층 모델 프로토콜과 인터넷 주소체계 2.주요 메모 사항 소개 디지털 통신을 왜 사용하는가? 이점 정보의 손실이 적다. 매체를 다중화하여 대역폭 활용도를 높일 수 있다. 정보의 암호화가 용이하다. 분류 직/병렬 전송 동기식 전송 / 비동기식 전송 전송 방향에 따른 분류(단방향/반이중/전이중) 화선 접속 방식에 따른 분류(점대점/다지점) 망 구성 범위에 따른 분류(LAN/WAN) OSI-7 계층 모델 표준 프로토콜을 사용하여 다양한 시스템이 통신할 수 있도록 국제표준화기구(OSI)에서 제정한 개념 모델 계층 1 Physical: 네트워크의 기본 네트워크 하드웨어 전송 기술이 속해 있는 계층 계층 2 Data Link: 신뢰성있는 전송을 보장하기 위한 ..
[클라우딩 어플리케이션 엔지니어링 TIL] 3.데이터베이스 1.학습 주제 데이터베이스란? 관계형 데이터베이스에 대하여 벡터 데이터베이스에 대하여 NOSQL은 무엇인가? 2.주요 메모 사항 소개 데이터베이스란? 정의: 여러 사용자와 응용 시스템들이 사용 목적은 다르지만 공통의 데이터를 서로 공유하여 사용할 수 있도록 통합하여 저장 관리하는 모임. 특징 실시간 접근성(real-time accessibility): 사용자나 응용 시스템에서 요구하는 질의에 대하여 데이터를 실시간으로 처리한 뒤 바로 응답할 수 있어야 함. 동시 공유(concurrent sharing): 여러 사용자와 응용 시스템이 동시에 원하는 데이터에 접근할 수 있어야 함. 지속적인 변화(continuous evolution): 새로운 데이터의 삽입, 삭제, 수정, 갱신 등의 작업을 통해 항상 최신의..