람다식(Lambda)이란? 람다식이란 함수형 프로그래밍을 구성하기 위한 함수식이며, 쉽게 말해 자바의 메서드를 "하나의 식" 으로 표현한 것입니다. 지금까지 자바에서는 메서드를 하나 표현하려면 클래스를 정의해야 했습니다. 하지만 람다식으로 표현하면 메서드의 이름과 반환값을 생략할 수 있고 이를 변수에 넣어 자바 코드가 매우 간결해지는 장점이 있습니다. 아래 그림에서 보듯이 메서드 표현식을 메서드 타입, 메서드 이름, 매개변수 타입, 중괄호, return 문을 생략하고, 화살표 기호를 넣음으로써 코드를 간략하게 함축했음을 볼 수 있습니다. 이러한 특징으로 람다식을 이름이 없는 함수 익명 함수(anonymous function) 라고도 합니다. int add(int x, int y) { return x + ..
프로그래밍을 하다보면 프레임워크와 라이브러리라는 용어를 자주 접할 것입니다. 다른분들과 마찬가지로 저도 프레임워크와 라이브러리를 자주 접하면서 둘의 차이점과 정확한 개념을 모르기때문에 혼동을 하는 용어인데요. 이 글에서는 프레임워크와 라이브러리의 개념을 소개하고 차이점을 이해하기 쉽게 정리하였습니다. 이 글을 통해서 프레임워크와 라이브러리의 차이점을 확실하게 이해하실 수 있게 될 것입니다. 우선, 가볍게 아래의 그림을 통해 차이점을 이해해 봅시다. 프레임워크(Framework) 프레임워크란 소프트웨어를 개발함에 있어 코드를 구현하는 개발 시간을 줄이고, 코드의 재사용성을 증가시키기 위해 일련의 클래스 묶음이나 뼈대, 틀(구조)을 제공합니다. 또한, 프레임워크는 제어의 역전(IoC) 개념원칙을 따릅니다...
인터페이스(Interface)란 인터페이스는 프로그램 내 다양한 기능을 하는 클래스들에게 기본이 되는 틀(구조)를 제공하는 역할을 한다. 이전의 포스팅을 보았다면 알겠지만, 추상 클래스와 비슷한 개념이라고 생각하면 된다. 하지만, 자바는 단일 상속을 원칙으로 하고 있기 때문에, 다중 상속을 지원하기 위해 인터페이스를 사용할 수 있다. 자바에서 비슷한 개념인 추상 클래스는 추상 메서드뿐만 아니라 생성자, 필드, 일반 메서드도 포함할 수 있습니다. 하지만, 인터페이스는 오로지 상수(final)와 추상 메서드만 포함할 수 있습니다. 인터페이스 특징 1. 다중 상속 가능하다. 인터페이스는 껍데기만 존재하기 때문에 클래스 상속 시 발생했던 모호함이 없다. 그렇기 때문에 다중 상속이 가능하다. 추상 클래스를 상속..
추상 클래스란? 추상 클래스는 추상 메서드를 하나라도 가지고 있는 클래스를 만한다. 추상 메서드는 "메서드가 완성되지 않은, 껍데기만 있는 메서드" 이다. 쉽게 이해하기 위해서 예를 들자면 강아지, 고양이, 소 라는 객체가 있다고 하자. 이 3가지 객체의 공통점은 동물이라는 공톰점이 있겠지요. 그리고 이 객체들은 공통적으로 행위, 즉 "걷기", "먹기", "울기" 등의 메서드를 가지고 있을 겁니다. 이러한 공통되는 특성을 갖고 있는 것을 추상 클래스라고 합니다. 각 동물들은 걷고, 먹는 것은 동일하겠지만 각자 울음소리는 다를 것입니다. 그렇기 때문에 work(), eat() 은 부모 클래스에서 구현해주고 서로 다른 bark() 메서드만 추상 메서드로 선언한것이죠. 그럼 각 자식클래스에서 추상 메서드인 b..
- Total
- Today
- Yesterday
- 타임리프
- 스프링 컨테이너
- RequiredArgsConstruct
- Overloding
- 크롤링
- 타임리프 기본기능
- 인터페이스 추상클래스 비교
- Java
- Thymeleaf
- 스프링 빈
- HttpServletRequest
- 인터페이스 추상클래스 차이
- 인터페이스
- 요청매핑
- erd툴
- 인식안됨
- 스프링
- 스프링http
- 네이버지도크롤링
- redirectattribute
- 요청데이터
- 빈생명주기콜백
- erd editor
- Servlet
- 자바
- 스프링특징
- Spring
- HTTP요청
- 추상클래스
- 객체지향설계원칙
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |