CS/웹 8

[웹] MVC 패턴의 5가지 계층

프리젠테이션 계층 (Presentation Layer) 제어 계층 (Control Layer) 비즈니스 로직 계층 (Business Logic Layer) 퍼시스턴스 계층 (Persistence Layer) 도메인 모델 계층 (Domain Model Layer) "스프링 부트를 활용한 마이크로 서비스 개발"이라는 책의 목차 중, "3계층 스프링 부트 애플리케이션"이라는 내용이 궁금하여 찾아보게 됨 프리젠테이션 계층 역할 사용자 인터페이스 (메뉴판) 기능 사용자가 선택할 수 있는 기능 표시 주의 모든 요청이 제어 계층을 통해 처리되어야 함 - 비즈니스 로직, 퍼시스턴스 계층에서 처리하는 일을 직접 수행해서는 안됨 - 각 계층의 컴포넌트와 직접적인 통신이 있어선 안됨 패턴 Composite View 제어 계..

CS/웹 2022.05.11

[웹] PG(Payment Gateway)

PG란 정의 지불 정보를 가져오고 이를 판매자에게 전송하며 승인/거절을 report 구매자와 판매자의 interface 온라인 결제 대행 서비스 기능 돈 지불이 가능한지 확인 민감한 financial 정보를 암호화 PG 동작 주문자가 카드 정보를 입력 SSL encryption으로 카드 정보를 암호화 / Gateway는 PCI DSS를 불필요하게 함 online payment gateway에 지불 정보를 전달 (SSL encryption으로 암호화된 데이터) gateway는 수신한 데이터를 XML에서 ISO 8583으로 변환하여 인수은행의 결제처리자로 보냄 결제처리자는 카드정보로 데이터를 제출 은행은 승인 요청을 받고 카드를 확인하여, 응답 코드를 결제처리자에 전송 결제처리자는 payment gatewa..

CS/웹 2022.05.05

[웹] Spring - NodeJS - Django

1. Django Python 프레임워크 Instagram, Mozilla, Bitbucket 특징 Documentation이 잘되어있음 SEO 최적화 높은 보안 빠른 개발 환경 높은 확장성 장점 관계형 DB와의 연동성(seamless collaboration) built-in security system 빠른 웹/앱 개발 내장 템플릿 Documentation 단점 Monolithic small app에서 잘 동작하지 않음 언어에 대한 전문 지식 필요 2. NodeJS Open source Cross-platform Javascript Runtime Environment Javascript로 client/server 구현 Javascript로 browswer 밖에서 앱 구현 프로그래밍 언어가 아닌 JS로..

CS/웹 2022.04.19

[웹] JEE (Jakarta Enterprise Edition)

JEE(Jakarta Enterprise Edition)는 오라클의 JEE(Java Enterprise Edition)의 소스코드와 거버넌스를 이클립스재단으로 이관하면서, 자바 명칭을 사용할 권리를 주지 않아 변경된 이름입니다. Java EE Java EE는 많은 종류의 엔터프라이즈 Java application과, Spring과 같은 많은 프레임워크에서 널리 사용되는 프로젝트였습니다. 초기 썬 마이크로시스템즈가 분산 애플리케이션 개발 목적의 산업 표준 플랫폼인 J2EE(Java 2 Enterprise Edition)로 발표하였습니다. 기업용 애플리케이션을 개발/실행하기 위한 기술과 환경을 제공하며 서블릿, JSP, EJB, JDBC, JDNI, JMX, JTA 등의 알려진 기술을 포함합니다. 주요 목적..

CS/웹 2022.04.19

[웹] SEO란

정의 Search Engine Optimization 웹사이트가 검색 결과에 더 잘보이도록 최적화하는 과정 검색 엔진은 크롤링을 통해 페이지 -> 페이지 링크를 따라가며 컨텐츠 색인을 생성 이 때 크롤링은 일정 규칙을 따르므로, 이 규칙에 맞게 웹사이트를 구성하면 검색 결과의 높은 곳에 노출 검색 엔진은 SEO 가이드라인을 제공하기도 함 웹마스터 가이드 검색엔진이 콘텐츠를 발견하고 색인할 수 있도록 도움을 주는 가이드 구글 네이버 웹마스터 가이드 예시 robots.txt에서 User-agent를 설정하여 검색로봇 접근 허용 간단하고 설명이 포함된 URL 를 이용한 링크 설정 를 활용한 줄바꿈 이미지에 alt 속성 기재 등등... https://developer.mozilla.org/ko/docs/Glos..

CS/웹 2022.04.18

[인프런][HTTP] URI와 웹 브라우저 요청 흐름

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런... www.inflearn.com URI 웹 브라우저 요청 흐름 URI(Uniform Resource Identifier) 리소스를 식별하는 통합된 방법 URI는 로케이터(Locator), 이름(Name) 또는 둘 다 추가로 분류될 수 있음 URL(Locator) - 리소스의 위치 URN(Name) - 이름 - 그저 이름이기 때문에 위치를 찾을 수가 없음 - 이로 인해 거의 URL..

CS/웹 2022.04.07

[인프런][HTTP] 인터넷 네트워크

https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런... www.inflearn.com 인터넷 통신 IP (인터넷 프로토콜) TCP, UDP PORT DNS 인터넷 네트워크 두 대의 컴퓨터가 통신을 한다 케이블로 연결되어 있으면 통신이 어렵지 않다 그러나 우리는 인터넷을 통해 통신을 한다 인터넷은 복잡하다 어떻게 수 많은 노드를 거쳐 통신을 할까? IP (인터넷 프로토콜) 인터넷을 통해 데이터를 전송하기 위한 최소한의 규칙이 필요하다..

CS/웹 2022.03.30

[Web] 정적 컨텐츠에서 스프링까지 (Java를 모르는 내가 스프링에 도달하기까지)

스프링을 공부하는 중입니다 저는 소프트웨어를 전공했음에도 웹이라고는 html, javascript(현재는 바닐라 자바스크립트라고 부르는 것 같더군요), php와 LAMP를 이용한 간단한 서버를 만드는 경험이 전부였습니다. 그리고 스프링을 처음 접했을 때 상당히 혼란스러웠습니다. 쉽게 따라할 수 있고 동작은 하는데... 내가 만들던 서버와의 gap이 너무 크게 느껴지는 겁니다. 예를 들면, 분명 서버(Apache 서버)를 설치 안했는데 localhost로 접속이 된다는 것도 신기했구요. 아직 부족함이 많지만, 그 사이의 공백을 채우는 자취로써 간단히 정리해보려합니다. 웹이란 무엇인가 https://pythaac.tistory.com/166 웹이란 무엇일까? Web Server와 Web Application..

CS/웹 2022.02.04