JAVA
일단 결론 부터 말하면 진행중이다.
1년전 나의 진행상황과 비교를 해보자면 (00. 자바 다시 시작) (자바 스터디 25% 달성) 일단 강의는 반 넘게 들었음.
어느순간부터 %자체는 크게 의미는 없다. 왜냐면 강의의 내용을 1도 못알아듣기 때문이다.
해서 했다 자괴감 들다 놨다 했다 지쳤다가 놨다 하던 시절들을 한번 보냈다.
퀄리티가 중요하지 하면서 꾸역꾸역 50%까지 2회독도 해봤다.
역시 한번 더 보면 도움이 되긴 했다.
현재 목표는 6월부터 8월까지 50%에서 75%달성 (목표 이해도는 C등급)
9월부터 다시 50% 기점부터 2회독(목표 이해도 B등급)을 들어가는것이다.



하지만 하다보니 뒤로 갈수록 이해 안되는것들을 더욱 많아지는데
지금 2회독에 집착 하고, '지금 조금 더 알아들어야 2회독때 학업 퀄리티 올라간다' 라고 마음 먹고 있는것이 조금 마음의 부담으로 작용하는것 같아서. 일단 정말 편하게 듣기로 모드 변경. (이 모드가 되기 까지도 시간이 엄청 걸렸다. 이게 뭐라고. 마음도 내 마음대로 control 하기 어렵다는게 너무 아이러니 함.)
실제로 마음을 놓고 , 선생님이 말하는대로 들으며 그냥 화면만 보면서 배껴서 코드를 옮겨 적는,
흡사 틀린그림 찾기와 같이 하고 있음.
이게 오랜 기간동안 엄청 현타가 왓었는데,
최근에 일정이 너무 바빴어서 그런지, 이 행위 만으로도 만족감(?) 이 들었다 ㅋㅋㅋ 하나 내려놓았나보다.
눈으로 찍고,
아는거 나오면 어? 저거 어디서 봤는데
어떤 주제를 할 땐 대충 이게 뭘 하는거구나 라고 큰 그림만 그냥 가져보고, 정확하게는 몰라도, 공통적으로 나오는 코드는 그냥 계속 눈과 손으로 찍어보고.
이정도가 딱 좋을것 같다.
예전같으면, 이렇게 계속 하는거 너무 답답하고, 어느순간 못참고 파고들고, ai에게 물어보고 연구하고, 연습 코드 만들어달라 그래서 또 한번 써보면서 머리에 넣어보는데.
사실 이게 에너지가 너무 많이 들었음. 그래서 그 다음날 손 놓고...
프로그래밍 언어 공부가 굉장히 부담스러워져벌임.
하지만 이젠 그렇게 안될것 같으니 오히려 홀가분하고 좋다. 그래서 앞으로는 오전에 30분 가볍게 들을수 있을 것 같고,
이게 굳이 9월부터 다시 2회독 시작! 2회독 할땐 이해도 B등급 정도 끌어올리기! 보다는
그냥 한번 눈으로 계속 찍어보자.
어느정도 한계는 있겠지만,
현재 나에게 필요한건 희미해도 큰 그림, 즉 스케치가 필요함. 스케치도 없이 세부적으로 들어가려고 하는거 너무 나다운데
이젠 알고 있다. 그렇게 하면 소모가 크고 오래 못간다는것.
그래서 뭐다?
쉬엄쉬엄 들어보자... ㅎ
결론: 2회독? 도움된다. 근데 힘 딱 주고 1회독, 힘 딱 주고 2 회독 이것보다는 --> '힘 좀 빼고 즐기면서 다회독' 요 모드로 살짝 변경.
내친김에 어제 배낀(?) 코드 (generics 배우는 중) 투척...
package application;
import collections.Array;
import heirarchy.Cat;
public class App {
public static void main(String[] args) {
Array<Cat> cats = new Array<>(2);
cats.add(new Cat("Tiddles"));
cats.add(new Cat("Bertie"));
Cat cat1 = cats.get(0);
Cat cat2 = cats.get(1);
System.out.println(cat1);
System.out.println(cat2);
System.out.println(cats);
System.out.println();
Cat c = find(cats, "Bertie");
System.out.println(c);
}
private static <T> T find(Array<T> array, String text) {
for(int i = 0; i< array.size(); i++) {
T value =array.get(i);
if(value.toString().equals(text)) {
return value;
}
}
return null;
}
}
package collections;
public class Array<E> {
private E[] array;
private int position = 0;
@SuppressWarnings("unchecked")
public Array(int size) {
array = (E[]) new Object[size];
}
public void add(E e) {
if (position == array.length) {
throw new ArrayIndexOutOfBoundsException();
}
array[position++] = e;
}
public E get(int index) {
return array[index];
}
public int size() {
return array.length;
}
public String toString() {
StringBuilder sb = new StringBuilder();
for (var obj : array) {
sb.append(obj.toString());
sb.append(" ");
}
return sb.toString();
}
}
package collections;
/* Generic Types : Type Parameter Naming COnventions
*
* The most commonly used type parameter names are:
* E- Element(used extensively by the Java collections Framework)
* K - Key
* N - Number
* T - Type
* V - Value
* S, U, V ets. - 2nd, 3rd, 4th type
*/
public class Pair<T, S> {
private T value1;
private S value2;
public Pair(T value1, S value2) {
this.value1 = value1;
this.value2 = value2;
}
public T getOne() {
return value1;
}
public S getTwo() {
return value2;
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(value1.toString());
sb.append(", ");
sb.append(value2.toString());
return sb.toString();
}
}
package collections;
public class Wrapper<E> {
private E object;
public void set(E object) {
this.object = object;
}
public E get() {
return object;
}
}
Linux
터미널 쓰던 시절 감각을 유지하고싶고, 겸사겸사 리눅스도 들여다 보고싶어서 한번 건들어 봄.
VM안에 우분투로 깔아놓고 쓰는데.
딱히 어떻게 시작해야 될지 몰라서 ai에게 이것저것 물어보면서 하나씩 해봄.
이것저것 명령어로 찍어보고 , 폴더 만들고 파일만들고, 삭제해보고, 권한 바꿔보고... 이래 저래 했는데
뭔가 목표가 선명하지 않으니까 어느순간부터 질문도 고갈되었음.
자바보다도 더 직관적(?) 이고, 명령어 치면 바로바로 진행되는 것도 재미있고,
잘은 모르지만 윈도우랑 function자체가 많이 다른것 같고, (더 편함) 그래서 너무나 건들어보고 싶은 분야이기는 한데,
어떻게 해야 내가 계속 하도록 할지 나도 잘 모르는게 문제.
지금은 조금 어렵고, 자바 어느정도 잡아가기 시작하면 리눅스를 강의를 한번 듣는것도 나쁘지 않을 듯.
물론 그때를 대비해서 명령어 계속 연습해보고 그러면 좋긴 하겠는데.... vm 키기도 싫은 심리... ㅎ...
Project
진짜 기이하고도 이상한 일이 일어났다.
지난 6월 정도인가
갑자기 개인 프로젝트를 하나 시작하게 됌.
이름은 '마법사 도서관'.
그러함. 독서 관련 서비스임.
다른 사람은 아니고 내가 쓰기위해 만들어보고싶다는 생각이 들어서 이것저것 기획했는데 그때 기획할땐 엄청 재미있었음. 한계에 많이 부닥쳐서 그렇지.
이런 기획을 하다보니 프로그래밍도 더 공부 제대로 해보고싶고 그런 욕심은 간간이 들어서 좋았음.
사실 그땐 야심차게, 올해 말까지는 콘솔로라도 돌릴 수 있게 만들어보자 이 생각까지 했었는데, 그건 좀 어려울 것 같고.
엄,
하반기에 공부 조금 더 하면서 더 기틀을 잡아 보는걸로 해야될까?
근데 공부를 하다가 내가 만들고싶은 서비스가 생각나고, 그걸 기획하는 것 자체가 넘 좋았음.
github
다들 쓴다고 해서, 그리고 나도 왠지 거기 있어야 할 것 같아서, 있는 척 하려고 일단 계정은 만들었는데 도통 뭐하는곳인지 모르겠고 인터페이스는 왜이렇게 복잡스.... 아 진자 개발짜들 지들끼리 쓸라고 어렵게 만들어놨누 머글들좀 살려달라 ㅠㅠ
라는 생각 맨날 함 ㅋㅋㅋㅋㅋ
일단 내가 여태 배낀(?) 선생님의코드를 챕터별로 올려놓고, 오며가며 이동할때 코드 열어보는 용도로 쓸거임.
아직 볼고 따라갈 수 있는건 뭐 for문이나 array 정도니까.
그정도면 올려놔도 되겠지?
하여간 깃헙 쓰면서 개발 생태계 익숙해져보기.
기타 학습
자바만 파면 자꾸 자괴감 들고 메타인지가 중요하다는 생각을 많이 한다.
솔직히 말해서 그 전에 쥐똥만큼이라도 컴퓨터 써본 경험이나,
그래도 공부좀 해보겠다며 짜잘짜잘한거 읽어보고 머리 싸매본 경험 없었으면 여기까지도 못왔음.
자바 혼자만 파면 더 지치겠다 싶어서 느리더라도 이것저것 건들어 보고, 탐구하면서 익히는게 맞다고 느낌.
이것저것 해야 할 것은 많은데
뭔가 손에는 잘 안잡힘.
그래도 괜찮다 조금씩 해나가면 되니까.
아래는 내가 들여다보았던/보는/보려고 모아놓은것들
운영체제: (http://kocw.net/home/search/kemView.do?kemId=1046323) 이건 언제 들어도 이상하지 않다. 당장 커리큘럼 짜보자...
SQL: 현재 JAVA 에서 단순히 75% 채우고 JAVA 50% 2회독 시작하면서 SQL 20-30 시간 정도 강의 가볍게 시작 예정
JS: 자바 공부하면서, 조금 익숙해지면 짬짬히 보려고 강의도 저장해뒀는데 손 안감...
도서:
펫졸드 /코드 (https://product.kyobobook.co.kr/detail/S000211648247)
김종훈 김종진 / 프로그래밍 언어론 (https://product.kyobobook.co.kr/detail/S000001636200)
강민철 /혼자 공부하는 컴퓨터 구조 + 운영체제(https://product.kyobobook.co.kr/detail/S000061584886)
기타 잡생각
공부를 하다보면 외롭다는 생각도 많이 듦.
어떻게 해서든지 멘토가 있었으면 좋겠고, 동료가 있었으면 좋겠다는 생각.
함께 커뮤니케이션을 하는것이 사실 나에게 어렵기는 하지만,
혼자 뭔가를 한다는건 정말 어렵고 외롭고 막막하다는 점도 크게 와 닿았다.
그래서 뭔가 프로젝트 커뮤니티를 찾고싶지만, 약간 사막에서 바늘찾기 같기도 하고
기본적으로 나도 스펙을 키워놔야, 바늘을 찾아낼 눈이 생기지 않을까 싶기도 해서
일단 까불지말고 공부하기로
그리고 공부만 하면 힘드니까 까불지말고 운동하기로.
이게 당분간의 내 모토다.
'콤퓨타 > Programming) 왕초보 자바' 카테고리의 다른 글
| 38. Inheritance - Casting & Runtime Errors (0) | 2026.02.19 |
|---|---|
| 37. Static (0) | 2026.02.17 |
| 자바 스터디 25% 달성 (0) | 2026.02.17 |
| 36. (Method) Menu Example + Return Values (0) | 2026.01.09 |
| 35. (Method) Class + Objects + Instance Variables (0) | 2025.12.25 |