본문 바로가기

프로그래밍

(8)
[Django] STATIC_URL vs STATIC_ROOT ※ 2022년 12월 30일에 작성된 글입니다. Django의 settings.py에 STATIC_URL과 STATIC_ROOT가 있다.STATIC_URL정적 파일이 현재 위치한 경로를 지정한다.웹 서버나 외부 CDN 경로가 될 수도 있다.실제 사용자가 서버에 접속했을 때 정적 파일을 여기서 지정한 경로에서 가져온다.STATIC_ROOTcollectstatic 명령을 사용했을 때 정적 파일이 저장될 경로를 지정한다.참고https://docs.djangoproject.com/ko/4.1/ref/settings/#static-urlhttps://docs.djangoproject.com/ko/4.1/ref/settings/#static-roothttps://stackoverflow.com/questions/3..
[GitHub] 기본 Label 의미 ※ 2022년 3월 18일에 작성한 글입니다. GitHub에 Issue나 Pull Request에 Label을 지정할 수 있는데, 기본적으로 9개의 Label이 제공된다.기본 Label의 의미는 다음과 같다.Label설명bug예상치 못한 문제 또는 의도하지 않은 동작documentation문서에 대한 개선 또는 추가가 필요함duplicate유사한 issue, pull requests 또는 토론enhancement새로운 기능 요청good first issue처음 기여자에게 좋은 issuehelp wanted관리자가 issue 또는 pull request에 대한 도움을 원함을 나타냅니다.invalidissue, pull request 또는 토론이 더 이상 관련이 없음questionissue, pull req..
[Python] 2차원 배열 선언하기 ※ 2021년 12월 19일에 작성된 글입니다.Python에서의 1차원 배열 선언Python에서 1차원 배열을 선언할 때는 다음과 같이 * 연산자를 이용해 간단하게 선언할 수 있다.rows = 10arr = [0] * rows[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]같은 방식으로 2차원 배열 선언하지만, 2차원 배열을 같은 방식으로 선언하면 문제가 생긴다.rows = 10cols = 5arr = [[0] * cols] * rows[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0,..
[Java] JDK 버전별 차이점 정리 (1.5~17) ※ 2021년 11월 26일에 작성된 글입니다.JDK 1.5추가된 기능GenericMetadataAutoboxing/unboxingEnumerationsVarargsEnhanced for each loopImproved semantics of execution for multi-threaded Java programsStatic imports표준 라이브러리 개선Automatic stub generation for RMI objectsSwingThe concurrency utilities in package java.util.concurrentScanner class for parsing data from various input streams and buffersJDK 1.6Support for olde..
[Java] Pattern Matching for instanceof ※ 2021년 11월 23일에 작성된 글입니다.Pattern Matching for instanceofinstanceof에서 객체 타입 확인뿐만 아니라 캐스팅까지 할 수 있다.ReleaseJDK 14: previewJDK 15: second previewJDK 16JEP 394 Pattern Matching for instanceof코드로 비교해보자Beforeif (animal instanceof Cat) { Cat cat = (Cat) animal; cat.meow();} else if (animal instanceof Dog) { Dog dog = (Dog) animal; dog.woof();}instanceof를 이용해 객체 타입을 확인하고 추가로 캐스팅을 해줘야 했다.Afte..
[Java] Switch Expression ※ 2021년 11월 23일에 작성된 글입니다.🕹 Switch Expressionswitch를 명령문(statement) 뿐만 아니라 표현식(expression)으로도 사용할 수 있도록 확장JDK 12, 13에서 preview, JDK 14에서 standard로 제공된다.JEP 361 Switch Expressions코드로 비교해보자Beforeswitch (day) { case MONDAY: case FRIDAY: case SUNDAY: System.out.println(6); break; case TUESDAY: System.out.println(7); break; case THURSDAY: case SATURDAY: ..
[Java] 레코드(Record) ※ 2021년 11월 21일에 작성된 글입니다.레코드(Record)변경할 수 없는 데이터의 투명한 전달자 역할을 하는 클래스Kotlin의 data class와 비슷한 것이라고 보면 될 것 같다.JDK 14에서 preview로 도입되었으며, JDK 16에서 정식으로 도입되었다.JEP 395 Records코드로 비교해보자Beforeclass Point { private final int x; private final int y; Point(int x, int y) { this.x = x; this.y = y; } int x() { return x; } int y() { return y; } public boolean equals(Object o)..
velog 분석 ※ 2021년 11월 18일에 작성된 글입니다.구조 분석Open Sourcevelog는 오픈 소스로 공개되어 있다.velog-clientvelog-serverTech StacksGitHub 저장소 README.md를 참고했다.velog-clientReactReact RouterTypeScriptReduxApollo GraphQLStyled ComponentsRemarkCodemirrorServerless FrameworkAWS Lambdavelog-serverNode.jsTypeScriptApollo GraphQLPostgreSQLTypeORMRedisElasticSearchKoaServerlessAWSLambdaSESAPI GatewayS3Cloudfront대략적인 구조?Koa 프레임워크 백엔드Reac..