본문 바로가기
언어공부/JAVA&SPRING

[JSP 게시판 만들기] 찾았다 버그 요놈!

by hobbiz 2020. 7. 7.
반응형

블로그를 하게 된 원인 = 버그를 못찾아서 빡쳐서 하나하나 다시 해보면서 정리하려고

13강까지 강의 잘 듣고, 분명히 똑같이 따라쳤고 아무리 찾아봐도 틀린게 없는데

게시판에서 글을 수정, 삭제 할 때 계속 오류가 나는 것이었다!!

온갖 짓을 해도 안되고, 사실 많은 지식 없이 따라쳤기 때문에 어디가 문제인지 잘 모르겠고,

에러에 막 서버 관련된게 써있길래 서버 문제인가 싶어서 뭘 잘못건드려서 서버 데이터가 날아가고,

갑자기 잘되던 root 비밀번호도 바뀌어서 My SQL 다시 다운받고

강의 1강부터 13강까지 다시 다 듣고 어제 오늘 13강 계속 돌려보는데도 못찾겠는 것이었다!!!!!

덕분에 눈에 불을켜고 복습할 수 있게 되었지만, 아무리 찾아봐도 뭐가 잘못된 건지 알 수가 없어서 너무 답답했다.

 

드디어.... 방금.... 버그를 찾아내었다.

사실 버그도 아니었어.....

내가 쓴 코드는 아무리 고쳐서 해도 안되는데 다른사람 블로그의 똑같이 쓴 BbsDAO.java 의 update 함수 코드를 붙여놓고 돌리니 잘 돌아가는 것이었다. (범인은 이 안에 있어!)

하지만 다른 사람이 쓴 코드와 한줄 한줄 비교하면서 봐도 똑같길래 (한줄한줄 바로 밑에 복붙하면서 비교해봄)

유튜브 댓글에라도 물어봐야겠다 싶어서 틀린코드와 맞는코드를 같이 올리고 댓글달기를 누르려는 순간!

내 코드에만 빨간 밑줄이 쳐진 것을 발견하였다........

Title을 Tilte 이라고 써놓고 틀린게 없다고 우기고 있었던 것......ㅠㅠㅠㅠㅠㅠㅠㅠ

너 때문에 내가 3일을......... 너무 허망하다...ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

 

아무튼 틸트 너놈 덕분에 알지도 못하는 태그 하나하나 한자한자 띄어쓰기까지 진짜 열심히 뜯어봤다....

고마워 Tilte!!ㅠㅠㅠㅠㅠㅠㅠㅠ

 

<오늘의 교훈 : 버그 = 나 자신***>

밑줄 쫙 별표세개.... 다른데서 찾지 말자

 

<소프트웨어 버그>

 

최초의 버그: 하버드 대학교가 만든 마크 II 컴퓨터의 계전기에서 발견된 나방

소프트웨어 버그(영어: software bug) 또는 줄여서 버그(bug)는 소프트웨어가 예상하지 못한 잘못된 결과를 내거나, 오류가 발생하거나, 착오나 오작동이 발생하는 등의 문제를 뜻한다. 버그는 프로그램 소스 코드나 설계 과정에서의 오류 때문에 발생한다.

버그의 결과로 다양한 문제가 발생할 수 있다. 몇몇 버그는 프로그램의 동작에 조그마한 영향을 줄 뿐이며, 오랜 시간 동안 발견되지 않고 남아 있을 수 있다. 이보다 더 심각한 버그는 프로그램의 실행이 중단되거나 강제 종료되는 문제를 일으킬 수 있고, 어떠한 버그는 보안 문제를 발생시킬 수도 있다. 예를 들어, 악의적인 사용자는 자주 발생하는 버그인 버퍼 오버플로를 사용해서 원래는 허락되지 않은 일을 할 수 있다.

버그는 다양한 형태로, 또 다양한 정도로 프로그램의 사용자들에게 불편함 등의 영향을 미칠 수 있다. 몇몇 버그들은 프로그램의 기능에 미미한 영향만 미치는데, 이 때문에 오랫동안 사용자들이 이들을 발견하지 못하는 경우도 있다. 하지만 심각한 버그들은 프로그램이 전혀 작동하지 못하는 상태가 되게 하여 사용자들에게 큰 불편을 주기도 한다. 한편, 보안 버그들은 나쁜 의도를 가진 사용자들에 의하여 악용되어 시스템의 불법적인 권한을 획득할 수 있는 수단이 되기도 한다.

 

설명할 수 없는 문제점들을 가리키기 위해 사용되는 "버그"라는 단어는 이미 오랫동안 엔지니어들의 전문 용어였으며, 컴퓨터와 컴퓨터 소프트웨어가 만들어지기 이전부터 사용되었다. 최초에는 버그가 하드웨어의 기계적인 오동작을 설명하기 위해 사용된 것으로 보인다.

버그의 폐해는 매우 심각하다. 1980년대 Therac-25 방사선 치료 기계의 제어 코드에 있었던 버그 때문에 몇몇 환자들이 목숨을 잃었다. 1996년, 유럽 스페이스 에이전시의 미화 10억 불짜리 프로토타입 아리안 5호 로켓이 발사 후 1분도 채 못 되어 폭발하고 말았는데, 이 역시 컴퓨터 프로그램의 버그 때문이었다. 1994년 6월, 로얄 에어 포스 치누크 스코틀랜드에서 추락하여 29명의 탑승자가 사망하였다. 처음에는 파일럿의 실수로 사고원인이 결론지어졌으나, 컴퓨터 위클리지의 조사에 의하여 항공기의 엔진 제어 컴퓨터에 들어 있는 소프트웨어의 버그 때문에 발생했었을 수도 있다는 주장이 제기되었다.

 

 

<참고 자료>

https://ko.wikipedia.org/wiki/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EB%B2%84%EA%B7%B8#:~:text=%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4%20%EB%B2%84%EA%B7%B8(%EC%98%81%EC%96%B4%3A%20software%20bug,%EC%9D%98%20%EC%98%A4%EB%A5%98%20%EB%95%8C%EB%AC%B8%EC%97%90%20%EB%B0%9C%EC%83%9D%ED%95%9C%EB%8B%A4.

 

 

반응형

댓글