오늘도 기록하는 중 GitHub

전체 글 190

[회고] 우테코 프리코스 1주차 - 문자열 덧셈 계산기

🌏과제 - 문자열 덧셈 계산기입력한 문자열에서 숫자를 추출하여 더하는 계산기를 구현한다.쉼표(,) 또는 콜론(:)을 구분자로 가지는 문자열을 전달하는 경우 구분자를 기준으로 분리한 각 숫자의 합을 반환한다. 예: "" => 0, "1,2" => 3, "1,2,3" => 6, "1,2:3" => 6앞의 기본 구분자(쉼표, 콜론) 외에 커스텀 구분자를 지정할 수 있다. 커스텀 구분자는 문자열 앞부분의 "//"와 "\n" 사이에 위치하는 문자를 커스텀 구분자로 사용한다. 예를 들어 "//;\n1;2;3"과 같이 값을 입력할 경우 커스텀 구분자는 세미콜론(;)이며, 결과 값은 6이 반환되어야 한다.사용자가 잘못된 값을 입력할 경우 IllegalArgumentException을 발생시킨 후 애플리케이션은 종료되..

Remembrance 2024.10.23

알고리즘 - DFS와 BFS

개요코테 준비를 시작했는데 너무 부족함을 느끼고 있다. 나오는 문제는 막힘없이 풀 수 있는 정도가 되고 싶다. 왜 이렇게 해야 하는가에 대한 이유는 다음 글을 읽어보길 바란다. 도움이 되는 내용도 많다! https://yozm.wishket.com/magazine/detail/2755/ 개발자를 위한 실전 ‘코딩테스트’ 준비 팁 | 요즘IT개발자라면 누구나 ‘코딩테스트’를 준비해 본 경험이 있을 겁니다. 코딩테스트는 여러분의 두뇌가 얼마나 비상한지, 복잡하게 꼬인 문제를 얼마나 천재적인 발상으로 해결할 수 있는지 시험yozm.wishket.com 그래서 나는 이전에 강의로 배웠던 내용을 다시 공부하거나 부족한 부분을 채우려고 한다. 처음은 DFS와 BFS로 스타트를 끊고자 한다. 설명은 백준의 1260번..

기록/알고리즘 2024.10.22

전기 Electric

전류, 전압, 저항에 대해 우리는 일상에서 전기 에너지로 작동하는 기기를 사용하고 있다. 이번에는 이전부터 흥미가 있었던 전기 에너지에 대한 내용을 다루려고 한다. 보통 컴퓨터 구조 분야로 분리하지 않지만 이번만 따로 분리하지 않고 컴퓨터 구조에서 설명하겠다.    전압 전류를 한 방향 또는 여러 방향으로 흐르게 해주는 물질을 '도체'라고 한다. 이러한 도체 내에 있는 전기적인 위치 에너지를 '전위'라고 하며, 두 점 사이의 전위의 차이를 '전위차'라고 한다. 물은 높은 곳에서 낮은 곳으로 흐른다는 사실은 모두가 알 것이다. 이처럼 전하는 전위가 높은 곳에서 낮은 곳으로 이동한다. 이때 전위의 차이가 '전압'이다. ✌️ 높은 곳에서 떨어지는 물이 더 많은 에너지를 갖고 있듯이, 전압이 클수록, 다시 말해..

UnSupportedException

UnSupportedException 발생우테코의 프리코스 중 하나로 로또를 정해서 진행했다. 한동안 슬럼프(...)가 와서 기능명세서와 패키지 구조까지만 정리하고 나머지는 크게 생각 없이 진행했다. 어찌저찌 빠르게 완성하고 올렸는데 리뷰에서 많은 문제와 의문점을 제기 받았다.  정신없이 개인적인 일들을 처리하고, 기본적으로 주어지는 Test 코드에서 발생한 에러를 처리하기 위해 빠르게 진행했는데 UnSupportedException가 발생했다.   UnSupportedException 원인java.lang.UnsupportedOperationException at java.base/java.util.ImmutableCollections.uoe(ImmutableCollections.java:142) at..

Problems 2024.09.06

메모리와 캐시

중요한 부품 중 하나 다시 컴퓨터 구조와 운영체제를 공부하고 있다. 공부하던 내용을 전부 기록해두면 좋겠지만 사정상 몇 가지만 간추려서 기록할 생각이다. 이번에 다룰 내용은 우리가 자주 보는 컴퓨터 부품 중 하나인 메모리이다! 자주 본다기 보다는 이 부품이 달려있는 컴퓨터를 자주 다룬다고 하는 게 맞겠다. 우리는 자주 메모리라고 하지만 주기억장치에는 RAM과 ROM이 있다. 보통 '메모리'라고 할 때는 RAM을 지칭하는 경우가 많다. 우리가 컴퓨터(PC)에서 실행하는 모든 프로그램은 RAM에 적재된다. 그만큼 프로그래머 입장에서도 성능에 영향을 미치는 아주 중요한 부품이다.   RAM RAM의 가장 중요한 특징은 작동 중간에 전원이 공급되지 않으면 RAM에 저장된 명령어와 데이터가 모두 사라진다. 이러한..

스레드 Thread (1) - 하드웨어와 소프트웨어

Computer Science 학습 시작 CS에 대한 지식이 완전하다고 생각되지 않아 공부를 시작했고, 해당 내용을 정리해서 올리겠다! 오늘은 스레드 Thread에 대한 내용이다. 다만 후에 더 상세한 내용을 담아 정리하도록 하고 오늘은 스레드의 간단한 개념에 대해서 정리하려고 한다.  스레드 Thread 스레드의 사전적 의미는 실행 흐름의 단위라고 한다. 다만 스레드는 CPU와 프로그래밍에서 사용되는 예가 다르다. 따라서 스레드는 하드웨어적인 의미와 소프트웨어적인 의미가 있다.  하드웨어적 스레드CPU에서 쓰이는 스레드의 의미다. 흔히 우리들은 컴퓨터를 사려고 할 때 몇 코어 몇 스레드라는 CPU에 대한 설명을 듣게 된다. 코어가 '명령어를 실행하는 부품'이라면 스레드는 '하나의 코어가 동시에 처리하는..

CS/OS 2024.07.08

Uncaught Error: [🍍]: "getActivePinia()" was called but there was no active Pinia.

개발환경 : Vue.js, vscode 개요와 해결 https://github.com/ViewGorithm/viewgorithm-frontend GitHub - ViewGorithm/viewgorithm-frontend: viewgorithm FrontEndviewgorithm FrontEnd. Contribute to ViewGorithm/viewgorithm-frontend development by creating an account on GitHub.github.com Viewgorithm 프로젝트를 진행하는 도중에 다음과 같은 에러가 발생했다. Uncaught Error: [🍍]: "getActivePinia()" was called but there was no active Pinia. Ar..

Problems 2024.07.05

CommunicationsException: Communications link failure

개발환경 : Vue, spring, mysql, docker compose, redis 사건발생 프로젝트를 진행하다가 만난 녀석. 이 녀석이 발생하는 원인은 여러 가지라는데 실제로 이 문제를 해결해가는 와중에 여러 원인이 있었음을 발견했다. 시간도 참 오래 걸렸다. 위에서 작성했다시피 개발환경에서 spring 프로젝트를 dockerize해서 개발 서버에서 mysql, redis 이미지를 pull해와 docker-compose를 활용해 다중 컨테이너를 동시 관리하기로 했다. 그런데 계속 db 컨테이너와 spring 컨테이너에서 문제가 발생했다. 로그를 확인해보니 Caused by 문구에서 시작하는 각 로그가 결정적인 요인이었다. 대부분 'docker-compose.yml 내에서 오타가 있거나 활용을 잘못했..

Problems 2024.06.16

Java - 파일 관리

Java의 파일 관리?2024.06.05 - [공부한 기록/Programming Language] - Java - 스트림 Stream (2) Java - 스트림 Stream (2)2024.04.24 - [공부한 기록/Programming Language] - Java - 스트림 Stream입출력 처리 여기서 다루는 스트림의 개념은 이전 스트림 관련글과 같다. 스트림에 관한 내용을 다시 상기하려면 위 링크를 누르고aitidev.tistory.com 이전에 작성한 글의 연장선인데, 입출력 스트림에 대한 내용이었다. 이런 입출력 스트림은 파일이나 장치를 읽거나 쓰기 위해 사용하는데 파일 자체의 관리 기능은 제공하지 않는다. Java에서는 이러한 필요를 충족시키기 위해 File 클래스를 제공한다. File 클래..

기록/Language 2024.06.06

Java - GUI

GUIGraphic User Interface의 약자로, 화면에 정보를 시각적으로 표현한, 사용자와 컴퓨터 간의 상호작용 방식이다. 우리가 당연 시 여기는 노트북을 켰을 때의 화면이 그것이다! 오늘은 이러한 GUI를 Java에서 어떻게 다루는지에 대해 공부한 내용을 정리하려 한다. GUI 프로그래밍을 하려면 아래 두 가지 라이브러리를 다룰 수 있다. AWT (abstract windows toolkit) : 운영체제가 제공하는 UI 컴포넌트 java 라이브러리다! 중량 컴포넌트라고도 하며, 운영체제에 따라 외형이 다르다.Swing : 순수 자바로 작성된 경량 컴포넌트다! 모든 스윙 컴포넌트는 AWT 컴포넌트와 완전 호환한다. AWTSwing구성 요소무거운 컴포넌트 (운영 체제 객체의 래퍼)가벼운 컴포넌트..

기록/Language 2024.06.06
반응형