일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스프링
- 파이썬
- 시나공
- SW봉사
- 백준 알고리즘
- 문제풀이
- python
- softeer
- 코틀린
- 코딩봉사
- 데이터베이스
- 정보처리산업기사
- 소프티어
- 프로그래머스
- kotlin
- programmers
- MYSQL
- 코딩교육봉사
- java
- CJ UNIT
- 자바
- 백준알고리즘
- 공부일지
- 1과목
- 알고리즘
- 백준
- BFS
- 회고
- SQL
- C++
- Today
- Total
목록kotlin (7)
JIE0025
✅ QueryDSL 설정하기 1️⃣ build.gradle.kts에 plugins 추가 plugins { //for querydsl kotlin("kapt") version "1.7.10" } 2️⃣ dependencies 추가 이후 dependencies를 추가해주면 되는데, 나는 kapt에서 빨간줄이 뜨길래 plugins만 추가하고, 빌드한번 해준 다음 dependencies를 추가했다. dependencies { //querydsl implementation("com.querydsl:querydsl-jpa:5.0.0") kapt("com.querydsl:querydsl-apt:5.0.0:jpa") } 3️⃣ Build 빌드 성공시 인텔리제이 좌측 상단 build > generated > source..
✅ 개요 Hibernate를 이용한 엔티티 생성을 하다가 해당 내용을 정리할 필요성이 생겨서 가져왔다. 🤔 클래스를 선언할 때 (소괄호)와 {중괄호}는 어떤 역할을 할까? 각 자리에 선언되는 필드들은 어떤차이가 있을까? ✅ 예제 코드 메모라는 엔티티 클래스를 간단하게 만들었다. 소괄호 ( ) 안에 title을 선언, 중괄호 { } 안에 memoId, contents가 선언되어있다. @Entity @Table(name = "memo") class Memo ( @Column(nullable = false, length = 30) var title: String ) { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "memoId"..
✅ 개요 Kotlin - Springboot , JPA - Hibernate - DB를 쓰는 상황이다. DB연결을 위해 Entity 클래스를 선언함에 있어 고민이 생겼다. ✅ 엔티티 생성에서 data class를 쓰는것이 좋을까 ? 결론부터 말하면 아니다. 엔티티 클래스는 다음과 같은 필요조건을 갖고있다. ✔️ 엔티티 클래스의 필요조건 클래스는 반드시 javax.persistence.Entity 어노테이션을 적용해야 함 클래스는 반드시 public/ protected의 no-arg 생성자를 갖고 있어야함 (다른 생성자가 있을수도 있다.) 엔티티는 반드시 final이면 안된다 (메소드/인스턴스 변수 모두) 엔티티는 엔티티가 아닌 클래스를 상속할 수 있다. etc 첫번째. 엔티티는 반드시 final이면 안된..
✅ 개요 스프링 기반의 프로젝트에선, 코틀린을 사용해도 기존의 테스트 프레임워크인 JUnit, Assertion, Mockito를 동일하게 사용할 수 있지만.. 그래도 코틀린에 어울리게 코틀린스럽게(?) 테스트코드를 짤 수 있도록 돕는 도구들이 존재한다. (MockK와 Kotest) 이 중 오늘은 MockK를 알아보고 어떻게 단위테스트를 하는지 간단하게 알아보자. ✍️ 기술 비교 MockK외에도 코틀린을 위한 테스팅 프레임워크에는 Kotest라는 것도 있다. Kotest는 코틀린진영에서 가장 많이 사용되는 테스팅 프레임워크이다. 다양한 테스트 레이아웃을 제공하고 Kotlin DSL 스타일의 Assertion도 제공된다. Junit과 호환성이 있어 기존의 Junit과 마이그레이션 하기 용이함. 예제 코드 ..
코틀린에서 자료구조는 어떻게 다루는지 알아보자! ✅ 컬렉션 (Collection) 컬렉션은 자료구조를 편하게 다루기 위해 제공하는 라이브러리이다.. 코틀린에서의 컬렉션은 자체 컬렉션을 제공하지 않는다는걸 기억하자. 🧐 왜 자체 컬렉션을 제공하지 않을까? 표준 자바 컬렉션을 활용함으로써 자바 코드와 상호작용하기 더 쉽기 때문이다. 자바에서 코틀린함수를 호출하거나, 코틀린에서 자바코드를 호출 할 때 서로 변환할 필요 없이 같은 클래스를 사용한다. 코틀린에서는 자바보다 더 많은 기능을 사용할 수 있다 !!!! ✔️ 리스트의 마지막 요소 가져오기 fun main() { val strings = listOf("first", "second", "third") println(strings.last()) // 리스트의..
✅ Hello World가장 기본적인 Hello World를 출력하는 코드를 작성해보았다.fun main (args: Array) { println("hello world"); }함수 선언시 fun을 사용한다.파라미터 뒤에 타입을 써준다. args:Array함수를 최상위 수준에 정의할 수 있다. (클래스 안에 넣어야 할 필요가 없다)배열은 일반 클래스와 마찬가지(?) 자바와 다르게 코틀린에선 배열처리를 위한 문법이 존재하지 않는다. System.out.println을 println으로 사용한다. 자바 표준라이브러리 함수를 간결하게 사용할 수 있도록 래퍼를 제공한다.세미콜론은 써도 되고, 안써도 된다. ✅ 함수의 정의 본문이 증괄호로 둘러싸인 함수 (블록이 본문인 함수)fun max(num1: Int, n..
✅ 코틀린이란? JetBrains에서 개발한, 자바 플랫폼에서 돌아가는 새로운 프로그래밍 언어이다. 자바와 똑같이 JVM 위에서 작동한다! (OS에 독립적이라는 장점이 그대로 있다!) 주 목적 : 자바가 사용되는 용도에 적합하고, 자바의 단점을 극복하며 간결하고 안전한 대체용 언어 ✍️ 코틀린의 특징 (장점)간결하고 표현력이 뛰어나 개발자의 생산성을 높혀준다.자바와 100%호환되어 상호 운용성을 갖는다.대부분의 자바 프로젝트에서 활용 가능하다 (안드로이드/ 서버 개발 등)성능이 자바와 비슷하다Null 체크, 타입추론 캐스팅 등에서 안전성을 보장한다. ✅ 코틀린은 왜 배워야할까?언젠가 코프링이라는 단어를 들어본적이 있다. 많은 기업들이 자바+스프링을 사용하던 기존의 프로젝트를 코틀린+스프링으로 개선하는 ..