묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
회원 관리 예제4 - ObjectStream에대해서
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 회원 관리 예제4 오브젝트스트림 에 대해서 복습하는데, ObjectBookRepository 클래스의 add() 에서멤버를 리스트 에 넣고, 오브젝트 안에 리스트를 넣는 방식이 저에게는 생소 하다 할까요?이 예제 코드를 여러 번 치고 지우다 보니, 머리에 입력은 되긴 했는데. 머리에 입력이 된거지, output은 안 나오는 상황입니다.이럴 때에는 어떻게 해야하나요?답변 부탁 드립니다.
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
개인키, 공인 인증서 폴더
안녕하세요 1:42 에 말씀하신 개인 키랑 공인인증서 폴더 가 무엇인가요??? 다운받은 내용이 없는데 폴더도 없습니다. 어디서 찾을수 있나요?? - 강의 영상에 대한 질문이 있으시면, 상세히 문의를 작성해주시면, 주말/휴일 제외, 2~3일 내에 답변드립니다 (이외의 문의는 평생 강의이므로 양해를 부탁드립니다.)- 강의 답변이 도움이 안되셨다면, dream@fun-coding.org 로 메일 주시면 재검토하겠습니다. - 괜찮으시면 질문전에 챗GPT 와 구글 검색을 꼭 활용해보세요~- 잠깐! 인프런 서비스 운영(다운로드 방법포함) 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
채팅 프로그램 콘솔출력 겹침
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 채팅 프로그램 작성 도중 여쭤볼 게 있어 남기게되었습니다문제 상황위 사진은 제 콘솔출력창입니다 왼쪽사용자는 kim : hi라는 메시지를 보냈고, 오른쪽 사용자는 han: hello라는 메시지를 보냈는데요, 문제는 메시지를 보내달라는 문장과 다른 사용자가 보낸 메시지 내용이 겹친다는 것입니다 질문 위 사진은 제가 해결해보려는 시도로 static메소드를 lock을 사용해서 만들었습니다. 하지만 결과가 똑같았습니다. 해결방법이 궁금합니다! 그리고 lock을 걸어서 사용했는데 왜 결과가 똑같은지도 궁금합니다...답변해주시면 감사하겠습니다 아래는 제 코드를 보여드리겠습니다!1.Client 메세지 보내는 부분 클래스입니다 public class ClientSecond { private static final int PORT = 12345; static Socket socket; static DataOutputStream output; static DataInputStream input; public static void main(String[] args) throws IOException { try { socket = new Socket("localhost", PORT); output = new DataOutputStream(socket.getOutputStream()); ClientReceiverSecond clientReceiverSecond = new ClientReceiverSecond(socket); Thread thread = new Thread(clientReceiverSecond); thread.start(); System.out.println("Chatting Program"); System.out.print("사용자의 이름을 입력하세요 : "); Scanner scanner = new Scanner(System.in); String name = scanner.nextLine(); output.writeUTF(name); //1.이름전송 while (true) { //System.out.print("메세지를 입력해주세요 : "); ClientOutput.printMessage(); String message = scanner.nextLine(); output.writeUTF(message); //2.메세지전송 if (message.equals("exit")) { System.out.println("채팅 프로그램을 종료합니다. "); break; } } }finally { output.close(); socket.close(); } } } 각 클라이언트에게 다른 사용자의 메세지를 보내는 클래스입니다public class ClientReceiverSecond implements Runnable { private static Socket socket; static DataInputStream input; public ClientReceiverSecond(Socket socket){ this.socket = socket; } @Override public void run() {//다른 사용자들의 메세지 확인 try { while (true) { input = new DataInputStream(socket.getInputStream()); String other_messages = input.readUTF(); //사용자의 이름과 메시지 분리 필요 //System.out.println(other_messages); ClientOutput.printMessage(other_messages); //todo if (other_messages.equals("exit")) { System.out.println("채팅을 종료합니다. "); break; } } } catch (IOException e) { throw new RuntimeException(e); }finally { try { input.close(); } catch (IOException e) { throw new RuntimeException(e); } } } } 클라이언트와 통신하는 세션 클래스인데요 혹시 몰라서 추가로 올려보겠습니다public class SessionSecond implements Runnable{ private Socket socket; private SessionManagerSecond sessionManagerSecond; DataInputStream input = null; DataOutputStream output = null; public SessionSecond(Socket soket, SessionManagerSecond sessionManagerSecond) { this.socket = soket; this.sessionManagerSecond = sessionManagerSecond; sessionManagerSecond.add(this); } public void send(String message) throws IOException { output = new DataOutputStream(socket.getOutputStream()); String messages[] = message.split(","); String name = messages[0]; String messagemain = messages[1]; output.writeUTF(name+" : "+messagemain); } @Override public void run() { try { input = new DataInputStream(socket.getInputStream()); //output = new DataOutputStream(socket.getOutputStream()); String name = input.readUTF(); while (true) { String message = input.readUTF(); if (message.equals("exit")) { break; } String allmesaage = name+","+message; sessionManagerSecond.call(allmesaage); } } catch (IOException e) { throw new RuntimeException(e); }finally { try { output.close(); input.close(); } catch (IOException e) { throw new RuntimeException(e); } } } }
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
세션8 우선순위 큐 pop함수의 Predicate 적용 관련 질문이 있습니다.
pop 함수를 보면 if (right < (int)_heap.size() && predicate(heap[next], _heap[right]))인 left와의 비교에서 나온 결과 값을 비교하는 부분에만 predicate를 적용하였는데 위에 left와 비교하는 부분은 둘 중 더 큰 값을 next에 넣는게 목적인 코드입니다.더 작은값을 찾을때 문제가 생길 수 있을것이라 생각이 되는데 문제가 생기지 않아 의문점이 생겨 질문 드립니다.left쪽엔 predicate 비교를 하지 않아도 되는 이유가 무엇일까요?
-
해결됨김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
[오타 제보] 2. IO 기본1.pdf
[오타 내용]대상 강의록: 2.IO 기본1.pdf대상 위치: p.17 최하단 부분오타 내용수정 전: 예를 들어 BUFFER_SIZE가 10이라면 10만큼 모이면 wirte()를 호출해서 ...수정 후: 예를 들어 BUFFER_SIZE가 10이라면 10만큼 모이면 write()를 호출해서 ... 백준 풀 때 실행 시간 빠른 코드들은 다들 Buffered 어쩌고를 썼길래 이게 뭐지~ 하고 그냥 넘어갔던 기억이 있는데 여기서 마주하게 되어서 기쁘고 재밌네요!
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
워드프레스가 어렵네요 ㅠㅠㅠ
80포트를 이미 사용중이여서50080을 사용중인데 (iptime에서 포트포워딩 되어 80으로 들어가므로 강의 코드는 계속 그대로 써도 상관없었습니다)워드프레스 로그인 하니까 50080포트가 사라지면서 80 포트로 되어서 로그인 페이지 처리가 안되는 것 같은데 워드프레스를 잘 모르니까 어디를 고쳐야할지 모르겠네요..아마 워드프레스에서 다시 서버 도메인으로 리다이렉션 시키는 부분이 있는 것 같은데 그때 80포트로 시켜버리나봐요..
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
기초편 이후로 선행되어야하는 지식
안녕하세요 선생님,기초편을 들은 후 응용편으로 넘어왔는데 난이도(?)가 확 올라가서 혹시나 듣기 전에 선행해야 하는 책 또는 지식이 있다면 알려주실 수 있으실까요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기간 연장 부탁드립니다.
수강기간 연장 부탁드립니다. 감사합니다.
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
도커 활용하기 (주피터 노트북 서버 만들어보기)에서 질문있습니다
15:15 에 로컬호스트는 사실 자기 서버라고 하셨는데 자기 서버인데 왜 localhost로 3306 열려져 있는 포트를 찾지 못했던 것인지 잘 모르겠습니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기간 연장을 부탁드립니다.
안녕하세요 강사님.다름이 아니라 개인적인 사정으로 인해 강의를 모두 수강하지 못하여, 수강 기간 연장을 요청드리고 싶습니다.혹시 가능하시다면 연장해 주실 수 있을까요? 번거롭게 해드려 죄송합니다.감사합니다.
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
SessionV3 객체 예제는 실제 HttpSession 처럼 동작하는 객체일까요?
[질문 내용]여기서 작성한 Session 객체도 혹시 HttpSession 객체랑 비슷하게 동작하는 방식일까요?
-
미해결AWS Certified Cloud Practitioner 자격증 준비하기
실전 문제 풀이 6 26번 질문있습니다.
안녕하세요.ACL은 서브넷 단위로 적용되고, 보안 그룹은 인스턴스 단위로 적용되는 것으로 알고 있습니다. 문제의 조건에서 ‘다른 인스턴스와의 네트워크 연결을 제어하지 않는다’고 명시된 점을 고려했을 때, 인스턴스 단위로 적용할 수 있는 보안 그룹이 정답이 되어야 하는 것 아닌지 궁금합니다. ACL은 서브넷 내의 모든 인스턴스에 동일하게 적용되므로, 다른 인스턴스와의 네트워크 연결을 제어하지 않는다는 조건을 충족하지 못하는 것이 아닌가요?답변 주시면 감사하겠습니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
.
.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
섹션9 함수 포인터 관련 질문입니다.
영상 초반 내용을 보면 using FuncPtr = void();는 잘 사용하지 않는 문법이라고 하고, 뒤이어 나오는using FuncPtr = void(*)();와 같은 형식을 자주 사용한다고 했는데 동일하게 동작한다면 오히려 앞쪽이 더 편한 것 아닌가요? (*)를 추가하는 이유가 단순히 포인터임을 표시해주기 위함 인가요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
콘솔앱 (.NET Core) 과 콘솔앱과 동일한가요
Visual Studio 2002 사용 중입니다. 구글링 해서 SDK도 설치하고 여러가지 해봤지만 콘솔앱 (.NET Core)는 보이지 않네요. 명칭이 콘솔앱으로 변경되었다는 글을 본 것 같아서 콘솔앱으로 진행했는데 namespace도 자동으로 생성되지 않고 조금 다른 부분이 보입니다. 같은 것이 맞나요? 이렇게 진행해도 되나요??
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
스위치에 대한 질문
'스위치는 네트워크 그 자체를 이루는 호스트이다.'라고 표현하셨는데 이 부분이 헷갈립니다.'엔드 포인트는 네트워크 그 자체를 이루고 있지 않다는 것인가?'라는 의문이 들기 때문입니다.저는 이렇게 이해했습니다. '스위치는 네트워크 그 자체를 이루는 목적의 호스트이고, 엔드 포인트는 네트워크를 이루면서 다른 목적도 있는 호스트이다.'제가 이해한 것이 맞는지 궁금합니다.
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
안녕하세요 배포 관련 질문이 있습니다.
파이썬 백엔드 강의를 다 들은 상태인데요medelcontrollerviewstatictemplatesserver.py구조로 되어있을텐데요이를테면 spring에서 war로 만들어서 tomcat에서 실행시키잖아요그것처럼 flask도 이 강의 flask 부분을 따라하면 기존 강의의 위처럼 되어있는 구조(medelcontrollerviewstatictemplatesserver.py)에서 flask 식으로 빌드가 가능한건가요?아직 못 들어봐서 이전 강의 구조 그대로 이어서 배포가 가능한가 싶어서요spring 은 maven 생성하면 자동으로 properties 나 pom.xml 같은 구조가 기본적으로 갖춰지는데일반적으로 플라스크는 원래 프로젝트 폴더를 먼저 생성하고 빌드를 위한 구조를 갖추게 하는건가요?자세한 건 강의보고 따라 하겠지만.. 틀을 잘 모르겠습니다..---------------------------------------------------------조금 더 공부하고 찾아보았는데요1. 기존 구조에서 pip freeze > requirements.txt 를 하여 requirements.txt 파일이 프로젝트 폴더에 추가되게 한다.2. wsgi.py 파일을 추가해준다from server.py import appif name == "__main__":app.run()3. gunicon 을 사용하여 프로젝트를 돌려준다.혹시 이렇게 하는 것인가요?부족한 것이 있을까요 ?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기한 연장 문의
안녕하세요 강사님. 다름이 아니라 개인 사정으로 강의를 다 듣지 못하여 수강 기한 연장을 문의드리고 싶습니다. 번거롭게 해드려 죄송합니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기한 연장
안녕하세요. 강사님수강기한 신청 연장이 가능하다면 수강기한 연장을 부탁드리고 싶습니다.감사합니다.
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
html form 형태 전송시 new, edit 등 컨트롤 리소스를 사용하는 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네[질문 내용]안녕하세요. 영한쌤께서 실무에서는 컨트롤 리소스를 사용하는 경우가 많다고 하셨는데, html form 형태 전송시 post나 get밖에 처리가 안되더라도 이벤트를 prevent한 다음 ajax를 통해서 patch, put, delete하면 되지 않나요? 이벤트 핸들러를 만드는 등의 추가 코드 작업을 해줘야하는 번거로움 때문에 컨트롤 리소스를 사용하는것인지 궁금합니다. 아니면 다른 이유가 있는걸까요?