CodeStates_BE_44

CodeStates_BE_44/TIL

[Spring] Spring Framework 핵심 개념_DI

1. DI 1-1. DI란? (Dependency Injection) DI는 IoC라는 원칙을 구현하기 위해서 사용되는 방법 중 하나로 의존성 주입을 말한다. 지금까지는 우리가 직접 설정 파일을 통해 의존성 주입을 했는데 지금부터는 스프링에서 지원하는 DI를 위한 내용을 알아보자. 1-2. 스프링 컨테이너(Spring Container) 스프링 컨테이너는 내부에 존재하는 애플리케이션 빈의 생성, 관리 제거 등 생명 주기를 관리한다. 스프링 컨테이너는 XML, 애너테이션 기반의 자바 설정 클래스로 만들 수 있으며 서로 다른 빈을 연결해 애플리케이션 빈을 연결하는 역할을 한다. ApplicationContext라는 인터페이스를 스프링 컨테이너라고 한다. 정확히 말하면 BeanFactory와 BeanFacto..

CodeStates_BE_44/TIL

[Spring] Spring Framework

1. Framework 1-1. Framework란? “소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것” 이라고 정의하고 있지만, 이 문장만으로 소프트웨어 관점에서 Framework의 의미를 이해하기는 쉽지 않다. 하나의 애플리케이션을 건물이라고 가정한다면, Frame은 건물의 구조라고 생각하면 된다. 즉, 소프트웨어 관점에서의 Framework는 어떤 애플리케이션을 만들기 위한 틀 혹은 구조를 제공하는 것이다. 그렇다면 Framework를 사용했을 때 장점과 단점은 무엇일까? 장점 효율적으로 코드를 작성할 수 있다. 서로 다른 애플리케이션 간의 통신이나, 데이터를 데이터 저장소에 저장하는 등의 다양한 기능들은 Framework에서 라..

CodeStates_BE_44/TIL

[DB] 데이터베이스 설계

1. 관계형 데이터베이스 구조화된 데이터는 하나의 테이블로 표현할 수 있습니다. 사전에 정의된 테이블을 relation이라고도 부르기 때문에 테이블을 사용하는 데이터베이스를 관계형 데이터베이스(Relational database)라고 합니다. 데이터(data): 각 항목에 저장되는 값 테이블(table 또는 relation): 사전에 정의된 열의 데이터 타입대로 작성된 데이터가 행으로 축적된다. 칼럼(column 또는 field): 테이블의 한 열 레코드(record 또는 tuple): 테이블의 한 행에 저장된 데이터 키(key): 테이블의 각 레코드를 구분할 수 있는 값으로 기본키(primary key)와 외래키(foreign key)가 있다. 2. 관계 종류 1:1 관계 하나의 레코드가 다른 테이블의..

CodeStates_BE_44/TIL

[DB] SQL, NoSQL

SQL SQL이란? SQL(Structured Query Language)은 데이터베이스 언어로 주로 관계형 데이터베이스에서 사용하며 구조화된 쿼리 언어라고 할 수 있습니다. SQL은 아래와 같은 언어적 특성을 갖습니다. 대소문자를 구분하지 않는다. (서버 환경이나 DBMS 종류에 따라 데이터베이스 또는 필드명에 대해 구분하기도 한다.) 반드시 세미콜론(;)으로 끝나야 한다. 고유의 값은 따옴표(’’)로 감싸줘야 한다. 객체를 나타낼 때는 백틱(``)으로 감싸줘야 한다. 한 줄 주석은 문장 앞에 --를 붙여서 사용하고 여러 줄 주석은 /* */로 감싸준다. SQL의 종류 데이터 정의어 (DDL; Data Definition Language) 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어 CREA..

CodeStates_BE_44/TIL

[네트워크] HTTP

Rest API 웹 애플리케이션에서는 HTTP 메서드를 이용해 서버와 통신합니다. HTTP 메서드를 사용해 요청과 응답을 할 때 제대로 보내고 받을 수 있는 일종의 규약이 존재하는데 이것을 REST API라고 합니다. 좋은 REST API를 디자인하는 방법 아래는 리차드슨의 REST 성숙도 모델을 구조화한 것입니다. 총 4단계(0단계~3단계)로 나누어지는데 실제로는 2단계가지만 적용해도 좋은 API 디자인이라고 볼 수 있고, 이런 경우 HTTP API라고 부릅니다. 0단계 - HTTP 사용 단순히 HTTP 프로토콜을 사용하는 것입니다. 물론 이 경우, 해당 API를 REST API라고 할 수는 없으며 좋은 REST API를 작성하기 위한 기본 단계입니다. 1단계 - 개별 리소스와의 통신 준수 앞서 RES..

CodeStates_BE_44/TIL

[네트워크] 웹 애플리케이션 작동 원리

1. 웹애플리케이션에 대한 이해 특정 기기에 설치해서 사용하는 애플리케이션을 네이티브 애플리케이션(Native-application)이라고 한다. 네이티브 애플리케이션은 Apple iOS, Android OS, Windows와 같은 특정 실행 환경에 종속된다. 웹 브라우저를 통해 접근이 가능한 애플리케이션을 웹애플리케이션이라고 한다. 2. 네트워크를 만드는 기술 2-1. TCP/IP 기본 LAN과 WAN 우리의 컴퓨터는 인터넷 제공업체에서 제공한 인터넷 라우터를 통해 연결되어 있다. 유선이 되었든 무선이든 라우터에 연결이 되어있지 않다면 인터넷을 사용할 수 없다. 이러한 좁은 범위에서 연결된 네트워크를 LAN(Local Area Network)이라고 부른다. 그리고 수많은 LAN들이 모여 세계의 네트워크..

CodeStates_BE_44/코플릿

Graph, DFS, BFS 연습문제 - 인접 행렬, 바코드

1. 인접 행렬 생성하기 문제 방향이 있는 간선과 방향이 없는 간선들의 목록들을 받아 2차원 배열의 인접행렬을 반환하는 함수를 작성하세요. 조건 각 간선은 3가지 정보를 담고 있습니다. 0번째: 간선의 시작 정점 (0 이상의 정수) 1번째: 간선의 도착 정점 (0 이상의 정수) 2번째: 방향성 (1 == 일시 무향, 0 == 일시 방향) 입력 인자 1: edges int 타입의 방향/무향인 간선들의 목록이 담긴 배열 출력 Array 타입을 리턴해야 합니다. 2차원 배열의 인접 행렬 주의 사항 정점 0에서 정점 4로 이어주는 간선이 존재할 경우 정점 1, 2, 3도 존재합니다. 반환하는 인접행렬은 2차원 배열이며, 행(row)는 바깥 배열, 열(column)은 안쪽 배열입니다. int[][] matrix ..

CodeStates_BE_44/코플릿

Stack, Queue 연습문제 - 브라우저, 박스 포장, 프린터

1. [Stack] 브라우저 뒤로 가기 앞으로 가기 문제 개발자가 되고 싶은 김코딩은 자료구조를 공부하고 있습니다. 인터넷 브라우저를 통해 스택에 대해 검색을 하면서 다양한 페이지에 접속하게 되었는데 "뒤로 가기", "앞으로 가기"를 반복하면서 여러 페이지를 참고하고 있었습니다. 그런데 새로운 페이지를 접속하게 되면 "앞으로 가기" 버튼이 비활성화돼서 다시 보고 싶던 페이지로 갈 수 없었습니다. 이러기를 반복하다가 김코딩은 스택 자료구조를 떠올리게 되었습니다. 브라우저에서 "뒤로 가기", "앞으로 가기" 기능이 어떻게 구현되는지 궁금해진 김코딩은 몇 가지 조건을 아래와 같이 작성하였지만, 막상 코드를 작성하지 못하고 있습니다. 조건 새로운 페이지로 접속할 경우 prev 스택에 원래 있던 페이지를 넣고 n..

CodeStates_BE_44/월간 회고

코드스테이츠 BE 44기. Section 1 마무리

드디어 한 달 간의 공부가 끝나서 Section 1 회고를 작성하게 됐다. 한 달 동안의 내 키워드를 생각해보면 의지박약(^^..)이 아닐까 싶을 정도로 갈수록 나태해지는 내 모습이 보였다. 시작할 때만 해도 코드스테이츠 시작하면 6개월 동안 갓생 살거라고 떵떵거렸는데 학교 다닐 때랑 똑같았다. Java 기초, 컬렉션과 같이 생각하며 코드를 짤 때는 재미 있어서 새벽까지 궁둥이 딱 붙이고 있었는데, 이론적인 부분이나 실무에서 이게 어떻게 쓰이는 건지 모르는 부분들을 배울 때는 그냥 멍 때리는 감자였다 ㅎㅎ .. 아무리 온라인 수업이라도 과제나 공부량이 많으면 이런 나라도 열심히 하겠지- 싶었는데 들어가는 세션이라 그런지 이미 알고 있는 부분들이 많아서 집중이 잘 되지 않았다. 혹시나 정말 끈기 없고 나약..

조화이트
'CodeStates_BE_44' 카테고리의 글 목록