일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 미니미프로젝트
- 클린코드
- Spring/JAVA 서적
- 마이크로서비스디자인패턴
- Be
- 부모객체
- KPT
- hateoas
- pair programming
- ComponentScan
- GC
- java
- ATDD
- TDD
- Runtime Area
- 트랜잭션 격리 수준
- 완벽이해
- M:N
- Java 22
- DB
- 스프링으로하는마이크로서비스구축
- testdrivendevelopment
- 도커
- Self Descript Message
- 자식객체
- Execution Engine
- Solid
- G1GC
- RESAPI
- docker
- Today
- Total
목록CS 공부 (14)
Programming Summary
인덱스란 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상 시키기 위한 자료구조이다. 데이터베이스의 index는 책의 색인과도 같은 역할을 한다. 인덱스를 활용하면, 데이터를 조회하는 SELECT 외에도 UPDATE나 DELETE의 성능이 함께 향상된다. 그 이유는 해당 연산을 수행하려면 해당 대상을 조회해야만 작업을 할 수 있기 때문이다. 인덱스(index)의 장점과 단점 장점 테이블을 조회하는 속도와 그에 따른 성능을 향상시킬 수 있음. 전반적인 시스템의 부하를 줄일 수 있음. 단점 인덱스를 관리하기 위해 DB의 약 10%에 해당하는 저장공간이 필요 인덱스를 관리하기 위한 추가 작업이 필요 잘못 사용할 경우 오히려 성능이 저하될 수 있음. 이러한 인덱스를 구현하는데 다..
1) JVM의 정의 자바는 썬 마이크로시스템즈 사의 제임스 고슬링에 의해 개발되었으며, Write Once Run AnyWhere라는 표어를 기반으로 제작되었다. JVM이란 Java Virtual Machine의 줄임말로, 이러한 자바 바이트코드를 실행할 수 있는 주체이다. 표어와 같이 JVM이 있다면 어떤 컴퓨터든 자바 코드를 실행 시킬 수 있다. 또한 자바 바이트 코드로 작성된 다른 언어도 JVM 위에서 실행이 가능하다.(대표적으로 코틀린이 있다) 간단하게 자바 초기 버전에 대해 살펴보면 JDK 1.0은 소형 가전 제품위에서 동작하도록 만든 코드였다.(심지어 카드에서도 돌아갔다) 근데 JVM의 특성상 무거울 수 밖에 없어 망했다. 그러다 웹에서 자바 코드를 돌릴 수 있게 되면서 다시 살아나게 되었다...
1) What OOP? OOP란 Object-Oriented Programming의 줄임말로 객체 지향 프로그래밍을 의미한다. 대부분의 프로그램을 짜는 이유는 현실 세계의 문제를 해결하기 위해 로직을 만들게 된다. 이를 위해 여러 개의 독립된 단위, 객체들의 상호작용을 통해 프로그램 로직을 구성하여 현실 세계를 모방하였다. 2) Why OOP? 그렇다면 왜 객체 지향 프로그래밍을 해야할까? 한 파일안에 모든 코드를 넣는 것을 가정해보자. 어떤 장점이 있을까? 일단 읽기가 편하다. 다른 사람의 코드를 본 사람들은 알겠지만, 여러 파일로 되어있는 코드는 서로 추상적이게 의존하고 있고 구체적인 로직이 궁금하다면 여러 파일을 거치며 이해해야 하므로 많은 수고가 든다. 그러니 한 파일 내에 있으면 보다 가독성을 ..
1) Git은 버전 관리 툴이다 Git을 한마디로 정의하자면 버전 관리(Version Management) 도구이자 협업 툴이다. 즉, 소스 코드의 변경 사항을 버전으로 관리하여 변경 관리보다 체계적인 관리가 가능하도록 하는 것이다. 조금 더 말하자면 깃은 컴퓨터 파일의 변경 사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷 스트림 기반의 분산 버전 관리 시스템(DVCS : Distributed Vesion Control System)이라 할 수 있겠다. 그렇다면 과거에는 버전 관리를 어떻게 했을까? 2) 과거의 버전 관리 툴 과거에는 버전 관리를 안했기 때문에 슈퍼마리오 같은 게임은 초창기 코드가 존재하지 않는다. 조금 지나서는 CD에 소스코드를 넣고, 버전을 적어 버..