본문 바로가기

분류 전체보기605

[Java] Servlet :: 서블릿 매핑(mapping) @WebServlet("/")과 web.xml 출처 - https://blog.naver.com/PostView.nhn?blogId=smilennv&logNo=220454626217 프로젝트를 실행하게 되면 위 상단 URL 표시에 localhost:8080/프로젝트명/파일명 이렇게 나오는 것을 간단하게 localhost:8080/파일명 으로 나오게 할 수 있다.. 방법은 한줄만 작성하면 되는 어노테이션(annotation)으로 달거나 아니면 web.xml 에 직접 작성 해주거나 두가지가 있다. 매핑(mapping)을 하는 이유는 보안에 노출되어 있어서 그렇다. 기존 경로가 http://localhost:8080/프로젝트명/servlet/패키지명.클래스명 이라고 자세히 나와있는 부분을 URL 매핑을 통해 http://localhost:8080/프로젝트.. 2022. 7. 24.
[Java] 서블릿 맵핑url 대소문자 문제 자바공부하던중 서블릿 맵핑한 url 에 접속할때 대소문자 문제가 발생했다. 그림1과 같이 Second 라고 S 를 대문자로 맵핑하고 실제 접속을 소문자 s 로 http://localhost:8090/pro07/second 와 같이 접속하니 404 에러가 발생했다. 당연히 http://localhost:8090/pro07/Second 로 접속하면 접속이 됐다. 그래서 가만히 생각해보니 맵핑을 여러개 하면 해결되지 않을까 하는 생각이 들었다. 그래서 그림2와 같이 설정하니 http://localhost:8090/pro07/second 와 http://localhost:8090/pro07/Second 두가지 경로로 모두 접속할수 있었다. 물론 더좋은방법들도 있겠지만 한가지 해결방법으로 기록해둔다. 2022. 7. 23.
[Java] Servlet 오류날때 - HTTP 상태 404 – 찾을 수 없음 서블릿 공부하는중 아래 현상이 발생했다. HTTP 상태 404 – 찾을 수 없음 타입 상태 보고 메시지 요청된 리소스 [/pro07/First]은(는) 가용하지 않습니다. 설명 Origin 서버가 대상 리소스를 위한 현재의 representation을 찾지 못했거나, 그것이 존재하는지를 밝히려 하지 않습니다. Apache Tomcat/10.0.22 여기저기 찾아보니 톰캣모듈패스를 / 로 바꿔주라는 글이 가장 많았지만 그글외에 다른 여러가지 방법을 해도 오류는 계속 발생하고 있었다. 그러던중 selvlet mapping 을 해주니 작동했다. 보안적으로 바로 자바 서블릿에 접근하지못하도록 설정되있는게 아닌가 추측해본다. 단, 이때 모듈패스가 변경되거나 다른설정이 변경된 상태는 그대로 작동을 안해서 설정변경한.. 2022. 7. 23.
[Eclipse] Ctrl+Space는 그만! 글자 입력하기만하면 Content Assist(자동완성기능)가 실행되는 방법! 출처 - https://devlimk1.tistory.com/9 eclipse가 아닌 intellij를 사용해본 사람이라면 글자를 입력하기만해도 메소드나 어노테이션 등의 자동완성기능이 실행되어 일일이 Ctrl+Space를 눌러서 자동완성 기능을 실행시키지 않아도 되는 것이 참 매력적이라 느꼈을 것이다. 그 편함을 잊지 못하기에, 찾던 중 eclipse에서도 똑같은 기능을 구현할 수 있는 방법을 찾게되어 포스팅한다. [설정 방법] ① eclipse -> window -> Preferences ② Java -> editor -> content Assist (위 과정으로 들어가는게 귀찮다면, type filter text 검색란에 content assist를 바로 검색하자) 그리고 큰 사각형 영역의 Auto .. 2022. 7. 23.
[Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) 출처 - https://coding-factory.tistory.com/822 자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생성할 수 있고 이로 인해 같은 소스코드라도 동작이 상이할 수 있기 때문입니다. 자바의 버전을 맞추기 위해서는 먼저 내 PC에 설치되어 있는 자바의 버전을 아는 것이 첫 번째 순서입니다. 이번 포스팅에서는 내 PC에 설치되어있는 자바 버전을 확인하는 방법에 대해 알아보도록 하겠습니다. 윈도우에서 자바 버전 확인 방법 (간단한 cmd 명령어) 1. 윈도우 검색창에서 cmd를 입력 후 명령 프롬프트를 실행합니다. 2. 명령 프롬프.. 2022. 7. 19.
[Java] Java EE에서 Jakarta EE로의 전환 출처 - https://s-core.co.kr/insight/view/java-ee%EC%97%90%EC%84%9C-jakarta-ee%EB%A1%9C%EC%9D%98-%EC%A0%84%ED%99%98/ 자바 기술자라면 Java EE(Java Platform, Enterprise Edition) 또는 J2EE(Java 2 Platform, Enterprise Edition)를 들어봤을 것이다. 자바를 이용한 서버 개발 플랫폼으로 한 때 엔터프라이즈 자바 기술을 선도하며 막강한 영향력을 발휘했지만 기술 변화와 시장 요구에 제때 대응하지 못하면서 현재는 명맥만 유지하는 암울한 상황에 처해있다. 그럼에도 불구하고 자바EE는 가장 성공적인 상업용 표준 플랫폼의 하나이며 대부분의 웹 애플리케이션 서비스를 위한 미.. 2022. 7. 15.
[Tomcat]톰캣 서버 충돌 / 포트 충돌 해결하기 출처 - https://mjn5027.tistory.com/15 톰캣(TomCat) 서버를 비정상적으로 종료한다던지, 다른 포트를 동시에 열었다던지 등의 이유로 가끔 [ 'Starting Tomcat v8.5 Server at localhost' has encountered a problem. Serveral port..... ] 에러가 뜰 때가 있다. 이는 서버가 충돌나면서 뜨는 에러이니 아래의 과정을 따라해주면 해결이 된다. 1. 서버를 켰더니 아래와 같은 에러가 떴네요. 포트(서버)가 충돌났다고 합니다. 2. 이클립스 하단에 있는 Servers 탭의 충돌이 난 해당 톰캣 서버를 더블클릭합니다. 3. Ports 부분을 보면 이 톰캣 서버의 해당 Port Number를 알 수 있다. 이 Port Num.. 2022. 7. 14.
[Tomcat] The server cannot be started because one or more of the ports are invalid. Open the server editor and correct the invalid ports. 출처 - https://shinye0213.tistory.com/85 위 설정의 HTTP 포트와 서버에 설정된 포트가 동일해야한다. 위 이미지의 좌측상단의 server.xml 을 연다 xml로 열리면 개인적으로 불편해서 위와 같이 text editor 로 열자 위와 같이 server.xml 의 포트번호가 설정파일과 동일해야 한다. 만약 다르다면 동일하게 변경해주고 저장해주면 정상실행된다. 2022. 7. 14.
[Tomcat]Tomcat 서버 설정파일(server.xml) 출처 - https://blog.naver.com/baenamky/50033881799 ■ server.xml에 의한 Tomcat의 기본 설정 $CATALINA_HOME/conf/server.xml은 Tomcat의 메인 설정 파일로 Tomcat 기동시에 참조 된다. $CATALINA_HOME/conf/ 디렉토리에는 디폴트 server.xml 이외에 최소한의 설정만으로 구성된 server-minimal.xml이 준비되어 있다. 새로 서버를 설정하고자 할 경우에는 server-minimal,xml의 이름을 변경하여 사용하면 편리하다. ■ server.xml의 구조 Tomcat은 몇개의 구성요소로 이루어져 있으며, server.xml에서는 XML의 요소를 통해 구성요소를 정의하고 있다. server.xml의 .. 2022. 7. 13.
[Tomcat]톰캣 실행시 로그 한글깨짐현상 톰캣을 구동하다보면 심심치않게 마주하는 현상. Windows Console의 기본 인코딩과 Tomcat이 출력하는 인코딩이 서로 달라서 생긴다 이러한 현상이 일어나는 이유는 아래와 같은데, Windows Console: Windows OS 설정 언어의 기본 인코딩 (한국어는 EUC-KR) Tomcat Console: 설정파일의 인코딩 (기본 UTF-8) Tomcat Console의 인코딩을 변경한다. %TOMCAT_HOME%\conf\logging.properties을 연다. java.util.logging.ConsoleHandler.encoding의 값을 EUC-KR로 변경한다. 별다른 설정이 없었다면, UTF-8이 기본으로 설정되어 있다. 앞으로 실행되는 Tomcat은 해당 인코딩이 적용된다. Tom.. 2022. 7. 13.
[Tomcat] 프로젝트 실행중 오류_사이트에 연결할 수 없음 출처 - https://taeying.tistory.com/20 어제는 잘 쓰고 있는 톰캣을 7.0에서 9.0으로 바꾸고 싶은 월요일이였다. 생각없이 7.0을 삭제하고 9.0을 돌렸더니 잘 연결되던 사이트가 연결이 되지 않았다. 구글링을 해보니 1. 톰캣 프로젝트 확인 2. tomcat >> web modules 확인 3. tomcat >> properties >> General >> switch Location확인 4. server.xml >> port 번호 확인 5. server.xml >> host 확인 6. 프로젝트 application.properties 확인 다양한 방안들이 검색이 된다. 하지만 사이트는 연결이 계속해서 연결이 안되었고... 사수님께 도움을 요청했다... 해결방안은 간단했다. .. 2022. 7. 13.
62.네트워크프로그램 피씨끼리 데이터 주고 받는 방법을 알아보자. 일단 용어를 몇가지 알아야 한다. * 엔드 포인트 - 아이피 주소와 포트 번호의 조합을 의미합니다. * 소켓 - 네트워크 상에서 돌아가는 두 개의 프로그램 간 양방향 통신의 하나의 엔트 포인트 아이피주소는 흔히 생각하는 192.168.1.1 처럼 숫자로 만들어진 PC 의 주소이고, 포트는 각 피씨에 연결할수 있게 만들어진 숫자로 된 가상의 연결 구멍이라고 생각하면 된다. 참고로 그림1처럼 제어판 에서 방화벽을 들어가서 고급설정을 누르면 피씨가 사용중인 포트가 나온다. 각 프로토콜에 따른 기본 포트는 HTTP=80, FTP=21, TELNET=23, SSH=22, SMTP=25, POP3=110 이다. 대부분 저 포트들은 사용중인 포트라고 생각하면 되고 테스트등.. 2022. 5. 20.
61. 이벤트 이전에 델리게이트를 배웠는데 델리게이트와 동일한 이벤트 라는것도 있다. 앞장들에서 배운 델리게이트는 파라미터용으로 주로 설명했고 이번에 이벤트는 서로 데이터를 주고받는데 최적화 된 내용으로 살펴보자. 이벤트와 델리게이트 차이점을 찾아보면 여러글들이 있는데 설명이 신통치않다. 이래저래 내용을 찾아보다보면 결국 같은거라는 생각이 드는데 아래 글에서 이야기한 내용을 한번 읽어보자. https://www.sysnet.pe.kr/Default.aspx?mode=3&sub=0&pageno=0&detail=1&wid=5375 이벤트와 델리게이트의 차이가 궁금합니다. 이벤트와 델리게이트의 차이가 궁금합니다. [링크 복사], [링크+제목 복사] 조회: 3477 글쓴 사람 영귤 홈페이지 첨부 파일 부모글 보이기/감추기 C.. 2022. 5. 18.
iptime 공유기 각 pc마다 네트워크 사용량을 확인할수 있습니다. 트래픽모니터링 원본 - https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=okchang1&logNo=220220200837 iptime 공유기 각 pc마다 네트워크 사용량을 확인할수 있습니다. 트래픽모니터링 요즘 공유기 많이 사용하는데요.. 혹시 자기 pc가 점점 늦어지는건 아닌지.. 네트워크가 이상한가.. 이럴때가 있는데 확인 할수 있는 방법이 난감하지요. ip공유기에서 바로 확인이 가능합니다. 공유기 비밀번호는 각자 로그인하시구요.. 비밀번호 없으면 그냥 아래링크 누르면 바로 들어갑니다.. http://192.168.1.1/cgi-bin/timepro.cgi?tmenu=trafficconf&smenu=conninfo 192.168.1.1 은 공.. 2022. 5. 17.
60. 유저컨트롤 유저컨트롤은 사용자가 임의로 만들어서 사용하는 컨트롤이다. 로또 추첨기를 생각 해보자. 숫자가 1~45까지 순차적으로 증가한 후 랜덤 숫자로 최종 결정 되는식으로 6개의 숫자를 출력해주는 프로그램이 있다고 생각해보자. 그러면 6개의 컨트롤을 다 만들어 줄 필요없이 1~45까지 순차적으로 증가한후 랜덤 숫자로 최종 결정되는 컨트롤이 있다면 그 컨트롤을 복사해서 사용해주면 훨씬 편할것이다. 간단하게 만들면서 이해해 보자. 그림1처럼 컨트롤 라이브러리를 선택해서 프로젝트를 만들자. (.NET Framework) 확인. 최초 생성하면 그림2와 같은 화면으로 나올것이다. 중앙의 회색부분이 내가만들컨트롤 크기이다. 그림3과 같이 좌측의 도구상자에서 label 을 드래그 해서 중앙에 놔주고 컨트롤의 크기를 적당히 조.. 2022. 5. 17.
59. lock / Monitor / Mutex 앞장마지막 예제에 잠시 Monitor 클래스를 사용하는 예제를 넣었다. 3가지다 간단하게 말하면 다른곳에서 변경못하게 잠궈놓는 역할을 하는것들이다. 아래 예제를 보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 #define lock1 #define type2 using System; using S.. 2022. 5. 11.
58. Threadpool / BackgroundWorker / Parallel Thread 와 task 를 주로 설명하고 있는데 Threadpool 이라는 클래스로 쓰레드를 다룰수도 있다. 아래글을 먼저 읽어보자. https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=hyungjoon_&logNo=221700870194 Thread vs ThreadPool vs Task 닷넷 C# 마이크로소프트 .net framework는 동시성을 다루기 위한 3가지 방법이 있다. 1. 스레드(Thread) 에 직접접... blog.naver.com 다른블로그들에서도 거의 task 를 추천하는 사람이 많고 내생각도 비슷하다. 개인적으로는 Thread 자체를 쓰는것도 나쁘지는 않다고 생각한다. 하지만 Threadpool 클래스는 사.. 2022. 5. 11.
57. async / await async 와 await 에 대해서 찾아보면 대부분의 포스터 들은 비동기를 위한 키워드라고 적어놨다. 그런데 잘생각해보면 비동기보다는 부분적으로 동기하기 위한 키워드가 더 맞는 표현이라고 생각한다. [예제소스] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 9.. 2022. 3. 29.
네트워크 연결확인방법 > using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsApp13 { public partial class connectcheck : Form { public connectcheck() { InitializeComponent(); } private void button1_C.. 2022. 3. 20.
56. 쓰레드2(Task) 앞장들에서 배운 Thread 외에도 비교적 최근에 만들어진 Task 클래스로도 멀티쓰레드 프로그램을 만들수 있다. 둘의 차이점은 thread 는 비교적 큰 작업에 사용하고 메인프로세스가 종료되어도 계속 작동하고 , Task 는 비교적 작은 작업에 사용하고 메인 프로그세스가 종료되면 같이 종료 된다 라고 대부분의 글에 되어있다. 개인적으로는 어떤걸 써도 편하고 실수 덜 할만한걸로 사용하는게 좋다고 생각한다. 쓰레드와 태스크는 위에서 말한거 외에도 좀 다른점이 있긴하다. 그림1과 그림2를 비교해보면 그림2가 확실히 자원을 덜 먹는것을 알수 있다. 위쪽은 대량의 쓰레드를 생성하는것이고 아래쪽은 같은작업을 태스크로 한것인데 , 일단 예제부터가 사실 말이 안되긴한다. 프로그램에서 저정도의 쓰레드를 돌릴경우가 과연.. 2022. 2. 27.
55. Action/Func Action 과 Func 를 알아보기전에 지난 부분 잠시 복습을 해보자. 그림1을 보면 바로 지난장에서 학습하던내용이다. 그런데 델리게이트를 꾸준히 선언해줘야 해서 상당히 불편하다. delegate void tempdel(string str); delegate string tempdel2(string str); 선언까지 없애고 그냥 사용하면 되지 않을까 그래서 MS 에서 미리 델리게이트를 선언해놨다. 그림2를 보자. 일단 Action 을 입력하면 두가지 사용가능한 형태가 보인다. 둘다 미리정의된 델리게이트이며 각각 설명이 나와있다. 일단 Action 은 void 반환에 파라미터가 없는 델리게이트 이다. 그리고 아래에 있는 제네릭 형태의 Action 은 파라미터를 받고 void 를 반환하는 형태다. voi.. 2022. 2. 22.
54. 람다식 앞장에서 무명메서드를 통해 델리게이트를 간단히 사용하는 방법을 알아 봤다. 람다식이란것을 사용하면 더 축약이 가능하다. 그런데 이렇게 줄이는것에 대한 단점도 분명히 있다. 디버깅시 소스가 실행되는 경로를 따라가기가 힘들어진다. 일단 쓰레드 자체가 디버깅도 힘든상태인데 소스가 계속 축약되다보니 나중에 다른사람이 소스를 받거나 현장에서 즉대응해야할경우 아무래도 기본소스보다 디버깅/수정 속도가 느려지게 된다. 일단 람다식 형식부터 알아보자. 대리자타입 변수명 = (파라미터) => 함수코드 기본형태는 이런데 실제 소스코드로 확인해보자. 그림1은 이제까지 진행하던 내용까지 합쳐서 테스트해놓은 내용이다. 여기서 하나씩 살펴보자. #if del1 //기본델리게이트 호출 tempdel td = new tempdel(t.. 2022. 2. 17.
53. 무명메서드 앞장에서 델리게이트를 잠시 살펴봤으니 다시 쓰레드로 넘어가보자. 그림1을 보고 잠시 생각해보자. Thread 를 사용하기 위해 객체로 만들면 파라미터로 ThreadStart 나 ParameterizedThreadStart 를 요구한다. 둘다 객체로 만들어서 파라미터로 넘기면 되는데 마우스를 올려보면 둘다 델리게이트 인것을 알수 있다. ParameterizedThreadStart 같은경우는 void 형(반환이 없는형태) 이고 object 를 인자로 받는 함수를 대리호출해주는 델리게이트 이다. ThreadStart 같은경우는 void형에 파라미터가 없는 함수를 대리호출해주는 델리게이트이다. 이렇게 쓰레드를 사용하기위해서는 델리게이트가 뭔지 알아야 한다. 결국 그림1 소스 같은경우는 쓰레드를 실행하는데 그쓰레.. 2022. 2. 8.
52. 델리게이트 앞에서 쓰레드의 가장기본적인 형태를 배웠다. 그런데 이쓰레드들을 사용할때 추가적으로 알아야 할것들이 많다. 일단 델리게이트부터 살펴보자. 델리게이트는 함수를 대신 호출해주는것 이라고 생각하면 된다. 함수를 직접호출하면 되지 왜 대신 호출하는게 필요할까 생각할 수 있다. 대부분의 경우 디커플링때문에 필요하다. 잘이해하기 힘든데 우리가 매번사용하는 버튼클릭이벤트를 한번생각해보자. 이벤트는 델리게이트를 랩핑한 클래스인데 일단 델리게이트와 이벤트는 같다고 생각하고 흐름을 따라가보자. 그림1은 우리가 자주 사용하는 기본 버튼클릭형태의 소스이다. 저기서 button1_Click 를 우클릭해서 모든참조찾기를 눌러보자. 그러면 그림1의 아래 부분에 있는 내용이 나온다. 저기서 this.button1.Click += n.. 2022. 2. 5.
51. 쓰레드1(Thread) 피씨는 한번에 여러일을 하는거처럼 사용할 수 있다. 예를 들면 노래를 들으면서 인터넷서핑을 하거나 파일을 다운로드 받으면서 영상을 보거나 하는것들이 있을수 있다. 이렇게 여러가지 작업들을 동시에 수행하는것은 실제로 여러가지를 한번에 동시에 수행하는것이 아니라 하나를 잠시작업하고 아주짧은시간뒤에 다른걸 또 작업하고 이렇게 여러개를 조금씩 계속 실행하는것이다. 다시 설명하면 한 가지 일을 하다가, 잠시 멈추고 또 다른 일을 하고, 또 멈추고 다른 일을 하다 보면 언젠가는 결국 모든 일을 마치게 된다. 이 동작이 엄청 빨라지면 한 번에 여러가지 일을 하는 것처럼 보이게 되는 것이다. 이작업을 멀티태스킹이라고 하는데 쓰레드는 다른작업을 시작하게 해주는 역할을 한다. 아래 그림을 보자. 그림1을 보면 메인작업 진.. 2022. 2. 4.
눈을떠요 야생소년 공략 0. 쿠폰 - 사용법 메인화면에서 설정 - 접속정보 - 쿠폰입력클릭 후 쿠폰번호입력 - 쿠폰주기 특정주기마다 [게임오픈 매년새해 크리스마스 등등] 일정기한 이후 만료로 등록불가 - 유효쿠폰 welcometwd 별보석 30개 부활앙크 12개를 지급 2022/01/22 현재(2022/01/31까지유효) xmas2021 1. 시스템 - 장르 생존 로그라이크 RPG - 시간개념 턴제 [10AP=1턴] 하루 144턴 낮72턴 저녁20턴 밤40턴 [그림자괴물 출현] 새벽12턴 속도에따라 여러번행동공격가능 Ex. 공속이 높으면 한턴한공격에 확률적으로 여러번 공격이 이루어진다. - 유통기한 인벤토리안에 들어오지 않은 아이템은 유통기한이 지나지 않는다. 즉, 야채 과일 버섯 약초등을 캐고 줍지않거나, 몬스터가 드랍한 고.. 2022. 1. 21.
오랫만에 브라운더스트 복귀했네요 브더 진짜 가끔 생각나서 다시 해볼까 말까 고민하다가 오랫만에 복귀 해서 재밌게 하고 있네요 다른게임과 다른특이한점이 뭔가 체스,바둑 장기처럼 서로 수싸움을 하는 게임이라는 점이네요 일러도 좋구요 지난주 결투장 2위 월드아레나 1위 달성했습니다. 스스로 자축 짝짝짝 2022. 1. 5.
50. 전처리기 / 편의사항 전처리기는 내가 소스를 만들면서 테스트하거나 소스를 편하게 보거나 편의성을 만들수있는 코드이다. 일단 아래 경로를 한번 읽어보자. https://docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/preprocessor-directives C# 전처리기 지시문 조건부 컴파일, 경고, null 허용 분석 등을 제어하는 다양한 C# 전처리기 지시문을 알아봅니다. docs.microsoft.com 여러가지 내용이 있는데 개인적으로 사용하는것 3가지 정도 밖에없다. 영역정의 , 기호정의 , 조건부컴파일 이정도가 되겠다. 우리가 프로그램을 계속 추가하고 하다보면 당연히 소스코드가 엄청 길어진다. 그런데 일일 내리면서 다보는게 쉽지는 않다. 그래서 디버깅이 힘들어.. 2021. 10. 29.
49. 디버깅 프로그램을 하면서 한번에 코드가 완벽하게 작동하게 만들기는 거의 불가능하다. 물론 간단한 출력프로그램 같은 경우는 그럴일이 없겠지만 대부분의 경우 디버깅이 필요하다. 일단 기본적인 디버깅 방법을 알아보자. 먼저 그림1에서처럼 위쪽 솔로션 구성이 Debug 상태인지 확인한다. 그후 아래 디버그해서 확인할 라인의 앞쪽부분(빨간색동그라미) 를 클릭하면 빨간색 원이 생긴다. 혹은 디버그할 라인을 선택하고 F9 를 누르면 (기본설정일경우) 클릭한것과 마찬가지로 빨간색 원이 생긴다. 빨간색원을 브레이크포인트라고 부르는데 브레이크 포인트는 설정되는 위치가 있고 안되는 위치가 있다. 예를 들면 위그림같은경우 35라인에 브레이크 포인트를 찍으면 거기찍히지 않고 중괄호가 시작되는 36라인에 브레이크 포인트가 찍히게 된다... 2021. 10. 9.
48. 계산기 만들기 ***숙제 : 그림1과 같은 기능을 가지고 있는 계산기를 만들어 보자. 2021. 10. 9.