디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

어떡해 일기 2-14 :: 방학 중간 기록, java 프로젝트 오답노트.

어떡해갤로그로 이동합니다. 2010.08.14 22:29:14
조회 665 추천 0 댓글 5



방학이 이제 3주 남아있는 시점에서 잠깐 그동안 했던 일과, 공부했던 것을 정리해볼까 한다.

먼저, 방학초에 준비해두었던, 계획해두었던 교재들은 3권을 제외한 나머지는 무사히 마쳤다.

자료구조의 경우 중복되었던 책도 있었고, 또 한번 거쳐갔던 책들이었기 때문에 소화하기에는 무리가 없었고

때때로 내용 실습을 하면서 배운 내용을 잊어먹지 않기 위해 애썼다.

뇌자알과 C++ 그리고 임베디드 리눅스는 책을 살펴보긴 했지만 실상 공부를 시작하진 못했다.

현재 AVR 128을 입문 준비하고 있고, 키트로 임베디드 실습을 조금씩 실시하고 있는 상태인데,

아마 늦어도 다음주 월요일 부터는 C++교재를 시작할 수 있을 것 같다.

더불어 현재 자바학습 프로젝트로 진행하고 있는 Html 추출기 (프갤 검색하고 비슷한 기능을 하는)는 방학초에는 깔짝 깔짝 진행하다가

2주전부터 광적으로 코딩을 실시하고 있다.

하지만, 역시 노하우 부족과, 학습 부족으로 여러가지 점에서 에로사항을 많이 겪었다.

그것을 조금 정리해보자면.

12610C0E4C6692148A570B

처음 시도 시, 파서는 아무런 문제없이 끝을 낼 수 있었다.
초반 정규표현식의 사용에 대한 에로사항이 있었는데, 초반에 프로젝트를 들어가기전에 관련 문서를 수집했을 때
정리해놓은 정규표현식 작성법이라는 문서에 php와 java의 regex의 정규표현식이 섞여있었다.
문서가 잘못된 것인지, 내가 잘 이해를 못한 것인지는 모르겠지만
대표적으로 ^의 경우 php에서는 최초로 시작되는 문자로 처리를 하는데에 반해, java regex에서는 ^를 제외해야할 문자로 인식하고 있었다.
후에 다시 정규표현식을 정리하면서 이 문제는 해결되었다.

1562D40E4C669213946887

TCP/IP 코딩이 주로 유닉스 계열을 중심으로 작성이 되어 있는 덕분에 Windows 상태에서는
코딩하고 테스트하기 다소 까다로웠던 점도 있고, 평소 리눅스를 한번 써보고 싶었었기에 우분투 10.4를 설치하고
거기에 개발환경을 만들어 java 코딩 및 기타 언어 코딩을 즐겨하게 되었다.
그런데 이번에 JAVA 프로젝트를 진행하다 리눅스 환경에서 작성한 코드를 읽어들인 소스들의 한글 주석이 전부
깨지는 현상이 일어났다.
이는 윈도우에서 텍스트 인코딩을 MS-949 방식으로 하고 리눅스의 경우 UTF-8 방식으로 하기 때문인데
자바 프로젝트의 속성창을 확인하면 위의 텍스트 코드를 재 인코딩하는 설정이 마련이 되어 있다.
수정하고 적용을 하면 정상 출력이 되는 것을 확인 할 수 있으나, 나는 중간에 저장을 해버려서 주석을 전부 새로 달아버리게 됐다 ㅜㅜ

126C830E4C6692166A6923
C언어에서 while(1)을 통해 항상 루프를 돌게 한뒤, if를 통해 함수를 빠져나오는 데에 return;을 즐겨 사용했는데
어째서인지 위의 간단한 코드에서 자바 컴파일러는 return을 실시할 수 없다고 에러를 뿜었다.
확인해보니, return 뿐만아니라 while 블럭 밖에 위치하는 필드의 인스턴스 변수에도 접근이 불가능했다.
여러가지 방법을 알아보고 테스트해본 결과, java 컴파일러는 while(i<4)와 같이 조건이 달려있는 반복문에서는
return이 가능하도록 하는 것 같지만, while(true)와 같은 강제적 루프에서는 break;를 명시하지 않으면
컴파일 자체를 못하게 막는 듯함.

1657FA0E4C669217C242B2
졸라크네;;

이 경우는 내가 벙찐 상태에서 코딩했다는 것을 증명하는 것.
특정 클래스에서 객체를 생산하고, 그 해당 객체를 어레이 리스트에 삽입해서 생산 순서에 따라 접근하고 데이터를 추출 할 수있도록
작성을 했다고 생각했는데, 어째서인지 의도한 값이 나오지 않았다.
디버그를 한 결과, 아뿔사 레퍼런스 변수만 잔뜩 넣어두고 해당 레퍼런스들은 모두 힙의 한가지 객체만을 가리키도록 해놓음
나의 우둔함을 탓하며 새벽에 담배피러 가다가, 근처 아파트 경비아저씨한테 여기에서 담배피지 말라고 많이 혼났다.

14695B0E4C669216679485




초반 추출과 파싱을 하는 클래스를 설계시 1)과 같이 설계함.
A클래스의 경우 통상 수집을 하는 클래스, B의 클래스의 경우 DC와 같이 비슷한 기능이나 다소 차이가 있는 특성화 클래스로 설계함.
하지만, 중간에 이런 후잡한 설계가 어딨냐는 자기학대와 함께 공통기능을 뽑고, 후에 문제가 생기더라도 클래스 추가만으로 해결할 수 있는
2)와 같은 형태로 교정. 그러나 이것도 나중에 문제가 일어나서 최종적으로는 3)과 같은 형태로 인터페이스를 이용해 해당 객체를 다형성으로
접근할 수 있도록 설계하고, 클래스의 기능과 인스턴스변수 분배도 좀 더 고민을 많이 해서 했다.
말은 3)이지만 실제로는 한 21)쯤 되는 것 같음.


결론적으로 >
이번 방학은 과거에 유래없이 다소 알차게 보낸 것 같으나, 자바와 기타 언어 프로젝트를 수행하면서 역시 많이 모자라고,
또 생각하기 귀찮아 대책없이 코딩하다가 나중에 갈아엎은 소스만 30회를 넘겨가니 점차 지쳐가는 자신을 발견.
이에 대해서 생각할 점은 다소 코딩을 늦게 시작하더라도, 설계 부분은 이것저것을 잘 따져봐야한 다는 것.
특히 객체지향은 오버라이딩이나 오버로드 같은 이런 부분도 중요하지만, 더 중요한 것은 클래스와 클래스 간의 관계 라는 것.
하지만 과연 삽질은 지식의 샘터라고, 삽질을 하면 할수록 스스로도 뭔가 이것저것 따지는 경우가 늘어나 실력이 부쩍 늘고 있다는 것이 느껴진다.


오늘의 어떡해 일기 끄 ㅌ

추천 비추천

0

고정닉 0

0

원본 첨부파일 1

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 힘들게 성공한 만큼 절대 논란 안 만들 것 같은 스타는? 운영자 24/06/10 - -
이슈 [디시人터뷰] 웃는 모습이 예쁜 누나, 아나운서 김나정 운영자 24/06/11 - -
공지 프로그래밍 갤러리 이용 안내 [71] 운영자 20.09.28 35499 62
2711918 경력직 코테 의미없다고 과제전형도 많은데 프갤러(117.111) 06.13 10 0
2711917 국비가 존재하는이유는 우덜들이라서밖에없음 뒷통수한방(1.213) 06.13 4 0
2711916 r&d 지원 축소한다면서 국비는 왜 계속있냐 [2] 뒷통수한방(1.213) 06.13 9 0
2711915 국비제도 요새 근황 어떠냐? 좀 축소됏냐 아직도 저글링양산하냐? [2] 프갤러(118.129) 06.13 13 0
2711914 웹개발이 어두운건 맞지만 대체제가 없음 [1] 딘퐁갤로그로 이동합니다. 06.13 25 1
2711913 기득권새끼들은 왜 국비제도 여성부 폐지 않함?? 뒷통수한방(1.213) 06.13 9 0
2711912 생 양아치 새기 국민의힘 갤러리랑 말을 섞을래니 환장해버려서, [1] 넥도리아갤로그로 이동합니다. 06.13 15 0
2711911 요새 누가 웹 개발자로 취업함? [13] 프갤러(121.185) 06.13 73 0
2711910 비전공 국비충 신입들은 노선 갈아타라 [1] ㅇㅇ(117.111) 06.13 35 0
2711909 요즘 알콜중독인듯 [2] 헬마스터갤로그로 이동합니다. 06.13 15 0
2711908 가난이 밉다... 오늘도 냉장고를 뒤적이며 안주를 찾아봅니다... [19] ㅇㅇ(123.213) 06.13 25 0
2711907 전산실왔는데 진짜 이게 물경력이라는거구나 [1] ㅇㅇ(59.16) 06.13 28 0
2711906 님들 만약 경기 전적 사이트 같은거 만들때 [3] ㅇㅇ(121.183) 06.13 20 0
2711904 경력 있어도 코테봄? [4] 프갤러(211.44) 06.13 36 0
2711903 취업은 쉽다 그러느 너는 평생 노예가된다 뒷통수한방(1.213) 06.13 18 0
2711902 나만 이러냐? 사이트 만드는데 컴터 앞에만 앉으면 할일 까먹음 프갤러(112.169) 06.13 16 0
2711901 자소서라 생각하고 제가 개발자가 되고 싶은 이유를 적어보겠습니다. [11] 딘퐁갤로그로 이동합니다. 06.13 59 0
2711900 님들아 가상컴퓨터 윈7이 존나 안되는데 왤까요 라그네파갤로그로 이동합니다. 06.13 16 0
2711899 영화 <마션> 봤다 발명도둑잡기갤로그로 이동합니다. 06.13 11 0
2711898 시중은행 디지털 직무 취업하기 어려움?? 프갤러(118.235) 06.13 11 0
2711897 나님이 정신병? ㅋㅋㅋㅋㅋㅋㅋ 웃고갑니당 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 19 0
2711896 냥덩이나 강아지를 키우면 가슴이 커진다는 연구결과가 있음 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 12 0
2711895 개발자들 궁금해서 들렀다. 블록체인,ai 개발자랑 걍 개발자 차이 있냐 [1] ㅇㄹㅁㄴㅇㄴ(115.143) 06.13 21 0
2711894 나님 하나도 안 더워 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 8 0
2711893 중고 컴퓨터 규제 소음이 심해서 일정 DB 이상이면 판매자가 보증하는방법 도리스아(220.74) 06.13 8 0
2711892 나님 막담❤+ [2] ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 13 0
2711891 몬헌 다음 판 2025년에 나온다는데 노럐갤로그로 이동합니다. 06.13 8 0
2711890 프론트도 재능이란걸 깨달음 [2] 프갤러(210.98) 06.13 38 0
2711889 코인이 4차산업혁명임 ㄹㅇ?? 뒷통수한방(1.213) 06.13 12 0
2711888 취업은 운이 8할 [2] 이시꾸갤로그로 이동합니다. 06.13 40 0
2711887 좋은 회사들도 서로 탐내는 실력의 프로그레머가 독학으로 가능함? [3] 다칸마리갤로그로 이동합니다. 06.13 41 0
2711886 요즘 네카라쿠베 같은 회사 말고 [1] 프갤러(118.235) 06.13 41 0
2711885 나 퇴근한다 이자식들아 [12] 이시꾸갤로그로 이동합니다. 06.13 37 0
2711884 너무 무겁잖아 무소음 [1] 도리스아sk(119.195) 06.13 18 0
2711883 대학생 과제 외주 해주면 불법임? 프갤러(58.232) 06.13 18 0
2711882 인생은 권도형처럼 뒷통수한방(1.213) 06.13 13 0
2711881 그래픽카드 소음 낮추는 방법좀 알려주세요. [8] 도리스아(119.195) 06.13 29 0
2711880 나님 수면영상 스타트 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 19 0
2711879 아무래도 암컷길냥이 임신 안됐었나보다 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 17 0
2711878 오늘 퇴근하는데 집 앞 놀이터에서 통닭 팔더라 [2] 노럐갤로그로 이동합니다. 06.13 24 0
2711877 현 고3인데 컴공가면 인생조지나요? [9] 프갤러(110.15) 06.13 76 0
2711876 프로그래밍 꽃은 스레드임 [4] 키비갤로그로 이동합니다. 06.13 60 0
2711875 너무 새끼때는 못생김 [1] ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 23 0
2711874 게임 개발 혼자서 하는 사람은 드물지? [4] 프갤러(183.101) 06.13 49 0
2711873 1억5천 넘기니 고려해야할게 많아잠 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 30 0
2711872 ♥주먹쥐고일어선냥덩♥갤로그로 이동합니다. 06.13 14 0
2711871 AI짤 직접 만든거 털어봄 [5] ㅇㅇ(115.138) 06.13 45 0
2711870 왜 운영배포가 깐깐해지는지 알것같음 [4] 멍청한유라ㅋ갤로그로 이동합니다. 06.13 60 0
2711869 요즘은 중딩때도 배움?? [2] XXX갤로그로 이동합니다. 06.13 35 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2