helloyl
수강평 작성수
-
평균평점
-
블로그
전체 10#카테고리
- 백엔드
- 알고리즘 · 자료구조

2024. 10. 27.
0
인프런 워밍업 클럽 스터디 2기 - BE 4주차 발자국
수강한 강의https://www.inflearn.com/course/practical-testing-실용적인-테스트-가이드학습한 내용Spring & JPA 기반 테스트Spring Bean Validation@WebMvcTestMockMockito, BDDMockitoTest Double@Mock, @Spy, @InjectMocks조언한 문단에 한 주제완벽하게 제어하기테스트 환경의 독립성 / 테스트 간 독립성Test Fixture@ParameterizedTest, @DynamicTest테스트 수행도 비용이다Q. private 메서드의 테스트Q. 테스트에서만 필요한 메서드Appendix학습 테스트Spring REST Docs회고테스트 코드를 실무에서 사용한 경험이 없고 사이드 프로젝트에서만 한번씩 간단하게 사용해보면서 부족한 점이나 어렵게 느껴진 점이 많았는데 이 강의를 통해서 실무에서 활용하는 방식이나 그 외 다양한 팁들을 얻을 수 있었다.이후에 강의를 복습하면서 테스트 코드 작성에 좀 더 익숙해지는 시간을 더 가져야겠다.과정에 참여하면서 주어진 시간 내에 강의를 완강할 수 있어서 뿌듯하고 약간의 강제성이 도움이 되었던 것 같다.테스트 코드를 작성해야 하는 이유를 기억하고, 실무에서 사용하게 될 날에도 꼭 잊지말자! 🔥
백엔드

2024. 10. 20.
0
인프런 워밍업 클럽 스터디 2기 - BE 3주차 발자국
수강한 강의https://www.inflearn.com/course/practical-testing-실용적인-테스트-가이드학습한 내용단위 테스트수동 테스트와 자동화 테스트해피케이스, 예외케이스경계값 테스트TDD레드 - 그린 - 리팩토링테스트란DisplayNameBDDSpring & JPA 기반 테스트Layered ArchitectureORM회고테스트 코드에 대한 경험이 많이 부족한데 강의에서 강사님의 설명과 예시를 통해 많이 배웠고 점점 범위를 넓혀가니 흥미로웠다.막상 강의를 듣다가 미션을 하려고 할 때 테스트 코드를 작성하는 게 쉽지 않게 느껴져서 많은 연습과 익숙해지는 과정이 필요할 것 같다..!Spring & JPA 기반 테스트에 대한 내용이 있어서 더 유용하게 느껴졌고 다음주 강의 내용도 기대가 된다~!차주 완강까지 좀 더 의욕적으로 참여해보자! 💪
백엔드

2024. 10. 20.
1
인프런 워밍업 클럽 스터디 2기 - CS 3주차 발자국
수강한 강의https://www.inflearn.com/course/비전공자-운영체제https://www.inflearn.com/course/자료구조-알고리즘-기본학습한 내용운영체제메모리메모리 종류할당 방식가상메모리세그멘테이션페이징교체 정책입출력 장치파일시스템자료구조정렬삽입정렬병렬정렬퀵정렬DP메모이제이션타뷸레이션회고이번주 강의를 통해 정렬 종류와 방식을 확실히 구분할 수 있게 된 것 같다. 강의에 나오는 그림과 설명을 통해 쉽게 이해할 수 있었다.운영체제 강의에서 메모리, 가상메모리, 파일시스템 관련 내용이 흥미로웠다.일부 강의는 조금 급하게 들어서 복습이 필요할 것 같다!완강을 하고 이번 스터디를 무사히 마치게 되어서 뿌듯하다 😊
알고리즘 · 자료구조

2024. 10. 20.
1
인프런 워밍업 클럽 스터디 2기 - CS 3주차 미션
운영체제메모리의 종류는 어떤 것들이 있나요? 각 메모리의 특징도 함께 적어주세요.레지스터가장 빠른 저장 장소, 휘발성 메모리캐시메인 메모리에서 미리 가져온 데이터를 저장메인 메모리휘발성 메모리, 실행 중 프로그램을 올림보조저장장치비휘발성 메모리사용자 프로세스가 메모리의 운영체제 영역에 침범하지 못하도록 만든 레지스터는 어떤 레지스터일까요?경계 레지스터메모리 할당 방식에서 가변 분할 방식과 고정 분할 방식의 장단점은 뭔가요?가변 분할 방식장점 : 내부 단편화 없음단점 : 외부 단편화 발생고정 분할 방식장점 : 구현이 간단함, 오버헤드가 적음단점 : 내부 단편화 발생CPU 사용률을 올리기 위해 멀티프로그래밍을 올렸지만 스왑이 더 많이 이루어져 CPU 사용률이 0%에 가까워 지는 것을 뭐라고 할까요?스레싱HDD나 SSD는 컴퓨터를 실행시키는데 꼭 필요한 걸까요? 이유를 함께 적어주세요.필요함, 컴퓨터를 실행시킬 때 필요한 파일들이 저장되어있음파일을 삭제해도 포렌식으로 파일을 복구할 수 있는 이유가 무엇일까요?파일 시스템이 파일의 모든 정보가 아닌 파일 테이블의 헤더를 삭제하고 Free Block List에 추가함사용했던 블록의 데이터는 그대로 남아있음자료구조와 알고리즘지금까지 배운 5개의 정렬 알고리즘의 장단점과 시간 복잡도를 적어주세요.버블 정렬장점 : 이해와 구현이 간단단점 : 성능 좋지 않음시간 복잡도 : O(n^2)선택 정렬장점 : 이해와 구현이 간단단점 : 성능 좋지 않음시간 복잡도 : O(n^2)삽입 정렬장점 : 이해와 구현이 간단단점 : 성능 좋지 않음시간 복잡도 : O(n^2)병합 정렬장점 : 성능 좋음단점 : 이해와 구현이 어려움시간 복잡도 : O(nlogn)퀵 정렬장점 : 성능 좋음단점 : 이해와 구현이 어려움시간 복잡도 : Θ(nlogn) ~ O(n^2)메모리가 부족한 시스템에서 어떤 문제를 해결하는데 재귀로 쉽게 구현이 가능할 것 같습니다. 여러분이라면 메모이제이션과 타뷸레이션 중 어떤 걸 이용하실 건가요? 이유를 함께 적어주세요.타뷸레이션적은 메모리 사용임에도 성능이 좋음
알고리즘 · 자료구조

2024. 10. 13.
0
인프런 워밍업 클럽 스터디 2기 - BE 2주차 발자국
수강한 강의https://www.inflearn.com/course/readable-code-읽기좋은코드-작성사고법학습한 내용코드 다듬기주석의 양면성변수, 메서드의 나열 순서패키지 나누기기능 유지보수버그 잡기알고리즘 교체IDE 도움 받기코드 포맷, 정적 분석 등리팩토링 연습조언능동적 읽기오버 엔지니어링은탄환은 없다회고코드 다듬기 섹션을 통해 더 나은 코드, 구조 등을 만들어가는 과정에 대해서 알 수 있어 좋았고 리팩토링 연습을 통해 이전까지 배웠던 내용에 대해 실습할 수 있는 시간이 있어 유익했다.리팩토링 연습은 개인적으로 부족했던 부분이 많고 아직 제대로 실습을 하지 못해서 이후에도 좀 더 진행해봐야겠다.이번주까지 해서 완강을 했는데 마지막 조언들마저 인상적인 강의였다.차주부터는 새로운 강의를 들어가게 되어 기대가 된다! 😊
백엔드

2024. 10. 13.
1
인프런 워밍업 클럽 스터디 2기 - CS 2주차 발자국
수강한 강의https://www.inflearn.com/course/비전공자-운영체제https://www.inflearn.com/course/자료구조-알고리즘-기본학습한 내용운영체제CPU 스케줄링FIFO (First In First Out)SJF (Shortest Job First)RR (Round Robin)MLFQ (Multi Level Feedback Queue)프로세스 동기화프로세스 간 통신공유자원과 임계구역세마포어 / 모니터데드락메모리자료구조재귀재귀적으로 생각하기정렬버블정렬선택정렬회고재귀는 헷갈릴 때가 많았는데 강의에 나오는 그림을 통해 이해하니까 한결 쉽게 느껴졌다. 재귀함수는 하향식 계산에서 진정한 위력이 발생한다고 하니 이후에는 이런 케이스에서 재귀를 활용해봐야겠다.차주에 듣게 될 정렬과 동적 프로그래밍은 자주 다루는 내용이고 유용할 것 같아 집중해서 들어보고 차이를 확실히 기억하자!운영체제에서 다루는 개념들은 여러 번 반복해서 들어보기 ⭐2주차까지 잘 따라왔으니 마지막 3주차도 화이팅 👍
알고리즘 · 자료구조

2024. 10. 13.
1
인프런 워밍업 클럽 스터디 2기 - CS 2주차 미션
운영체제1. FIFO 스케줄링의 장단점이 뭔가요?장점 : 단순하고 직관적단점 : 실행시간에 따라 프로세스 대기시간이 길어질 수 있고, I/O 작업으로 인해 CPU 사용률이 떨어짐 2. SJF를 사용하기 여러운 이유가 뭔가요?프로세스 종료시간을 예측하기 어려움Burst Time이 긴 프로세스는 오래 대기할 수 있음 3. RR 스케줄링에서 타임 슬라이스가 아주 작으면 어떤 문제가 발생할까요?컨텍스트 스위칭이 많이 발생하게 되므로 오버헤드가 커짐 4. 운영체제가 MLFQ에서 CPU Bound Process와 I/O Bound Process를 어떻게 구분할까요?타임 슬라이스 크기를 오버해서 강제로 CPU를 뺏기는지 아니면 시간 내에 끝나서 스스로 반납하는지를 보고 구분할 수 있음 CPU를 뺏긴다면 CPU Bound Process일 확률이 높고, 스스로 반납한다면 I/O Bound Process일 확률이 높음 5. 공유자원이란 무엇인가요?프로세스 간 공동으로 사용하는 자원 6. 교착상태에 빠질 수 있는 조건은 어떤 것들을 충족해야할까요?상호배제비선점점유와 대기원형 대기자료구조와 알고리즘재귀함수에서 기저조건을 만들지 않거나 잘못 설정했을 때 어떤 문제가 발생할 수 있나요?콜스택이 가득 차서 종료될 수 있음 0부터 입력 n까지 홀수의 합을 더하는 재귀 함수를 만들어보세요.function sumOdd(n){ if(n

2024. 10. 06.
0
인프런 워밍업 클럽 스터디 2기 - BE 1주차 발자국
수강한 강의https://www.inflearn.com/course/readable-code-읽기좋은코드-작성사고법학습한 내용추상과 구체추상화 레벨논리, 사고의 흐름뇌 메모리 적게 쓰기사고의 depth 줄이기객체 지향SOLID적용하기회고추상과 구체라는 개념에서부터 시작하는 설명의 흐름이 좋았고, 지뢰찾기 프로젝트 리팩터링을 개념과 실제 코드를 오가는 방식을 통해 더 쉽고 명확하게 이해할 수 있었다.객체 지향과 관련하여 때때로 모호하게 느껴지는 개념들이 있었는데 그 부분이 좀 더 잡혀진 것 같고, 강의를 보면서 하나씩 적용해보니 스스로 응용해볼 수 있는 폭도 넓어진 것 같다.강의 내용과 진도를 조금 급하게 따라간 감이 있어서 그 부분은 아쉽고 실습을 눈으로만 보고 넘어간 부분은 차후에라도 꼭 직접 리팩터링해봐야겠다.읽기 좋은 코드 작성은 늘 중요하니 이번 강의에서 최대한 많이 배우고 익혀보자! 조만간 꼭 실전에서도 적용할 수 있길 🙏
백엔드

2024. 10. 06.
1
인프런 워밍업 클럽 스터디 2기 - CS 1주차 발자국
수강한 강의https://www.inflearn.com/course/비전공자-운영체제https://www.inflearn.com/course/자료구조-알고리즘-기본학습한 내용운영체제프로그램과 프로세스의 차이멀티프로그래밍과 멀티프로세싱PCB프로세스 상태와 생성~종료 과정쓰레드자료구조시간복잡도 표현여러가지 자료구조와 장, 단점배열, 연결리스트스택, 큐, 덱해시테이블, 셋회고일부 알고 있다고 생각했던 내용이었음에도 쉽게 설명하는 게 어렵게 느껴졌다. 익숙해지고 바로 설명할 수 있을 정도로 기초에 탄탄해지고 싶다.이번주에 강의를 다소 몰아듣게 되었는데 차주에는 최대한 일정에 맞춰서 들어보자!그래도 1주차 목표치와 과제를 모두 끝낸 점은 칭찬해~
알고리즘 · 자료구조

2024. 10. 06.
1
인프런 워밍업 클럽 스터디 2기 - CS 1주차 미션
운영체제while(true){ wait(1); // 1초 멈춤 bool isActivated = checkSkillActivated(); // 체크 }위 코드는 1초 마다 플레이어가 스킬을 사용했는지 체크하는 코드입니다. 이 방식은 폴링방식입니다. 1초마다 체크하기 때문에 성능에 좋지 않습니다. 이를 해결하기 위한 방식으로 어떤 걸 이용해야 할까요?폴링 대신 인터럽트 방식을 이용 (스킬을 사용한 후 인터럽트를 통해 알려주기) 프로그램과 프로세스가 어떻게 다른가요?프로그램은 정적인 실행 파일이고, 프로세스는 메모리에 올라가 실행 중인 프로그램 멀티프로그래밍과 멀티프로세싱이 어떻게 다른가요?멀티프로그래밍은 메모리에 여러 개의 프로세스가 올라오는 것, 멀티프로세싱은 CPU가 여러 개의 프로세스를 처리하는 것을 의미함 운영체제는 프로세스를 관리하기 위해서 어떤 것을 사용하나요?PCB (Process Control Block) 컨텍스트 스위칭이란 뭔가요?하나의 프로세스를 실행하다가 다른 프로세스를 실행할 때, 이전 프로세스의 상태(컨텍스트)를 저장하고 새로운 프로세스의 상태를 불러오는 작업자료구조와 알고리즘여러분은 교실의 학생 정보를 저장하고 열람할 수 있는 관리 프로그램을 개발하려고 합니다. 이 때 여러분이라면 학생의 정보를 저장하기 위한 자료구조를 어떤 걸 선택하실 건가요? 이유를 함께 적어주세요.해시테이블 / 키-값 구조로 빠른 데이터 읽기, 삽입/삭제 가능하므로 적합 여러분은 고객의 주문을 받는 프로그램을 개발하려고 합니다. 주문은 들어온 순서대로 처리됩니다. 이 때 여러분이라면 어떤 자료구조를 선택하실 건가요? 이유를 함께 적어주세요.큐 / FIFO의 구조를 가지고 있어 순서대로 주문을 처리하기에 적합
알고리즘 · 자료구조




