전체 글 72

스프링 (SpringFramework)

SpringFramework등장 배경 EJB 복잡한 스펙으로 인한 개발의 효율성이 떨어짐 POJO(Plsin Olf Java Object) 특정 환경이나 기술에 종속적이지 않은 객체지향 원리에 충실한 자바객체 테스트하기 용이하며, 객체지향 설계를 자유롭게 적용할 수 있다. 특정 기술에 종속적이지 않기 때문에 생산성, 이식성 향상 Plain : component interface를 상속받지 않는 특징 (특정 framework에 종속X) Old: EJB이전의 Java Class의미 PSA(Portable Service Abstraction, 이식 가능한 서비스 추상화) 환경과 세부기술의 변경과 관계없이 일관된 방식으로 기술에 접근할 수 있게 해주는 설계 원칙 트랜잭션 추상화, OXM추상화, 데이터 액세스의 ..

JAVA 2022.03.16

Network

Network Server와 Client간의 데이터 교환 등의 행위 IP Address Network 상에서 각각의 컴퓨터를 구별하기 위한 고유 번호 IPv4 주소 : 32비트(0.0.0.0 ~ 255.255.255.255) IPv6 주소 : 128비트(0:0:0:0:0:0:0:0 ~ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff Port 서버에서 제공하는 특별한 서비스를 위한 작업단위의 고유번호 잘 알려진 포트(Well-Known Port) - 0~1023번 (http:80, https:443, sftp:22, smtp:25 등) 등록된 포트(Registered Port) - 1024~49151번 (MySQL:1433, 3306, 플레이스테이션 네트워크: 3479, 3480 등)..

카테고리 없음 2022.02.14

엔디안(Endianness)

엔디안(Endianness) 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법을 의미 (HW아키텍처마다 다름) ※속도 향상을 위해 바이트 단위와 워드 단위를 변환하여 연산 할 때 올바로 이해하지 않으면 오류 발생 컴퓨터는 모든 데이터를 2진수로 표현하고 처리합니다. 비트(bit)란 컴퓨터가 데이터를 처리하기 위해 사용하는 데이터의 최소 단위인데, 이러한 비트는 2진수 값(0과1) 하나만 저장가능합니다. 위에 비트(bit)가 8개 모이면 바이트(byte)가 되는데 한 문자를 표현할 수 있는 최소 단위 입니다. 컴퓨터는 데이터를 메모리에 저장할 때 바이트(byte) 단위로 나눠서 저장합니다. 컴퓨터가 저장하는 데이터는 32비트(4바이트), 64비트(8바이트)로 구성되는데, 연속된..

알고리즘 2022.02.09

재귀 호출(recursive call)

재귀 호출 자기 자신을 호출하여 순환 수행 재귀호출방식을 사용하면 프로그램의 크기를 줄이고 간단하게 작성 가능! But, 실무에서 쓰면 욕먹음(되도록 쓰지말자) 시간복잡도 계산이 반복문에 비해 어렵다 반복문보다 메모리 사용량 많고, 수행 시간이 길어 질 수 있음 함수 호출 많이해서 StackOverFlow 가능성있음 종결조건을 확실하게 하지않으면 무한반복 무한 반복이 일어나면 CPU 크래쉬 발생(반복문은 메모리 부족하면 알아서 멈춤) 재귀 호출 예시1 - 팩토리얼 private int factorial(int n){ if(n == 1) return 1; return n * factorial(n - 1); } 재귀 호출 예시2 - 피보나치 수열 0과 1로 시작하고 이전의 두 수 합을 다음 항으로 하는 수열..

알고리즘 2022.02.03

스택(Stack)

스택(Stack) 물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조 스택에 저장된 자료는 선형 구조 선형구조 : 자료 간의 관계가 1대1 관계 비선형구조 : 자료 간의 관계가 1대N의 관계 스택에 자료를 삽입하거나 스택에서 자료를 꺼낼 수 있다. 마지막에 삽입한 자료는 가장 먼저 꺼낸다. 후입선출(LIFO, Last-In-First-Out) 스택 구현시 고려 사항 1차원 배열을 사용하여 구현할 경우 구현이 용이하다는 장점이 있으나 스택의 크기를 변경하기가 어렵다는 단점 ※위 문제를 해결하기위해 저장소를 동적으로 할당하여 스택을 구현하는 방법이 있음(동적 연결리스트를 이용하여 구현) 동적 할당은 구현방법이 복잡하다는 단점이 있지만 메모리를 효율적으로 사용한다는 장점을 가짐 스택 응용 1. 괄호검사 괄호..

알고리즘 2022.02.03

Database Modelling

데이터베이스 모델링(Database Modelling) 정보화 시스템을 구축하기 위해 어떤 데이터가 존재 하는지 또는 업무에 필요한 정보는 무엇인지 분석하는 방법 관계형 데이터베이스는 이 '표'의 개념을 사용해서 데이터를 구성하는 방법을 사용 데이터베이스 모델링(Database Modelling) 순서 개념적 데이터 베이스 모델링 업무분석 단계에서 얻어진 내용을 토대로 우선 Entity를 추출하고 Entity내에 속성(Attribute)을 구성하며, Entity간의 관계를 정의해서 ER-Diagram을 정의하는 단계 사용자 부문의 처리현상을 분석 중요 실체와 관계를 파악하여 ERD를 작성 실체에 대한 상세 정의 식별자를 정의하고, 식별자 업무규칙을 정함. 실체별로 속성을 상세화 함 필요한 속성 및 영역을..

DB&Server 2022.01.25

RDBMS&SQL

RDBMS란? 관계형(Relational) 데이터베이스 시스템 테이블기반(Table based)의 DBMS 데이터를 테이블 단위로 관리(하나의 테이블은 여러 개의 열(Column)로 구성 중복데이터를 최소화 시킴 (같은 데이터가 여러 컬럼 또는 테이블에 존재 했을 경우, 데이터를 수정 시 문제가 발생할 가능성이 높아짐, 정규화) 여러테이블에 분산되어 있는 데이터를 검색 시 테이블 간의 관계(join)를 이용하여 필요한 데이터를 검색 SQL(Structured Query Language) Database에 있는 정보를 사용할 수 있도록 지원하는 언어 모든 DBMS에서 사용 가능 ※대소문자는 구별하지 않음(단, 데이터의 대소문자는 구분)

DB&Server 2022.01.21