전체 글 229

[TIL] 2021.12.16 코딩 테스트 준비중 - 선택정렬 / 버블정렬 / 좌표 정렬하기2 / Arrays.sort() 정렬 방법 / 면접 질문 대비

오늘은 정렬 파트를 공부해야 되서 일단 선택정렬과 버블정렬을 공부했다 https://github.com/NayoungBae/oneday-onesolve/commit/5e0d688103bbcdff26efd640fecd5e8294b1e7a0?short_path=0d0ce93#diff-0d0ce93f207fb3619d5f22eb353efb6b361222f318d5dd1975d4e155363b91ad Create 12-15 선택정렬.md · NayoungBae/oneday-onesolve@5e0d688 Permalink This commit does not belong to any branch on this repository, and may belong to a fork outside of the reposi..

항해99 3기 2021.12.19

2021.12.18 면접 질문 준비(수정필요) - SpringBoot/Spring

Spring Boot 이야기를 하셨는데, Spring Boot와 Spring Framework의 차이점은 무엇인가요? 스프링 부트와 스프링 프레임워크의 가장 큰 차이는 Auto Configuration의 차이인 것 같습니다. 한 예로써 Spring MVC 프로젝트를 Spring Framework 기반으로 구성을 한다면, 컴포넌트 스캔, bean 설정, Dispatcher Servlet 설정, View Resolver, JDBC 설정, 웹 jar 설정 등의 다양한 설정을 해야하지만 이를 Spring Boot 기반으로 구성함으로써 초기 개발 환경 세팅에 걸리는 리소스를 많이 아낄 수 있다고 생각합니다. 스프링 부트 프로젝트를 생성할 시 스프링 부트에서는 내장 서블릿 컨테이너인 톰캣(tomcat)이 자동적으로..

항해99 3기 2021.12.19

2021.12.17 면접 질문 준비(수정필요) - Java

java의 장단점 장점 운영체제에 독립적이다. JVM에서 동작하기 때문에, 특정 운영체제에 종속되지 않는다. 객체지향 언어이다. 객체지향적으로 프로그래밍 하기 위해 캡슐화, 상속, 다형성 등 여러 언어적 지원을 하고있다. 자동으로 메모리 관리를 해준다. JVM에서 Garbage Collector라고 불리는 데몬 쓰레드에 의해 GC(Garbage Collection)가 일어난다. GC로 인해 별도의 메모리 관리가 필요 없으며 비지니스 로직에 집중할 수 있다. (참고) 단점 비교적 속도가 느리다. 자바는 한 번의 컴파일링으로 실행 가능한 기계어가 만들어지지 않고 JVM에 의해 기계어로 번역되고 실행하는 과정을 거치기 때문에 C나 C++의 컴파일 단계에서 만들어지는 완전한 기계어보다는 속도가 느리다. 그러나 ..

항해99 3기 2021.12.19

2021.12.16 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 데이터베이스

Transaction 트랜잭션(Transaction)이란 무엇인가? 트랜잭션은 데이터베이스의 상태를 변화시키기 위해 수행하는 '작업의 단위' 입니다 여기서 데이터베이스의 상태를 변화시킨다는 것은 INSERT, SELECT, UPDATE, DELETE 를 수행하는 것을 말합니다 주의할 점은 INSERT나 SELECT, UPDATE, DELETE 작업을 하나만 하는 것을 말 하는것이 아닙니다 하나의 기능을 수행할 때 실행되는 여러가지의 SQL문을 통틀어서 말합니다 트랜잭션과 Lock 트랜잭션의 특성 트랜잭션의 특징은 크게 4가지로 분류됩니다 원자성은 트랜잭션이 데이터베이스에 모두 반영되거나 반영되지 않는 것을 말합니다. 일관성은 트랜잭션의 작업 처리가 항상 일관성이 있어야 한다는 것입니다 독립성은 어떤 하나..

항해99 3기 2021.12.19

2021.12.15 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 데이터베이스

데이터베이스 데이터베이스를 사용하는 이유 데이터베이스가 등장하기 전에는 파일시스템으로 데이터를 관리해 왔는데 파일시스템은 파일마다 같은 내용이 있는 '중복'이나 데이터를 변경하면 변경한 데이터와 연관되어있는 데이터를 모두 수정해야하는 '비일관성' 등 여러가지의 문제점이 있었습니다 이것을 해결하기 위해 데이터베이스가 등장했습니다 데이터베이스 성능 데이터베이스는 하나의 데이터베이스에 여러 응용프로그램이 접근이 가능하기 때문에 데이터의 중복을 최소화할 수 있습니다 또한, 데이터베이스는 한 군데에서 데이터를 관리할 수 있기 때문에 보안성이 향상되고 보안 비용이 절감됩니다 데이터의 무결성? https://yang1650.tistory.com/28 Index Index 란 무엇인가 : 데이터베이스 테이블의 검색 속..

항해99 3기 2021.12.17

2021.12.14 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 운영체제

프로세스 동기화란? 데드락 임계구역 세마포어 루텍스락 메모리 관리 전략 메모리 관리 배경 - 메모리 용량이 증가함에 따라 프로그램의 크기 또한 계속 증가하고 있기 떄문에 메모리는 언제나 부족 - 제한된 물리 메모리의 효율적인 사용과 메모리 참조 방식을 제공하기 위한 전략 해결책으로 나온 방법 중 일부가 paging, segmentation입니다 Paging 프로세스가 저장될 때 논리메모리로 공간관리가 되어 물리메모리에 순서 상관없이 프레임에 매핑된다. 문제점 : 내부 단편화가 심해진다. Segmentation 페이징처럼 같은 논리/물리 메모리 크기로 넣는게 아니라 서로 다른 논리적 단위 세그먼트로 분할하여서 넣는다. 문제점 : 중간에 프로세스가 빠지면 구멍 뚫리면서 외부 단편화가 일어남 https://v..

항해99 3기 2021.12.17

2021.12.13 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 운영체제

프로세스와 스레드의 차이 프로세스: 운영체제로부터 자원을 할당받은 작업의 단위. 스레드: 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위. 운영체제가 프로세스에게 Code/Data/Stack/Heap 메모리 영역을 할당해 주고 최소 작업 단위로 삼는 반면, 스레드는 프로세스 내에서 Stack 메모리 영역을 제외한 다른 메모리 영역을 같은 프로세스 내 다른 스레드와 공유한다. https://velog.io/@raejoonee/%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EC%99%80-%EC%8A%A4%EB%A0%88%EB%93%9C%EC%9D%98-%EC%B0%A8%EC%9D%B4 스케줄러의 종류 장기 스케줄러 단기 스케줄러 중기 스케줄러 CPU 스케줄러 FCFS First C..

항해99 3기 2021.12.17

2021.12.11 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 네트워크

GET, POST 방식의 차이점 GET 방식은 데이터를 쿼리스트링으로 보내며, 전송량에 제한이 있습니다 url에 데이터가 포함되어있기 때문에 사용자에게 데이터가 노출이 됩니다 그리고 브라우저에 캐싱이 가능합니다 POST 방식은 데이터를 HTTP Body에 포함해서 보내며, 전송량에 제한이 없습니다 Body에 포함되어 있기 때문에 사용자에게 데이터가 노출되지 않습니다 그리고 브라우저에 캐싱이 불가능합니다 멱등성? 조회를여러번해도결과는같다 / post는 요청해도 결과는 달라진다 https://preamtree.tistory.com/12 TCP 3-way-handshake 3-way handshake는 신뢰성 있는 통신을 위한 연결을 설정하는 과정입니다. 1. 클라이언트가 SYN 패킷을 서버에 전송 2. 서버..

항해99 3기 2021.12.17

[TIL] 2021.12.15 코딩 테스트 준비중 - 네번째 시험 : 추석 트래픽 / 면접 질문 준비

네번째 시험.. 문제 자체를 아직도 이해 못했다 너무 어렵다.. 난이도 상 문제를 풀라고 하면 어떻게 푸냐... 당시 카카오 시험때도 푼 사람이 14%였던데... 블로그 풀이도 아무리 봐도 1도 이해가 되지 않는다.. 일단 블로그 풀이를 제출했다 알고리즘을 더 공부하고 다시 풀어봐야겠다 https://github.com/NayoungBae/oneday-onesolve/commit/334b94fe5da6d9c21a46c5709bb8674a85b546b7#diff-d2a28efbe2d77cfce7364cd6d51defd40fa1d2417d8992512da242ff71308e60 Update and rename Test)추석_트래픽(2021-12-15).md to Test)★추석_트래픽(2021-12-… · ..

항해99 3기 2021.12.17

[TIL] 2021.12.14 코딩 테스트 준비중 - 동적 계획법 / 신나는 함수 실행 / 파도반 수열

chapter4: 동적계획법 B) 신나는 함수 실행 https://github.com/NayoungBae/oneday-onesolve/commit/d45b68b06298e4869ec579c025f7d1da43f37cc7?short_path=077c54a#diff-077c54a4c729e4790bb6938e27aa5e89da35a28340d3e5f96790faf0070ac5e2 Update and rename baekJoon/B)신나는_함수_실행(2021-12-14).md to baekJoon/cha… · NayoungBae/oneday-onesolve@d45b68b …pter4/B)신나는_함수_실행(2021-12-14).md github.com C) 파도반 수열 https://github.com/Nayo..

항해99 3기 2021.12.17