목록
'전체 글' 740건
코드로 놀고, 언어로 성장하는 공방.
-
실시간 GIF 채팅방 만들기(1)사람들이 익명으로 생성하고 자유롭게 참여하면서 GIF 파일을 올릴 수 있는 채팅방을 만들어보겠습니다.몽고디비와 몽고디비 ODM인 몽구스를 사용할 것입니다. 몽구스를 설치한 후, 몽구스 스키마를 생성하겠습니다. 채팅방 스크마와 채팅 내역 스키마만 있으면 됩니다. 사용자는 익명이니 딱히 저장할 필요가 없습니다. 사용자의 이름은 랜덤 색상으로 구별하겠습니다.먼저 필요한 모듈을 설치합니다. 이미지를 업로드하고 서버에 HTTP 요청을 할 것이므로 multer와 axios를 같이 설치합니다. color-hash 모듈은 조금 전에 언급했던 랜덤 색상을 구현해주는 모듈입니다.$ npm i mongoose multer axios color-hash 먼저 채팅방 스키마를 만들어보겠습니다. schemas/room.jsco..
-
HashMap 사용 실습다음은 표현 언어에서 자바 HashMap에 저장된 객체에 접근하는 방법입니다.${HashMap 객체 이름.키이름} HashMap에 객체를 저장한 후 다시 출력해 보겠습니다.1. memberForm.jsp의 action 값을 member3.jsp로 수정합니다.2. member5.jsp를 다음과 같이 작성합니다. 전송된 회원 정보를 첫 번째 빈 m1 속성에 설정합니다. 태그를 이용해 HashMap 객체인 membersMap를 생성하고 membersMap에 회원 정보를 key/value로 저장합니다. memberMap에 ArrayList를 저장한 다음 membersMap에 key로 접근하여 value를 출력합니다. 아이디 비밀번호 이름 이메일 ${m..
-
이미지에 번역된 문자 출력하기이미지 위에 바운딩 박스를 그려 불투명한 색으로 채우고 그 위에 번역된 문자를 출력해 봅니다. pillow 패키지를 사용할 것입니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_3.py'로 지정하세요. 다음 코드를 입력한 뒤 대화형 창에서 실행하세요. 이미지 위에 바운딩 박스와 번역 결과가 표시됩니다.from pathlib import Pathfrom PIL import Image, ImageDraw, ImageFont # 02from step_1 import IN_DIR, OUT_DIRfrom step_3_2 import read_text_translatedOUT_3_3 = OUT_DIR / f"{Path(__file__).stem}.jpg"PROB = 0.75def read..
-
Socket.IO 사용하기이전 절의 ws 패키지는 간단하게 웹 소켓을 사용하고자 할 때 좋습니다. 하지만 구현하려는 서비스가 좀 더 복잡해진다면 Socket.IO를 사용하는 것이 편합니다. Socket.IO가 할 수 있는 일을 ws 패키지가 못한다는 뜻은 아닙니다. Socket.IO에 편의 기능이 많이 추가되어 있다는 뜻입니다.먼저 Socket.IO를 설치합니다.$ npm i socket.io@2 그리고 ws 패키지 대신 Socket.IO를 연결합니다. socket.jsconst SocketIO = require("socket.io");module.exports = (server) => { const io = SocketIO(server, { path: "/socket.io" }); io.on("connection", (so..
-
Collection 객체 사용 실습표현 언어에서 Collection 객체에 접근하는 방법을 알아보겠습니다. Collection 객체에 접근할 때는 다음과 같은 형삭울 사용합니다.${Collection(객체이름[index].속성이름} 지금부터 Collection 객체 중 가장 많이 사용하는 ArrayList에 회원 정보 빈을 작성한 후 다시 출력해 보겠습니다.1. memberbeanForm.jsp의 action 값을 member4.jsp를 수정합니다.2. 다음과 같이 member4.jsp를 작성합니다. 회원 가입창에서 전송된 회원 정보를 빈 m1에 저장한 후 다시 ArrayList에 작성합니다. 그리고 자바 코드를 두 번째 MemberBean 객체를 생성한 후 회원 정보를 설정하여 ArrayList에 저장합니다. 그리고 인덱스로 각 속성에..
-
외국어 번역 함수 만들기소스 코드 'step_3_1.py'를 활용하여 외국어 번역 함수를 만들어 봅시다. 비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_2.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하면 문자 인식 결과가 한국어로 변역됩니다.from pathlib import Pathimport deeplfrom step_1 import IN_DIRfrom step_2_2 import read_textdef read_text_translated(path: Path) -> list: # 06 text_list = read_text(path) # 문자 인식 함수 # 07 DEEPL_KEY = "37d1c222-b030-40a9-86e2-8635b079ea62:fx" # DE..