Loading...
2019.09.29 10:09

[GP] Junit5를 사용한 Java 테스트 코드 작성

이 글은 N.K Dev Lab에서 작성된 글입니다. 안녕하세요. 오늘은 유닛 테스트에 대한 이야기를 해보고자 합니다. 프로그래밍 하다보면 자신이 작성한 코드가 원하는 형태로 작성되었는지 안되었는지를 테스트해보고 싶을 때가 있습니다. 저는 처음 프로그래밍을 GUI 프로그래밍으로 했다보니 그 결과를 보통 눈으로 확인하곤 했습니다. 하지만 CLI 프로그래밍을 하다보면 원하는 결과가 나오는지 안나오는지 일일이 손으로 입력하고 결과를 본다는 것이 쉽지만은 않습니다. 그럴 때 유닛 테스트를 사용해보세요. What is Unit Test ?그렇다면 유닛 테스트는 무엇인가요? 유닛 테스트는 컴퓨터 프로그래밍에서 소스 코드의 특정 모듈이 의도대로 정확히 작동하는지 검증하는 일련의 절차 과정입니다. 좀 더 자세한 설명을 ..

2019.08.27 17:19

Github Actions - React 프로젝트를 Firebase에 Deploy 하기

Actions 마지막 포스트로 React 프로젝트를 Firebase에 Deploy 하는 글을 써보도록 하겠습니다. 우리는 지난 포스트에서 YAML 파일을 가지고 간단한 Workflow와 Matrix와 Secrets 등의 환경 변수까지를 다뤄봤습니다. 이번 글에서는 기본적으로 Google Firebase에 대한 기본적인 지식이 있는 상태에서 진행을 하도록 하겠습니다. Firebase의 처음부터 시작하게 되면 글이 길어지기 때문에, 간단하게 요점만 짚고 넘어가기 위해서 Firebase의 기본 환경이 이미 구축된 상태에서 진행하도록 하겠습니다. Generate and Register Firebase Token 배포 도구로 Google Firebase에서 공식적으로 제공하는 firebase-tools를 한 번 ..

2019.08.26 14:10

Github Actions - Matrix & Secrets

이번에는 Matrix를 활용하여 다중 OS 환경, 다양한 버전의 언어, 프레임워크 등을 활성화 시키는 워크플로우를 작성해보겠습니다. Matrix Matrix는 Array와 유사합니다. YAML에서는 특정 변수를 선언할 수 있는데, 이를 복수개로 선언하고 싶을 경우에는 Matrix를 사용할 수 있습니다. 아마 기존의 Travis CI를 써보신 분들이라면 익숙할 것입니다. name: Practice actions on: push: branches: - master pull_request: branches: - master jobs: build: runs-on: ubuntu-latest strategy: max-parallel: 4 matrix: python-version: [2.7, 3.5, 3.6, 3.7..

2019.08.24 17:23

Github Actions - 간단한 워크플로우 생성해보기

지난 포스트에서 Github Actions에 대한 간단한 사용과 기능을 소개하는 시간을 가졌었는데요. 이번에는 직접 Github Actions를 사용해 워크플로우를 자동화하는 것을 해보도록 하겠습니다. Start 먼저 레포지터리를 Actions를 사용하고자 하는 프로젝트를 clone 하도록 하죠. $ git clone [Repository] 클론한 레포지터리에 아래의 디렉터리를 한 개 만들어보겠습니다. $ mkdir -p .github/workflows Actions를 사용하려면 먼저 Workflow를 읽을 수 있는 경로가 필요한데, 이 경로가 바로 .github 디렉터리입니다. $ touch main.yml 그리고 main.yml 라는 이름의 파일을 한 개 만들어줍니다. 이것이 이 레포지터리에서 Mai..

2019.08.24 11:38

Github Actions 드디어 활성화 되다.

안녕하세요. 오늘은 Github Actions에 대해 소개하고자 합니다. Github Actions는 Github에서 제공하는 워크플로우 자동화 시스템으로 기존에는 이를 대체하기 위해 Travis CI, Circle CI 등의 3rd Party 애플리케이션을 사용했었습니다. Github Actions Features • GitHub Actions Easily build, package, release, update, and deploy your project in any language—on GitHub or any external system—without having to run code yourself. github.com 현재 Github Actions는 Beta 기능으로 제공되고 있습니다. 각 ..

2019.08.22 16:06

GCP 자격증 후기 - Google Certified Professional Cloud Architect

안녕하세요. 오늘은 Google Cloud Platform 자격증에 대해서 이야기하고자 합니다. 2개월 전, 저는 Google에서 주최한 Study Jam에 참가하게 되었는데요. What is Google Study Jam ? 구글 스터디잼은 구글에서 진행하는 스터디 지원 중에 하나로 2019년에는 Machine Learning, Cloud Platform을 중심으로 스터디가 진행되었습니다. 여기서 저는 ML Experienced와 Cloud Advanced 과정에 참여하였습니다. Why Join 2개월 전, 한창 Keras와 TensorFlow를 재미있게 하고 있을 때였습니다. Image Classification을 구현하고자 CNN을 구현하고 Keras로 러닝을 돌렸고, 이 때는 직접 구입한 서버를 ..

[GP] C++에서 Map에 대해 알아보자

이 글은 N.K Dev Lab에서 작성된 글입니다. 안녕하세요. 오늘은 C++ STL에 대한 글을 써보려 합니다. 본래 저는 STL과 같은 기본적인 글은 잘 쓰지 않으려 했습니다. 워낙 Documentation도 잘 되어 있는 편이고, 블로그의 글 주제로 쓰기에는 적합하지 않다고 생각했습니다. 하지만 오늘 이 글을 쓰게 된 계기는 제가 알고리즘 풀이를 몇 번 진행하면서 제가 주로 쓰고 있는 Java 언어와 다소 차이가 있는 것으로 확인이 된 자료구조가 몇 있었습니다. 그래서 각 언어에서 비슷한 자료구조의 형태가 STL이나 API로 지원된다하더라도 언어에 따라 사용하는 방법이나 각 함수들에 대한 기능에 대해서는 짚고 넘어가야 할 필요가 있다고 느꼈습니다. What is STL ?STL은 C++에서 제공하는..

2019.07.29 13:25

GraalVM - R과 Java 사이

안녕하세요. 정말 오랜만에 글을 작성합니다. 오늘은 오랜만에 작성한다는 의미를 담아 조금 특별한 개발글을 적어보고자 합니다. 개발을 하다보면, 한 가지 언어가 아닌 여러가지 언어를 사용할 때가 많이 있습니다. 특히 저의 경우는 데이터 처리 하면서 애플리케이션을 개발할 때 이러한 경우를 많이 느끼곤 했었는데요. GraalVM이 무엇이고 이것이 혼용 언어의 개발과 어떠한 연관이 있는지에 대해 알아보도록 하겠습니다. R과 Java 사이 R 언어는 보통 데이터 처리를 할 때 많이 사용하는 언어 중 하나입니다. 하지만 애플리케이션을 만들지 못하는 것은 아닙니다. R에서는 Shiny라는 공식 웹 애플리케이션을 제공하여 이를 이용해서도 R을 이용한 웹 애플리케이션 개발이 가능합니다. 그렇지만 이러한 웹 애플리케이션이..

[GP] R에서 코드를 병렬처리 하는 방법

이 글은 N.K Dev Lab에서 작성된 글입니다. 오늘은 R 코드를 병렬 처리하는 방법에 대해서 알아보겠습니다. 병렬 처리? 많이 들어보셨던 말씀이겠지만 병렬 처리가 일단 무엇인지 먼저 알아보고 진행해보도록 하겠습니다. Parallel Processing병렬 처리 혹은 계산은 컴퓨터를 이용해서 동시에 많은 계산을 하도록 하는 처리 방법 중에 하나입니다. 과거에는 프로세서 성능이 하나당 코어 한 개를 가지고 있기 때문에 병렬 처리라는 것은 사실상 불가능한 것에 가까웠습니다. 하지만 이를 가능하도록 한 것은 멀티태스킹 방식이 있었기 때문이죠. 이 방법은 하나의 계산을 여러 개로 쪼개서 나눠 처리하는 방식으로 동시에 많은 계산을 한꺼번에 처리하는 것이랑은 약간의 차이가 있었습니다. 하지만 현대 프로세서에는 ..

[GP] Spring boot에서 DBMS를 연동하는 방법 JPA 고급편

이 글은 N.K Dev Lab에서 작성된 글입니다. 안녕하세요. Spring 관련 글을 정말 안쓴지가 너무 오래되었네요…ㅠㅠ 요즘 데이터 분야에서 일하다보니 R을 다루면서 백엔드에 대한 포스팅이 많이 밀려있네요.. 앞으로는 Spring을 이용한 오픈 프로젝트에 참여 중이니 다시 재건을 위해서라도 천천히 하나씩 글을 작성해보도록 하겠습니다. 이번에는 지난 글에 이어서 JPA 고급편에 대해 작성해보도록 하겠습니다. 워낙 오래됐음에도 불구하고 고급편에 무엇을 적어야할지 명시가 되어 있네요. 오늘은 그 부분을 다뤄보겠습니다.SQL과 HQLSQL은 Structed Query Language의 약자로 DBMS의 데이터를 조작/제어하는 쿼리 언어 중에 하나입니다. SQL Server에서는 T-SQL을 사용하는 것처럼..