목록전체 글 (85)
개발새발
스프링MVC 사전적 의미 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크 프리임워크란??!! 뼈대나 기반구조를 뜻하는데, Application 개발 시 필수적인 코드, 알고리즘, 데이터베이스 연동 등과 같은 기능들을 위해 어느정도 뼈대(구조)를 제공해주는 것 (그렇기에 뼈대위에서 개발자가 코드를 작성하여 Application을 개발해야한다) 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는것 프레임워크란 우리의 개발을 용이하게 해주고 효율을 높여주는 도구 라이브러리(Library) 특정 기능에 대한 도구 / 함수 모음 개발자가 필요로하는 것을 모아둔것
재귀함수 (Recursive Function) 재귀라는 말은 원래 자리로 돌아가거나, 되돌아온다는 의미 코딩에서 재귀는 자기 자신(메서드)를 호출하는것 자기 자신을 다시 호출하여 재참조하는 구조의 함수 재귀함수와 for 문 (반복문) 의 차이 1. 메모리 재귀함수는 함수를 반복적으로 호출하기 때문에 스택 메모리를 사용하지만(스택 오버플로우가 발생 할 수 있다), 반복문은 메모리 힙을 사용한다 2. 코드의 길이 반복문에 비해 재귀문이 코드의 길이를 줄일 수 있다 재귀함수(Recursion) 함수 자체를 호출 기본으로 종료 조건을 지정 조건부 문은 함수 호출 본문에 포함되어 재귀 호출을 실행하지 않고 함수를 강제로 반환 기본적으로 종료조건에 수렴하지 않으면 무한재귀가 발생 무한재귀 --> 스택오버플로우 발생..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/tryev/btrINK85Eg1/QNsaw7oBnR0m28kmxQNFbk/img.png)
Spring Framework 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 엔터프라이즈금 애플리케이션을 개발하기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션 엔터프라이즈급 개발이란 뜻대로만 풀이하면 기업을 대상으로 하는 개발 즉, 대규모 데이터 처리와 트랜잭션이 동시에 여러 사용자로부터 행해지는 매우 큰 규모의 환경을 엔터프라이즈 환경이라 한다 Spirng Framework는 경량 컨테이너로 자바 객체를 담고 직접 관리 Spring Framework는 IOC기반 Ioc(Inversion of Control) : 제어의 역전 IoC(Inversion of Control)란 "제어의 역전" 이라는 의미로, 말 그대로 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라, 외부에서 결정..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bFgMfM/btrIXV1OW1u/rsQp29yfkRnZCl6gkzP4e0/img.png)
공부하다가 모르겠어서 찾아봤다 서블릿(Servlet) 자바를 기반으로 웹페이지를 동적으로 만들어줄 수 있는 프로그램 과거에는 HTML만을 주고받는 정적인 웹페이지를 봤지만, 지금은 다양한 기능이 추가된 동적인 웹페이지를 본다 그런 동적인 페이지를 만들기 위한게 서블릿이다 과거 정적인 페이지 현재 동적인 페이지 WAS에 포함된 서블릿이 동적인 페이지를 만드는 연산을 수행한다 웹 컨테이너(WEB Container) 서블릿 컨테이너라고도 불리는 웹 컨테이너는 사용자의 요청을 처리하는 역할을 한다 로그인, 회원가입, 장바구니 등의 다양한 요청이 있을때 서블릿이 처리를 한다 그런 여러개의 다양한 서블릿의 연산이 웹 컨테이너 안에서 이루어진다 웹 컨테이너는 서블릿을 요청에 따라 제대로 작동하도록 제어한다 이렇게 작..
오늘 도커 수업한 것만 일단 적어둬야겠다 ```도커 이미지 다운 docker image pull [이미지 이름]:latest ``` ```내가 다운받은 이미지 정보 docker image ls ``` ```현재 실행중인 컨테이너 docker ps -a ```이미지를 실행하면서 동시에 run으로 container을 만든다 docker container run --name 컨테이너_이름 [이미지 이름]:latest ``` container} run 컨테이너를 실행 [OPTIONS] -name : 컨테이너의 이름을 할당 [COMMAND] command는 초기 컨테이너 실행 시 수행되는 명령어 cowsay : 컨테이너 실행 시 cowsay 명령어를 호출합니다. node를 호출하듯 이용 [ARG..] boo : ..
아키텍처(Architecture) 건축 분야에서 유래된 용어로써 요구 사항을 만족하는 건축물을 짓는데 있어 청사진 같은 역할을 한다 프로그램의 주요 구조 설계 : 기획한 내용을 코드로 작성할 때 필요한 주요 특징을 기술적으로 설계하고 명시하는 것 결과뭉레 필요한 모든 구성 요소를 명시하지만 , 구체적인 구현 방법은 포함시키지 않는다 예로 책상을 만드는데 책상을 사각형 모양으로 설계하고 긴다리가 붙는다고 가정하면 다리를 나사로 박은 것인지, 접착제를 사용한 것인지 명시하지 않는다 (경우에 따라 포함될 수 도 있다) 라이브러리(Library) 프로그램을 만들때 필요한 기능 : 재사용이 필요한 기능으로 코드의 반복을 없애기 위해 따로 만들어서 저장해둔 것(내 생각 누군가 똑똑한 개발자들이 만든걸) 내가 imp..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/LrQiJ/btrINMFa0RX/5lMgCGp8HGF2lgORVL4Kl1/img.png)
객체 지향 설계 원칙이란? 수많은 사람들이 고민하고 시행착오를 겪으면서 만든 원칙 좀 더 유지보수하기 쉽고, 유연하고, 확장이 쉬운 소프트웨어를 만들 수 있다 코드 베이스뿐만 아니라 아키텍쳐 설계에 이르기까지 다양하게 적용할 수 있다 객체 지향 설계과정 1. 요구사항을 찾고 세분화한다 2. 기능을 구현하는데 필요한 데이터를 객체에 추가한다 3. 해당 데이터를 이용하는 기능을 구현 4. 객체 간에 어떻게 메소드 호출을 주고받을지 결정 SOLID SRP, OCP, LSP, ISP, DIP의 첫 글자를 딴것이 SOLID SRP(Single Responsibility Principle, 단일 책임의 원칙) 클래스가 제공하는 기능들은 하나의 책임을 수행하는데 집중해야 한다 잘지키면 : 응집력이 높아지고, 결합도는..
Mysql sql : Struectured Query Language의 약자로 구조화된 질의 언어 DBMS가 DB server에게 데이터의 삽입, 삭제, 조회, 갱신 데이터 접근 권한, 등의 다양한 요청사항을 보낼 때 사용 가장 널리 사용되고 있는 관개형 데이터베이스 관리 시스템 오픈 소스이며, 다중 사용자와 다중 스레드를 지원 장점 오픈 소스이다 다양한 운영체제에서 사용할 수 있으며, 여러가지 언어를 지원한다 크기가 큰 데이터 집합도 빠르고 효과적으로 처리할 수 있다 데이터 베이스 데이터베이스 목록 표시 SHOW databases; 데이터베이스 생성 CREATE DATABASE [DB명]; 데이터베이스 삭제 DROP DATABASE [삭제할 DB명]; 데이터베이스에 접근(선택) USE [선택할 DB명]..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b1OIWF/btrIJ7b1m9J/7V4Njc5tfkWPmJac19YKL1/img.png)
데이터베이스 한 마디로 정의하면 '데이터 집합' 일상생활 대부분의 정보가 저장되고 관리 DBMS 데이터베이스를 관리하고 운영하는 소프트웨어 다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자, 프로그램과 공유하고 동시에 접근이 가능해야 한다 데이터 베이스 주요 기능 데이터 정의어(Data Definition Language DDL) 데이터베이스 구조 정의 및 수정에 사용 데이터 저장 구조, 데이터 접근 방법, 데이터 형식 등의 정의 가능 데이터 조작어(Data Manipilation Language DML) 데이터베이스에 저장된 데이터를 검색,수정,삽입,삭제할 때 사용 데이터 제어어(Data Control Language DCL) 데이터를 정확하고 안전하게 보호 관리 데이터베이스의 무결성 유지..