- [독서 노트] <서번트 리더십>-윌리엄 C.헌터 저Song hyun[독서 노트] -윌리엄 C.헌터 저 사람들이 '서번트 리더십'이라는 말을 쓰는 걸 보고 검색하게 되었는데,그게 이 책에서 비롯된 말이었다. 알고보니 리더쉽, 팀 프로젝트 등의 분야에서는 상당히 유명한 책이었다. 이 책은 주인공이 수도원에 '리더십 세미나'를 들으러 가게 되는 것으로 내용이 시작된다. 수도원에 리더쉽의 전설, '시몬(렌 호프만)'이 있다는 소식을 들었기 때문이다. 에서 '리더'는 봉사하는 자라고 정의된다. 구성원들을 바꾸려하기 보다는 그 리더가 직접 바뀌고, 성장해야하며, 언제나 구성원들을 위해 경청하고 봉사해야 한다고 이야기한다. 이 리더십의 본질은 포용력과 사랑이다. '내가 대접받기를 원하는 대로 상대를 대접하라'라는 말이 문득 떠올랐다. 작든, 크든 타인과 함께 일을 하다보면 마..
- 2024-05-01 17:53:50
- [Java] 69. 멀티 스레딩의 개념과 동기화Song hyun[Java] 69. 멀티 스레딩의 개념과 동기화1. 멀티 스레딩(Multi-Threding)이란?2. 자바 멀티 스레딩과 동기화1. 멀티 스레딩(Multi-Threding)이란?(1) 멀티 스레딩의 정의:멀티 스레딩(Multi Threading)이란 프로그램의 여러 부분이 동시에 실행되도록 하는 기술이다.이를 통해 자원의 효율적인 사용과, 응용 프로그램의 반응성을 향상시킬 수 있다. 멀티 스레딩은 하나의 프로세스 내에서 여러 개의 스레드를 생성해, 병렬 처리를 가능하게 한다.(2) 멀티 스레딩의 특징-멀티 스레딩에서 각각의 스레드들은 자신만의 작업 공간을 가진다.-각 스레드 사이에서 공유하는 자원이 있을 수 있다.-스레드가 자원을 공유하여 작업을 진행할 경우, 서로 자원을 차지하려는 race condit..
- 2024-05-01 14:06:43
- [Java] 68. 메모리 상에서의 스레드Song hyun[Java] 68. 메모리 상에서의 스레드 1. 메모리 상에서의 스레드의 개념2. 응용 예제: 공룡 게임 코드 수정하기1. 메모리 상에서의 스레드의 개념모든 자바 프로그램은 메인 스레드에서 시작되며, 사용자는 추가 스레드를 만들 수 있다.각 스레드는 독립적으로 실행되며, 자신만의 호출 스택을 지니게 된다. (각 쓰레드의 스택 영역은 서로 나뉘어져 있다.) 프로세스 내의 모든 스레드는 같은 Heap 메모리 공간과 다른 자원을 공유할 수 있다.2. 응용 예제: 공룡 게임 코드 수정하기-적 캐릭터와 만났을 때 캐릭터가 사라진다.-스페이스바를 눌렀을 때 적 캐릭터가 멈춘다. 쓰레드의 개념을 이용해 해당 예제를 만들어보자.package ch08;import java.awt.Graphics;import java.a..
- 2024-05-01 12:50:00
- [Error Note] 20. 파일 오류: Unhandled exception type FileNotFoundExceptionSong hyun[Error Note] 20. 파일 오류: Unhandled exception type FileNotFoundException 텍스트 파일을 이용해, 예외 처리(exception) 예제를 작성하던 중, 에러가 발생했다.잘 보..
- 2024-05-01 11:29:00
- [Java] 67. 쓰레드의 개념과 사용 방법Song hyun[Java] 67. 쓰레드의 개념과 사용 방법1. 쓰레드의 정의 2. 쓰레드를 추가로 만들어 사용하기 3. 쓰레드 상태1. 쓰레드(Thread)의 정의 (1) 저장되어 있는 프로그램이 실행되면, OS로부터 메모리를 할당받아, 프로세스 상태가 된다. (2) 하나의 프로세스는 하나 이상의 쓰레드를 가지게 된다. 쓰레드란 실제 작업을 수행하는 단위이다. -> 프로그램이 실행되면, 그것을 프로세스(메모리 관점)이라고 부를 수 있다. -> 각각의 프로세스들은 하나 이상의 쓰레드를 가지게 된다.(3) 데이터는 RAM에 저장되고, CPU가 연산 및 계산 처리를 한다. 그리고 둘 사이에는 쓰레드 스케쥴러가 존재한다. (4) 쓰레드 스케쥴러는 자동적으로 쓰레드의 연산을 처리하고, 교체해준다. 이를 컨텍스트 스위칭(C..
- 2024-05-01 09:44:26
- [독서 노트] <IT 개발자의 거의 모든 것>-이병덕 저Song hyun[독서 노트] -이병덕 저 IT 개발자들은 실제로는 어떤 일을 할까? 이 책을 읽으면서 가장 인상깊었던 것은 바로 개발자에게 필요한 덕목,이라는 부분이었다. 책의 저자는 개발자에게 필요한 것은 비단 기술력 뿐만 아니라, 전체적인 일을 파악하고 앞으로 해야할 일을 판단하는 안목, 주체성, 팀워크 등등 여러 복합적인 능력들이었다. (물론 기술력은 필수다.) 특히 주체성은 해당 프로젝트에 필요한 기능, 부족한 부분, 오류 등의 부분들을 고려하는 데에 있어 필수적인 부분이었다. 예제 코드들을 작성할 때, '실제로 이런 프로그램이 생긴다면, 사용자들은 어떤 부분을 원할까?'라는 생각을 해봐야겠다고 느낀 부분이다. 방어적 코드를 작성할 때 선생님께서 말씀하셨던 부분들이 조금이나마 이해가 되는 파트였다.
- 2024-04-30 16:59:46
- [Error Note] 19. 추상 메서드(상속) 오류: The type must implement the inherited abstract methodSong hyun[Error Note] 19. 추상 메서드(상속) 오류: The type must implement the inherited abstract method 함께 보면 좋을 글: 추상 클래스https://whatsthatsound.tistory.com/92 하나 이상의 추상 메서드를 포함하고 있는 클래스이다. ->추상 클래스는 구현이 없는(메서드 몸체가 없는) 메서드이며, 추상" data-og-host="whatsthatsound.tistory.com" data-og-source-url="https://whatsthatsound.tistory.com/92" data-og-url="https://whatsthatsound.tistory.com/92" data-og-image="https://scrap.kak..
- 2024-04-30 16:17:47
- [Java] 66. Swing: 랜덤 숫자 게임 만들기Song hyun[Java] 66. Swing: 랜덤 숫자 게임 만들기 아래의 사진처럼, Game Start 버튼을 누르면 랜덤한 번호 6개를 만들어주는 프로그램을 작성해보자. LottoFrame 클래스 살펴보기 (1) 상속 및 인터페이스 -상속: JFrame(부모 클래스) -implements: ActionListener(인터페이스) (2) 멤버 변수 -JButton형 변수 button -LottoRandomNumber형 변수 lottoRandomNumber (포함 관계) -boolean형 변수 isStart=true; -int형 변수 NUMBER_DISTANCE=50; (3) 사용자 정의 생성자 -setTitle: 창의 제목을 설정한다. ("Lotto Game") -setSize: 창의 크기를 설정한다. (가로 60..
- 2024-04-30 15:14:17
- [Java] 65. Swing: 키보드 리스너 응용하기Song hyun[Java] 65. Swing: 키보드 리스너 응용하기*참고하면 좋은 글: 키보드 리스너https://whatsthatsound.tistory.com/121 [Java] 64. Swing: 키보드 리스너[Java] 64. Swing: 키보드 리스너*키보드 리스너Keyboard Listener는 키보드를 눌렀을 때, 호출되는 메서드를 가지는 인터페이스이다.키보드 리스너에도 다양한 종류가 있는데, 대표적인 것은 아래와whatsthatsound.tistory.com Swing: 키보드 리스너 응용하기(공룡 게임)아래와 같이 background에 이미지를 삽입하고,캐릭터 이미지를 겹쳐 입력한 뒤, 방향키를 누르면 위치가 이동하게끔 만들어보자. *MiniGame2: 코드 들여다 보기 (1) 상속 및 인터페이스 ..
- 2024-04-30 12:35:19
- [Java] 64. Swing: 키보드 리스너Song hyun[Java] 64. Swing: 키보드 리스너*키보드 리스너Keyboard Listener는 키보드를 눌렀을 때, 호출되는 메서드를 가지는 인터페이스이다.키보드 리스너에도 다양한 종류가 있는데, 대표적인 것은 아래와 같다. (1) keyTyped: 사용자가 글자를 입력했을 때 호출되는 메서드이다.(2) keyPressed: 사용자가 키를 눌렀을 때 호출되는 메서드이다.(3) keyReleased: 사용자가 키를 눌렀다, 뗄 때 호출되는 메서드이다. 1. Swing: 키보드 리스너 응용 문제-상, 하, 좌, 우 방향키를 누를 때마다, 해당 방향을 출력하는 코드를 작성해보자.(1) getKeyCode();를 통해, 특정 키가 눌러졌을 때 반환되는 keyPressed 값을 알 수 있다.(2) (1)에서의 결과..
- 2024-04-30 10:49:47
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)