Assignments
5 posts
ComputerNetwork
Assignments
June 19, 2023
홈페이지 개발 방식 및 후기, 컴퓨터 네트워크 과목을 마치며

홈페이지 개발일지 뭘로 만들건데? WIX? SITE123? 컴퓨터 네트워크 강좌 과제의 일환으로 공부 내용을 정리하여 직접 만든 홈페이지에 게시해야했습니다. 교수님께선 WIX 및 기타 플랫폼을 이용하시라 하셨지만 그래도 개발자인데 직접 바닥부터 웹사이트를 빌드해서 배포까지 해보자는 생각으로 기존에 알고있던 JS, React지식을 활용하여 프론트 부분을 구성하고 백엔드 쪽은 Firebase를 사용하든지 Spring으로 직접하든지 하도록 하자! 하고 바로 웹사이트 개발을 시작했습니다. 마크다운 형식(.md)를 재활용할 수 없을까? 저는 평소에 강의자료 등을 이라는 워크스페이스를 통해 요약 및 관리하고 있는데, 여기에 정리해 둔 자료들을 놔두고 다시 웹사이트에 처음부터 적는것이 번거로울 것 같았습니다. 그래서 일일히 html문서로 게시글을 새로 올리는 방식 대신 .md 파일을 이식하여 통합관리하는 정적인 사이트를 만들기로 결정했습니다. 이와 딱 맞는 서비스를 제공해주는 플랫폼이 …

ComputerNetwork
Assignments
April 29, 2023
소켓프로그래밍 과제#2-4 (계산기 구현)

소켓 프로그래밍 과제#2-4 : 계산기 구현 요구사항 클라이언트에서 서버에게 수식을 보내면 서버는 해당 수식의 해를 클라이언트에게 전송 코드 코드(클라이언트) 코드(서버) 계산 과정은 후위표기법으로 구현하였음. 각 연산자의 우선순위를 고려하여 연산자스택, 피연산자스택에서 push or pop 실행 결과 1+512/2+(23)-1 서버 클라이언트 (1+2)*3/(3-1)+13 서버 클라이언트 (3+5)/(1+3)*11 서버 클라이언트 파일 : 깃허브 링크 요구사항 코드 코드(클라이언트) 코드(서버) 실행 결과

ComputerNetwork
Assignments
April 28, 2023
소켓프로그래밍 과제#2-3 (DBMS활용 DNS구현)

소켓 프로그래밍 과제#2-3 : DBMS활용 DNS구현 요구사항 클라이언트에서 서버에게 IP or Domain Name을 보내면 서버는 Domain Name or IP를 클라이언트에게 반환, 구분 코드는 N,R,W이고, W는 INSERT쿼리 실행하여 새로운 Domain Name, IP할당 DBMS MySQL사용 JAVA에서 구현할 것이기 때문에 JDBC드라이버 필요. 코드 코드(클라이언트) 코드(서버) IP주소는 개인 테스트를 위해 localhost(127.0.0.1)로 하였음 클라이언트로부터 받은 메세지를 파싱( : 를 기준으로)하여 N,R,W중 어떤 명령을 실행할지 판단 DB 기본키는 id IP, NAME은 유니크 키로 설정하였음 실제 다른 두 컴퓨터로 연결해보기 💡 서버 컴퓨터는 공유기 와이파이에 연결하였고, 클라이언트 컴퓨터는 핸드폰 핫스팟으로 연결하였습니다. Domain Name → IP 전환 기능 IP → Domain Name 전환 기능 새로운 IP&Domain …

ComputerNetwork
Assignments
April 27, 2023
소켓프로그래밍 과제#2-2 (파일 읽기/쓰기)

소켓 프로그래밍 과제#2-2 : 파일 읽기/쓰기 요구사항 클라이언트에서 서버에게 파일 이름을 보내면, 해당 파일을 읽고/쓰는 기본적인 기능 구현 코드 코드(클라이언트) 클라이언트에서 지원하는 형식은 두가지이다. R:파일이름 W:파일이름:추가할내용 코드(서버) 클라이언트로부터 받은 문자열을 “:”기준으로 파싱하여 읽기타입인지, 쓰기타입인지를 첫번째 인자로부터 알아내고, 파일 이름을 두번째 인자로부터 알아내며, (만약 쓰기라면) 세번째 인자를 통해 쓸 내용을 알아낸다. 텍스트 파일 실행 결과 클라이언트 읽기(R) 클라이언트 쓰기(W) 파일 내용 예외처리 파일 : 깃허브 링크 요구사항 코드 코드(클라이언트) 코드(서버) 텍스트 파일 실행 결과

ComputerNetwork
Assignments
April 26, 2023
소켓프로그래밍 과제#2-1 (ASCII)

소켓 프로그래밍 과제#2-1 : ASCII 변환 요구사항 클라이언트에서 서버로 문자열을 보내면, 서버에서 해당 문자열을 아스키 코드로 변환 후 클라이언트에게 전송. 코드 코드(클라이언트) 코드(서버) 실행 결과 서버측은 붉은색, 클라이언트 측은 푸른색으로 표시하였습니다. 서버 오픈 클라이언트 오픈 클라이언트 오픈 후 서버 상태 클라이언트에서 서버로 문자열 전송 & 완료 완료 후 서버 상태 아스키 코드표 코드표를 확인해 보면, D : 68 a : 97 n : 110 k : 107 o : 111 o : 111 k : 107 U : 85 n : 110 i : 105 v : 118 로 올바르게 전송된 것을 확인할 수 있다. 코드 개선 Scanner 대신 BufferedReader를 쓰는 것이 속도가 더 빠르다. Scanner는 버퍼 크기가 1KB이고, BufferedReader는 버퍼 크기가 8KB이다. 예제같은 경우처럼 문자열 크기가 작을 경우는 큰 이득은 없음. Scann…