본문 바로가기
728x90
반응형

전체 글140

윈도우에서 npm install 할 때 에러: node-sass\vendor\win32-x64-115\binding.node is not a valid Win32 application. 윈도우에서 node.js 깔고 프로젝트 npm install 할 때 이런 에러가 난다면...? 프로젝트의 node 버전보다 컴퓨터에 깐 node 버전이 너무 높아서 그렇다. 나의 경우 20.x.x.x. 였던 node 버전을 18.x.x.로 낮추니 잘 설치됐음... 2023. 11. 1.
아토믹 코틀린 - 컬렉션에 대한 연산 람다를 사용해 List / MutableList 초기화 fun main() { val list1 = List(10){ it } // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] val list2 = List(10){ 0 } // [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] val list3 = List(10){ 'a' + it } // [a, b, c, d, e, f, g, h, i, j] val list4 = List(10){ list3[it % 3] } // [a, b, c, a, b, c, a] val mutableList1 = MutableList(5){ 10 * (it+1) } // [10, 20, 30, 40, 50] } 다양한 컬렉션 함수 any() - 원소 중 어느 하.. 2023. 10. 31.
아토믹 코틀린 - 람다 fun main() { val list = listOf(9, 11, 23, 32) list.joinToString(" "){"[$it]"} } 주요 특징 람다에는 이름이 없다. 람다에는 함수 생성에 필요한 최소한의 코드만 필요하다. 다른 코드에 람다를 직접 삽입할 수 없다. 람다가 너무 복잡하면 이름 붙은 함수를 정의하는 편이 더 명확하다. 람다를 단 한 번만 쓰더라도 람다가 너무 크면...!? 이름 붙은 함수로 작성하는게 더 낫다. 사용 예시 fun main() { val list = listOf(1, 2, 3, 4) val result = list.map({ n -> "[$n]"}) } 그런데 파라미터가 하나인 경우, 코틀린은 자동으로 파라미터 이름을 it으로 만든다. 즉, 파라미터가 하나고 it으로.. 2023. 10. 30.
springboot 프로젝트(모듈)에 외부 라이브러리를 추가하는 방법 gradle에 없는 외부 라이브러리(예: fasoo DRM 등)를 스프링 부트 프로젝트/모듈에 jar로 추가하기 위해서는 build.gradle 파일 수정 후 빌드를 해줘야 한다. 특정 디렉토리 하위의 라이브러리를 모두 의존성 주입하기 dependencies { // fasoo drm implementation fileTree(dir: 'libs/fassojar', include: '*') } 특정 라이브러리를 각각 의존성 주입하기 dependencies { implementation 'org.springdoc:springdoc-openapi-ui:1.6.11' } 이렇게 추가하고 gradle build ㄱ ㄱ 2023. 10. 24.
스프링배치 완벽가이드 1 - 배치와 스프링 배치 처리 상호작용이나 중단 없이 유한한 양의 데이터를 처리하는 것으로 정의한다. 배치 처리가 일단 시작되면 아무런 개입 없이 어떤 형태로든 완료된다. 사용성 - 코드의 오류 처리 및 유지 보수성 공통 컴포넌트를 쉽게 확장해 새로운 기능을 추가할 수 있는가? 기존 컴포넌트를 변경할 때 시스템 전체에 미치는 영향을 알 수 있도록 단위테스트가 잘 마련되어 있는가? 잡이 실패할 때 디버깅에 오랜 시간을 소비하지 않고 언제, 어디서, 왜 실패했는지 알 수 있는가? 확장성 - 100만 건 이상의 트랜잭션 처리도 OK, 가용성 필요할 때 바로 배치 처리를 수행할 수 있는가? 허용된 시간 내에 잡을 수행함으로써 다른 시스템에 영향을 미치지 않게 할 수 있는가? 보안 - 데이터를 안전하게 저장하는 것 민감한 데이터베이.. 2023. 10. 23.
728x90
반응형