목록개발 (104)
Joonas' Note
--orphan 옵션으로 체크아웃하면, 이전 히스토리가 아예 없는 새로운 브랜치가 만들어진다. git checkout --orphan brand-new-branch 위 커맨드를 실행하면 brand-new-branch라는 이름으로 새로운 브랜치가 생기는데, 이전 히스토리가 없다. 이대로 커밋을 하나 쌓아보면 이렇게 된다. 참고 How to create a new (and empty!) "root" branch? I would like to define a new "root" branch in this git repository. By "root" branch I mean a branch that is entirely independent of all the other branches in the repos..
JUnit5에서는 4가지 Lifecycle 관리 annoation을 제공한다. JUnit4에서도 있었지만 이름이 바뀌었다. @BeforeAll - (JUnit4 @BeforeClass) @BeforeEach - (JUnit4 @Before) @AfterAll - (JUnit4 @AfterClass) @AfterEach - (JUnit4 @After) Lifecycle 관리 단위를 클래스마다로 바꿀 수 있는데, 호출 순서가 조금 바뀐다. 클래스 인스턴스가 생성되고 호출되므로, @BeforeAll과 @AfterAll은 더 이상 static 함수가 아니어도 된다. 실제 코드는 아래와 같다. HTML 삽입 미리보기할 수 없는 소스 출력이나 클래스 내부 변수의 상태를 확인해보면, 상태가 다른 것을 확인할 수 있다.
설명 이미지들의 평균 픽셀값을 확인하고 싶은 경우에 사용하면 된다. 오래 걸리는 경우에 로딩을 표시하려고 tqdm을 사용했는데 그냥 빼도 된다. 이미지의 픽셀값을 전부 다 저장하고 평균을 출력하다간 메모리가 터진다. 그래서 Moving average로 해결했다. 코드 HTML 삽입 미리보기할 수 없는 소스 결과 아래와 같이 1,000장 정도 되는 얼굴 사진을 모두 겹쳐서 그려볼 수 있다.
예전에 블로그 스킨을 수정한 적이 있다. 블로그 스킨 수정 반응형이면서 심플했던 티스토리 기본형 #2를 사용하고 있었다. 오랫동안 사용했는데, 갑자기 몇 가지 고치고 싶은 부분이 생겼다. 왼쪽에 블로그 제목이 너무 큰 부분을 차지하고 있어서, 글에 blog.joonas.io Version 1.4 - 2023/06/03 - 다크 모드 지원 (오른쪽 상단 스위치로 수동 설정 또는 시스템 설정을 통해 자동으로 반영) Version 1.3 - 2023/01/29 - 글 목록에서도 목차(TOC) 생성을 시도하는 오류 수정 - 코드 블럭에 대한 CSS를 아래와 같이 수정 Version 1.2 - 2023/01/03 grid layout으로 인한 레이아웃 깨지는 버그 수정 Version 1.1 - 2022/06/18..
압축 파일을 압축 해제하려고 아래처럼 unzip을 실행했는데 에러가 났다. $ unzip dataset.zip -d data Archive: dataset.zip End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive. unzip: cannot find zipfile directory in one of dataset.zip or ..
2021.02.06 - 백준 온라인 저지(BOJ) 기능 확장 프로그램 백준 온라인 저지(BOJ) 기능 확장 프로그램 백준 온라인 저지(https://www.acmicpc.net) 사이트의 기능을 보완/확장하는 목적으로 BOJ-Extended를 만들었다. BOJ Extended 백준 온라인 저지(BOJ)를 확장된 기능과 함께 사용해보세요. chrome.google.com 처음.. blog.joonas.io 나만의 기능을 원해서 1월에 작게 개발하고, 2월에 배포하기 시작했던 확장 프로그램이었는데, 다같이 자기가 필요한 기능을 만들어봤으면 좋겠어서 오픈소스로 공개하고 관리한 지 벌써 1년이 지났다. 1.7.7 버전 이후로는 stable한 상태이다. 어느 순간부터 Chrome 정책이 Manifest V3 업데..
/* */ 주석을 이용해서 JavaDoc을 자동으로 만들 수 있는데, @Override 한 함수도 똑같이 적어주는 건 귀찮고 불필요한 일이다. 그때마다 @see {#link ClassABC} 처럼 작성해서 오버라이드한 함수를 직접 링크했는데, 그럴 필요가 없었다. /** * * @author Hari Krishna * * @since 1.0 */ public class ABCOrg { /** * Print welcome message to employee. * * @param empName * Employee Name */ public void welcomeEmployee(String empName) { System.out.println("Hello " + empName); } } public class..
작년쯤에 Devlog에 정리한 적이 있지만, GitBook 에디터의 한글 타이핑 버그가 너무 심각해서 옮길 겸 다시 정리한다. Singleton Pattern - Today Joonas Learned Config 클래스의 생성자를 직접 호출하지 못하도록 하여, 인스턴스가 한번만 생성되도록 한다. 대신 getInstace 등의 함수로 인스턴스를 가져다 쓸 수만 있도록 제한한다. devlog.joonas.io 싱글톤 패턴 싱글턴 패턴은 인스턴스를 하나만 생성하여 사용하는 패턴이다. 개인적으로 가장 쉬우면서 흔하게 볼 수 있는 디자인 패턴이다. 예시 프로그램(또는 어플리케이션)의 설정 클래스가 있다고 치자. 그럼 이것은 프로그램 전체에서 마치 하나의 파일처럼 동작해야할것이다. 특히, 데이터베이스를 사용하는 클..