목록개발 (33)
EPguy
Undraw: 다양한 무료 일러스트를 제공하며, 원하는 색상으로 변경할 수 있어 UI 디자인에 적합합니다. UndrawIcons8: 무료 아이콘, 벡터 및 일러스트를 제공하는 사이트로, 앱 디자인에 적합한 자원을 찾을 수 있습니다. Icons8DrawKit: 무료 벡터 일러스트 및 애니메이션 리소스를 제공하는 사이트입니다. 다양한 스타일의 일러스트를 쉽게 찾을 수 있습니다. DrawKitHumaaans: 사람 캐릭터를 자유롭게 조합하여 만들 수 있는 벡터 일러스트 사이트입니다. 앱 디자인에 적합한 이미지들을 직접 만들 수 있습니다. Humaaans
기존 FCM API deprecated 되어서 v1으로 마이그레이션 함. // 데이터 + 메세지 public int sendMessage(String token, String title, String body, HashMap data) throws IOException { String message = makeMessage(token, title, body, data); return sendMessageToFCM(message); } private String makeMessage(String token, String title, String body, HashMap data) throws JsonProcessingException { ObjectMapper ..
RSA는 암복호화에 사용되는 키가 서로 다르다는 장점이 있지만, 대칭키 알고리즘에 비해 암호화 속도가 느리다는 단점이 있다. 때문에 다량의 데이터를 암호화 하거나, 매 통신마다 RSA 암호화를 해버리면 속도 저하를 초래할 수 있게된다. 따라서 실제 데이터를 암복호화 할 때는 AES 알고리즘을 사용하게 되는데, 암복호화의 사용되는 키가 똑같다는 단점을 보완하기 위해 RSA의 공개키로 AES 대칭키를 암호화하여 사용한다. 프로세스는 아래와 같다.1. 서버는 RSA 알고리즘을 사용하여 개인키와 공개키를 생성한다.2. 클라이언트는 서버한테 공개키를받는다.3. 클라이언트는 대칭키를 생성하고, 받은 공개키로 대칭키를 암호화한다.4. 클라이언트는 암호화된 대칭키를 서버에 전송하여 키 합의를 한다.5. 클라이언트는 대..
다른 계정으로 로그인 시 기존 데이터를 무효화 시켜야 하는 경우가 있습니다. dispatch(api.utils.invalidateTags(...)) 를 사용하여 쉽게 특정 api 태그를 무효화 시킬 수있습니다. dispatch(memberApi.util.invalidateTags(['Member'])); dispatch( attendanceScheduleApi.util.invalidateTags(['AttendanceSchedule']), );
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/mCt6J/btsFuOsZkYh/Dt6IoZk7rDWWQKhHkimr91/img.gif)
import pygame pygame.init() WHITE = (255, 255, 255) WIDTH, HEIGHT = 500, 500 screen = pygame.display.set_mode((WIDTH, HEIGHT)) clock = pygame.time.Clock() GRAVITY = 0.7 PLAYER_RUN_SPEED = 2 PLAYER_JUMP_SPEED = 6 PLAYER_MASS = 0.7 class Character: def __init__(self, image, run_speed, jump_speed): self.original_image = image self.image = image self.rect = image.get_rect() self.movement = 0 self.di..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rZNXC/btsFvZzMALi/wniBBL8ZdwKHKkeiIAxzAk/img.gif)
import os os.environ['PYGAME_HIDE_SUPPORT_PROMPT'] = "hide" import pygame import numpy as np from math import * pygame.init() WHITE = (255, 255, 255) RED = (255, 0, 0) BLACK = (0, 0, 0) WIDTH, HEIGHT = 800, 600 screen = pygame.display.set_mode((WIDTH, HEIGHT)) scale = 100 circle_pos = [WIDTH/2, HEIGHT/2] angle = 0 movement = 0 vertices = [np.matrix([-1, -1, 1])] vertices.append(np.matrix([1, -1,..