Tutorial/0.Tutorial
-
SQL과 NoSQLTutorial/0.Tutorial 2022. 10. 19. 09:12
SQL : RDBMS Relational DataBase Management System 장점 관계망에 따라 데이터가 테이블에 분배된다. 따라서 데이터가 각 테이블에 중복저장되는 것을 줄일 수 있다. 또 미리 정의된 스키마에 의해 데이터가 저장되므로, 테이터 무결성 data integrity 에 장점이 있다. 데이터 무결성 data integrity 소위 무결성 제한 Integrity constraints 등의 규칙으로 데이터베이스에 의해 강제되곤 한다. 다음의 세 갈래로 나눌 수 있다. -개체 무결성 Entity integrity 고유키 관련. 개체 무결성은 모든 테이블이 고유한 기본키를 가지고 null 을 허용하지 않는다. -참조 무결성 Referential Integrity 외래키 관련. 모든 외래..
-
웹서버와 WASTutorial/0.Tutorial 2022. 10. 6. 09:47
https://gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html [Web] Web Server와 WAS의 차이와 웹 서비스 구조 - Heee's Development Blog Step by step goes a long way. gmlwjd9405.github.io 웹 서버는 파일 경로를 받아 바뀌지 않는 페이지를 반환한다. 정적인 컨텐츠, html, css, javascript 등 저장되어 있는 파일들을 제공한다. HTTP프로토콜 기반. 웹 어플리케이션 서버는 동적으로 움직인다. DB조회나 다양한 처리를 요구하는 동적 컨텐츠를 제공하기 위해 만들어졌다. 웹서버만을 이용한다면, 사용자의 요청에 대한 결과값이 미리 모두 만들어져있어야 한다. 그러나 WAS는 여..
-
RDBMS 와 NoSQLTutorial/0.Tutorial 2022. 10. 5. 10:16
관계형 데이터 베이스 RDBMS Relational Database Management System 서로 연관된 2차원 테이블들로 데이터 관리. MySQL, Oracle등. 정해진 스키마에 따라, SQL 에 의해 저장된다. 관계형 데이터베이스는 테이블간 관계를 나타내기 위해 외래 키(foreign key)를 사용한다. 외래 키를 통해 테이블 간 join이 가능하다. 명확한 데이터 구조 아래 데이터의 중복을 없앨 수 있다. 그러나 Join이 복잡해질 수 있다. 또 성능향상은 곧 서버 성능의 향상, Scale-up 에 달려있다. NoSQL 테이블 간 관계를 정의하지 않으며 Join 도 불가능. 스키마에서 자유롭고, 수평적 확장(Scale-out)에 용이. Key:Value 페어의 데이터가 대표적이지만 여러 ..
-
웹서버와 웹프레임워크와 라이브러리와 모듈Tutorial/0.Tutorial 2022. 10. 5. 09:37
웹 프레임워크 : Spring(자바 서버개발), Django와 Flask(파이썬 서버개발), Angular, Vue.js, Express.js 등 코드 (특히 DB 연동 관련) 및 서버의 구동, 메모리 관리, 이벤트 루프 (서버의 구동과 메모리 관리에 이벤트 루프가 포함되는 것 아닌가? 확인요망) 등 웹 서비스 기초공사를 도맡는다. 그 기초공사의 도구로 각 프레임 워크만의 메서드들이 주어진다. 라이브러리 : pandas, bs4, requests, nespaper3k, certifi, Node.js에서 npm으로 너가 깔은 것들, JQuery도 포함. 그리고 React.js(??) 어떤 기능 구현을 위해 모인 코드, 함수들의 집합. 그런데 리액트가 프레임워크가 아니라 라이브러리인가? 그리고 놀랍게도, 공..
-
URI 와 URLTutorial/0.Tutorial 2022. 10. 5. 09:15
URL Uniform Resource Locator 는 자원의 위치를 가리키며, URI Uniform Resource Identifier 는 넓은 의미의 자원에 대한 식별자이다. 자원에 대한 식별자에 자원의 위치가 포함된다. 즉, URI에 URL이 포함된다. 아래 틀은 조금 의심스럽지만 이렇게 말하기도 하던데... 흔히 Path Variable과 Query Parameter로 주소창의 경로를 구분한다. http://example.com/posts/1....n 게시판 1~n 번을 표현한 Path Variable http://example.com/posts?cinema=123 코드번호 123번 영화에 대한 post. 이때 ? key = value 형태를 가진다. 저기서 example.com/post 까지는 ..
-
REST API : 그러니까 창문은 창문답게 투명하게, 보기 쉽게 만들라는 것Tutorial/0.Tutorial 2022. 10. 1. 11:02
주의! 개발공부 한 달 차의 대단히 자의적이며 주관적인 공부 기록입니다. 개념틀과 어휘가 강학상의 혹은 현업상의 그것과 비교하여 크게 다를 수 있습니다. (사실 일단 일부러 자의적으로 구성해나가고 있는 점도 다소 있습니다.) 때문에 혹여 이 블로그로부터 정보를 길어가는 일은 몹시 적절하지 못합니다. 방문자에게 이 블로그의 쓸모는 관찰 정도에 있을 것입니다. '한 달 차는 이런 걸 보고 이런 오해를 하는 구나' 정도 말이지요 REpresental State Transfer API Roy Fielding, "Architectural Styles and the Design of Network-based Software Architectures" (2000) 챕터 5의 REST 가 눈에 띈다. https://w..
-
Tutorial 0.4 APITutorial/0.Tutorial 2022. 9. 5. 13:44
개발 입문단계에 있어, 다른 이에게 보여줄 어떤 참고서를 작성하는 일은 나에게 마땅치 않은 것 같다. 기왕의 공부내용은 다른 체계(https://1drv.ms/u/s!Ah3ot1Iz99uHgQuYOr3XDyRMXjIZ)로 정리되어 있다. 이 블로그는 일종의 "루만의 메모상자"처럼 사용하려 한다. 0.1 Flask 프레임 워크(https://flask-docs-kr.readthedocs.io/ko/latest/quickstart.html) from flask import Flask, render_template, request, jsonify app = Flask(__name__) @app.route('/') def home(): return render_template('index.html') @app...
-
Tutorial 0.3 PythonTutorial/0.Tutorial 2022. 8. 21. 21:27
개발 입문단계에 있어, 다른 이에게 보여줄 어떤 참고서를 작성하는 일은 나에게 마땅치 않은 것 같다. 기왕의 공부내용은 다른 체계(https://1drv.ms/u/s!Ah3ot1Iz99uHgQuYOr3XDyRMXjIZ)로 정리되어 있다. 이 블로그는 일종의 "루만의 메모상자"처럼 사용하려 한다. 0.1 1.0 클래스 *setdata 매서드 FourCal 이라는 클래스에 setdata 매서드로 3개의 매개변수를 넣는다. 이 때 첫번째 매개변수 self에는, 이후 클래스로 찍어낸 객체의 이름이 자동으로 불려온다. 'self' 라는 문자열 자체는 그냥 관례적인 사용. 다르게 해도 상관 없다. 클래스를 통해 메서드를 호출하는 것도 가능. 이때는 객체 a를 첫 번째 매개변수 self에 꼭 전달해 주어야 한다. a..