본문 바로가기

분류 전체보기

(748)
코딩 테스트 Q1. 1부터 100까지 더하는 프로그램을 작성해보세요 public class Main{ public static void main(String[] args){ int sum = 0; for(int i=1; i 43 > 4 를 프린트하는 프로그램을 작성해보세요. public class Main{ public static void main(String[] args){ int num = 4321; while(true){ if(num == 0){ break; } System.out.println(num); num /= 10; } } } Q4. 피보나치 수열을 각각 재귀/반복문으로 작성해보세요. import java.util.*; public class Main{ public static void main(St..
ArrayList 클래스 Q1. ArrayList의 get 메서드는 어떻게 구현하는가? public get(int index){ if(index = size){ throw IndexOutOfBoundsException(); } return array[index]; } Q2. ArrayList의 set 메서드는 어떻게 구현하는가? public E set(int index, E element){ E old = get(index); array[index] = element; return old; } Q3. ArrayList의 indexOf 메서드와 equals 메서드는 어떻게 구현하는가? public E indexOf(Object target){ for(int i=0; i
0523 TIL 1. Fact - 코드숨 피드백 내용을 반영했다. - 3주차 코드숨 주간 회고를 작성했다. - AOP 강의를 복습했다. - 운영체제 프로세스~프로세스 공유까지 복습했다 - 코드숨 4주차 강의1을 들었다 - Git 강의를 들었다. 2. Feeling - 충분히 몰입했다는데서 만족감을 느낀다. 3. Finding - 그냥 하면 된다 - 최대한 몰입할 수 있는 환경을 스스로 조성해야 한다 - CS 기초 지식의 중요성을 다시 한 번 느꼈다. - 한정된 시간을 최대한 효율적이고, 효과적으로 사용해야 한다. - 가장 중요한 것을 먼저 해야 한다
참조 자료형 Q1. 기본 자료형과 참조 자료형의 가장 큰 차이는 무엇인가? - 기본 자료형과 달리 참조 자료형은 new를 통해 선언한다는 점이 차이점이다. Q2. new 없이도 객체를 생성할 수 있는 참조 자료형은 오직 무엇뿐인가? - String 클래스이다. Q3. 자바의 생성자는 무엇을 위해 존재하는가? - 객체를 생성하기 위해서 존재한다. Q4. Q5. DTO란 무엇인가? 그리고 VO란 무엇인가? 둘의 차이점은 무엇인가? - Data Transfer Object의 약자이다. VO는 Value Object의 약자이다. DTO는 주로 네트워크 상에서 데이터를 전송하는데 쓰이며, VO는 값을 저장하는데 쓰인다. Q6. MemberDTO 클래스는 어떻게 선언할 수 있는가? - 다음과 같이 선언할 수 있다. public..
클린 아키텍쳐 Clean Coder Blog
Git & Github Q1. Git은 어떤 프로그램들 중 하나인가? - VCS 프로그램 중 하나이다. Q2. 버전을 관리한다는 것은 무엇인가? - Q3. 프로그래밍을 하다 보면 내가 한 작업을 무엇을 해야 하는 경우가 생기는가? - 취소해야 하는 경우가 발생한다. Q4. Git은 프로젝트의 시간을 언제든 어떻게 할 수 있는가? - 언제든지 되돌릴 수 있다. Q5. Git은 프로젝트의 내용들을 마치 무엇인 것처럼 자유롭게 전환할 수 있는가? - Q6. Git은 여러 개발자들이 함께 협업을 해서 소프트웨어를 만들어가는데 어떤 기능을 제공하는가? - 필수적인 기능들을 제공한다. Q7. Git을 설치할 때, 무엇을 반드시 포함시켜야 하는가? - Git Bash를 포함시켜야 한다. Q8. Git이 제대로 설치되었는지 무엇을 통해 확인..
코드숨 3주차 회고 3F #1 1. Fact - Spring JUnit을 활용한 유닛 테스트를 실행했다 - Spring WebMVC테스트를 실행했다. - 할 수 있게 된 것 1) JUnit을 활용해서 기본적인 단위 테스트를 할 수 있게 되었다. 2) WebMvc를 활용해서 기본적인 MVC 컨트롤러 테스트를 할 수 있게 되었다. 3) Intellij, Spring Boot 관련 트러블 슈팅 역량이 향상되었다. 2. Feeling - 약간의 성취감을 느낀다. 3. Finding - 보완할 점들 1) 테스트에 대해서 좀 더 깊이 있게 학습하고, 과제에 적용해봤으면 좋았을 것이다. 2) 다른 사람들이 작성한 코드를 참고하고 이해해보고, 마찬가지로 적용해봤으면 좋았을 것이다. 3) 모르는 용어나 모르는 내용에 대해서 선제적으로 질문..
프로세스 동기화 Q1. 프로세스 내부 데이터 통신이란 무엇인가? - 프로세스 내에 있는 스레드끼리 통신하는 것을 의미한다. Q2. 프로세스 내부 데이터 통신 시 어떤 어떤 수단을 사용하는가? - 전역변수, 파일 등을 사용한다. Q3. 프로세스 간 데이터 통신이란 무엇인가? - 하나의 컴퓨터 내에 있는 프로세스 간의 데이터 통신을 의미한다. Q4. 프로세스 간 데이터 통신시 어떤 어떤 수단을 사용하는가? - 파이프, 파일 등을 사용한다. Q5. 네트워크를 이용한 데이터 통신이란 무엇인가? - 네트워크 상에 있는 여러 컴퓨터끼리 하는 통신을 의미한다. Q6. 네트워크를 이용한 데이터 통신 시 어떤 수단을 사용하는가? - 소켓을 사용한다. Q7. 프로세스 간 통신의 분류에는 무엇 무엇이 있는가? - 양방향 통신, 반양방향 통..
스레드 Q1. 스레드란 무엇인가? - 프로세스 내에 위치하는 CPU의 실행 단위를 의미한다. Q2. 멀티스레드란 무엇인가? - 하나의 프로세스 내에 여러 스레드가 동작하는 것을 의미한다. Q3. 멀티태스킹이란 무엇인가? - 하나의 CPU가 여러 프로세스를 번갈아가면서 수행하는 것을 의미한다. Q4. CPU 멀티스레드란 무엇인가? - 하드웨어에 의해 하나의 CPU가 여러 스레드를 병렬적으로 수행함을 의미한다. Q5. 멀티스레드의 장점은 무엇인가? - 1) 응답성 2)자원을 효율적으로 사용함 Q6. 멀티스레드의 단점은 무엇인가? - 하나의 스레드에 문제가 생기면 다른 스레드도 모두 종료해야 한다. Q7. 커널 스레드와 사용자 스레드는 각각 무엇인가? - 참고 Q1~Q7 쉽게 배우는 운영체제, 네이버 면접 자료 5/23
프로세스 Q1. 프로세스란 무엇인가? - 메모리에 올라가서 실행중인 프로그램을 의미한다. Q2. 시분할 방식이란 무엇인가? - 하나의 CPU에 여러 개의 프로세스가 매우 짧은 주기로 교체되는 방식을 의미한다. Q3. 프로세스 제어 블록이란 무엇인가? - 프로세스와 관련된 정보를 관리하는 자료구조를 의미한다. Q4. 프로세스의 다섯 가지 상태는 무엇인가? - 생성, 준비, 실행, 대기, 완료를 의미한다. Q5. 프로세스의 대기 상태가 필요한 이유는 무엇인가? - 프로세스가 입출력 요청을 보냈을 때, 해당 입출력 요청이 완료되기까지 프로세스는 대기해야 한다. Q6. 대기 상태의 프로세스는 요청한 입출력이 완료되면 입출력 관리자로부터 무엇을 받는가? - 인터럽트를 받는다. Q7. 프로세스의 준비 상태란 무엇인가? - ..