카페코더

고정 헤더 영역

글 제목

메뉴 레이어

카페코더

메뉴 리스트

  • GitHub
  • Programmers
  • Beakjoon Online Judge
  • LeetCode
  • 분류 전체보기 (80)
    • Springboot (1)
      • EXCELK's BLOG (1)
    • How To Java (41)
      • Java Tutorial (9)
      • Algorithm & Data_Structure (7)
      • Algorithm Problem Solution (14)
      • Development Environment (3)
      • For Better Developers (2)
      • Solve step by step (6)
    • 개인 공부 (33)
      • Database (4)
      • TDD (6)
      • Spring-boot,Java (16)
      • Frontend (5)
      • JavaScript (2)
      • Multi-Thread (0)
    • Interview (5)
      • Tech (5)
      • Personality (0)

검색 레이어

카페코더

검색 영역

컨텐츠 검색

분류 전체보기

  • 기술 면접시 요구된 질문을 정리합니다.

    2021.03.23 by 카페코더

  • ORM

    2021.03.23 by 카페코더

  • DB

    2021.03.23 by 카페코더

  • Spring

    2021.03.23 by 카페코더

  • JAVA

    2021.03.22 by 카페코더

  • 자료구조 - 비선형 구조: 트리 (미완성)

    2021.03.20 by 카페코더

  • 자료구조 - 선형 구조: 링크드 리스트

    2021.03.20 by 카페코더

  • 자료구조 - 선형 구조: 배열

    2021.03.20 by 카페코더

기술 면접시 요구된 질문을 정리합니다.

기술 면접시 요구된 질문을 정리합니다.

Interview/Tech 2021. 3. 23. 02:32

ORM

1. ORM이란? ORM은 오브젝트 릴레이션 매핑, 즉 DB 테이블을 자바 객체로 매핑하는것을 의미합니다. 장점으로, 생산성 및 유지보수 성능 향상과 DBMS에 종속적이지 않아 독립성이 강한 장점이 있습니다. 단점으로, 쿼리가 복잡할 때 ORM으로 표현하는데 한계가 있고, 연산 속도가 느립니다. 2. JPA란? 자바에서 사용하는 ORM 기술에 대한 API 표준 명세를 말합니다. ORM을 사용하기 위한 인터페이스를 모아둔 것이며, JPA를 활용하기 위해선 Hibernate와 같은 ORM 프레임 워크를 사용해야 합니다. 3. Hibernate란? 하이버네이트는 SQL을 직접 사용하지 않고, 메서드 호출만으로 쿼리문을 실행할 수 있는 프레임워크 입니다. 따라서 생산성이 높은 장점을 갖습니다. 반면 연산이 복잡..

Interview/Tech 2021. 3. 23. 02:31

DB

1. 정규화의 목적 하나의 테이블에서 변경된 데이터를 관계를 통해 나머지 부분들로 전파되게 하는것 입니다. 주로 중복을 제거하는 방식으로 정규화를 진행합니다. 2. 역 정규화의 이유 정규화의 장점은 이상 발생의 가능성을 낮추는 것 입니다. 반면 단점은 연산 시간이 증가한다는 점이 있습니다. 이 때 과도한 연산 시간 증가를 해소하기 위해 역 정규화를 실행합니다. 3. 함수적 종속이란? X와 Y를 속성으로 갖는 어떤 릴레이션이 존재할 때, X값을 알면 Y값을 알 수 있고, X값에 따라 Y값이 변하는 경우를 Y는 X에 함수적 종속이라고 합니다. 이 경우 X를 결정자, Y를 종속자 라고 합니다. 함수적 종속에는 완전 함수적 종속, 부분 함수적 종속, 이행적 함수적 종속이 있습니다. 완전 함수적 종속은 종속자가 ..

Interview/Tech 2021. 3. 23. 02:16

Spring

1. Spring은 무엇인가? 스프링은 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크를 말합니다. 엔터프라이즈급 애플리케이션을 개발하기 기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션입니다. 2. Spring Boot는 무엇인가? 스프링부트는 실행하기만 하면 되는 사용화 가능한 수준의 스프링 기반 애플리케이션을 쉽게 만들어 낼 수 있는 프레임워크를 말합니다. 사용하려는 컴포넌트를 종속적으로 추가하면, 결합에 필요한 설정이 자동으로 이뤄집니다. 3. Spring과 Spring boot의 차이는? 스프링 부트는 스프링에 속하는 도구로 볼 수 있습니다. 스프링은 의존성 주입, 중복된 코드 제거, 다른 프레임워크와의 통합을 통해 엔터프라이즈 급 애플리케이션을 제작한다면, 스프링 부트는 자동 설정,..

Interview/Tech 2021. 3. 23. 00:39

JAVA

1. java 8을 사용하는 이유 JAVA 8은 이전 버전들에 비해 가장 큰 변화가 있던 버전입니다. 이전 버전과 비교한 주요 변경사항으로는 람다 표현식, 스트림 API, time 패키지가 있습니다. 또, 현업에서 가장 많이 사용하는 JAVA 버전이 8이기에 사용한 이유도 있습니다. 개발자는 대개 혼자보단 협업을 하는 경우가 많은데, 이 때 많이 사용하는 버전을 통해 공부하면, 협업에 도움이 될 거라 생각했습니다. 2. 람다 표현식이란? 람다 표현식은 이름이 없는 익명의 함수를 의미합니다. 객체지향 언어인 자바에서 함수형 프로그래밍을 위해 사용됩니다. 특징으로 크게 익명, 함수, 전달, 간결성이 있습니다. 익명 - 익명은 기존의 메서드와는 다르게 이름이 없이 표현이 가능한 특징입니다. 코드가 간결해질 수..

Interview/Tech 2021. 3. 22. 19:02

자료구조 - 비선형 구조: 트리 (미완성)

트리 트리(Tree) 라고 하면 대부분의 사람들은 나무를 떠올릴것이다. 하지만 우리는 미래의 개발자이니 자료구조 트리를 먼저 생각해야 한다. 재미 없어도 이렇게라도 세뇌 해서 하다보면 재밌어진다 ㅋㅋㅋㅋ 트리 개요 트리는 이름에서도 알 수 있듯이 나무 형태인 그래프 자료구조를 말한다. 우선 기본적인 형태를 살펴보자. 루트 노드: 트리의 최상단에 위치한 노드 간선: 노드와 노드를 잇는 선, 엣지 라고도 한다. 내부 노드: 루트 및 단말 노드가 아닌 내부에 존재하는 노드 ex) 2, 3, 4, 6은 내부 노드에 해당한다. 단말 노드: 자식이 없는 노드 부모 노드: 자신보다 하위 노드를 갖는 노드 ex) 7번 8번 노드의 부모 노드는 4번 노드이다. 자식 노드: 자신보다 상위 노드를 갖는 노드 ex) 4번의 ..

How To Java/Algorithm & Data_Structure 2021. 3. 20. 17:49

자료구조 - 선형 구조: 링크드 리스트

링크드 리스트 연결 리스트라고도 한다. 배열과 달리 랜덤한 위치에 메모리를 할당하여 연결해 배열처럼 사용된다. 링크드 리스트 개요 링크드 리스트는 크게 두가지로 나뉜다. 싱글 링크드 리스트 더블 링크드 리스트 연결 방식에 따라 싱글, 더블로 나뉜다. 링크드 리스트의 경우 변수 하나를 저장하기 위해 2개 ~ 3개의 메모리를 필요로 한다. 하나는 현재 데이터를 저장하기 위한 메모리, 하나는 다음 데이터를 가리키기위한 포인터, 나머지 하나는 이전 데이터를 가리키기 위한 포인터다. 자바로 프로그래밍을 입문한 사람들에겐 포인터가 생소할 수 있다. 자바는 포인터가 없다고 아는 사람들이 많지만, 지금까지 자바를 써온 필자의 생각으론 모든 프로그래밍 언어는 포인터에 베이스를 둔다 생각된다. 자바로 입문한 미래 개발자를..

How To Java/Algorithm & Data_Structure 2021. 3. 20. 15:24

자료구조 - 선형 구조: 배열

배열 자료구조의 복습을 위해 배열부터 다시 시작한다. 만약 이 포스팅을 통해 학습하는 미래 개발자가 있다면, 언어 기초 -> 자료구조 -> 알고리즘 순으로 학습해 효율을 높이는것을 추천한다. 해당 포스팅은 자바를 기준으로 진행한다. 배열 개요 배열은 동일한 자료형을 Heap 영역내 연속적으로 메모리를 할당해 활용한다. 더 쉽게 표현하면, 하나의 변수에 많은 데이터를 저장하기 위해 사용하는것 이라고 볼 수 있다. 이해를 돕기위해 프로그래밍 기초 기술의 집약체 계산기로 예시를 한번 살펴보자. 단순히 숫자 2개를 더해야 하는상황엔 우리는 다음과 같이 프로그래밍을 한다. import java.io.BufferedReader; import java.io.InputStreamReader; import java.io..

How To Java/Algorithm & Data_Structure 2021. 3. 20. 15:03

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 ··· 10
다음
TISTORY
카페코더 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바