본문 바로가기

분류 전체보기204

[Dart] dart 기본 | 자료형, JSON, stream 자료형 구분 자료형 설명 숫자 int 정수형 숫자 double 실수형 숫자 num 정수형 또는 실수형 숫자 문자열 String 텍스트 기반 문자 불리언 bool True나 False 자료형 추론 var 입력받은 값에 따라 자료형 결정. 한 번 결정된 자료형은 변경 불가 dynamic 입력받은 값에 따라 자료형 결정. 다른 변수 입력하면 자료형 변경 가능 Null safety 자료형 다음 ?를 붙이면 Null이 가능하고 붙이지 않으면 Null이 불가능하다. 그리고 식 다음 !를 붙이면 Null이 아님을 직접 표시할 수 있다. JSON 인코딩, 디코딩 jsonDecode()를 사용하면 String을 Map 객체로 변환한다. jsonEncode()를 사용해 Map 객체를 String 타입의 JSON으로 변환한.. 2023. 3. 25.
[C++] vector.size()는 unsigned 이다. vector v의 사이즈가 4이고 k가 10일 때 (v.size() - k > 0) 조건이 계속 참이 나왔다. 왜 그러나 (v.size() - k) 를 콘솔에 찍어보니 쓰레기 값이 나왔다..... 쓰레기 값을 30초 들여다보니 아차 싶더라. v.size() 는 양수만 취급한다.size가 음수일리는 없으니 signed 자료형으로 개발했나보다. C만든 사람들 꽤나 직관적이다. unsigned : 양수만 표현 가능 (0 ~ 2^32-1) signed : 맨 앞 비트로 양수/음수를 분별한다. (-2^31 ~ 2^31-1) signed int가 기본형이라 너무 당연하게 v.size()가 음수 표현이 안 될 것이란 생각을 못했다. 바보.......... 2023. 3. 24.
[Spring Reactive] Spring Boot에서 R Socket 사용하기 TCP를 기반으로 하는 R소켓을 이용해서 서로 다른 시스템을 리액티브 하게 연결하는 방법을 알아보자. org.springframework.boot spring-boot-starter-rsocket 이 의존관계를 통해 다음 기능이 프로젝트에 추가된다. R소켓: 자바로 구현된 R소켓 프로토콜 리액터 네티: 네티는 리액티브 메시지 관리자 역할도 충분히 수행할 수 있다. 리액터로 감싸져서 더 강력한 서버로 만들어졌다. 스프링+잭슨: 메시지가 선택되고 직렬화되며 전송되고 역직렬화되고 파우팅되는 것은 프로토콜의 리액티브 속성만큼이나 중요하다. R소켓 서버 생성 @Service public class RSocketService { private final ItemRepository repository; // priv.. 2023. 3. 23.
[C++] 달팽이 알고리즘 정방향 행렬에서 시계 방향으로 탐색 시 N, N-1, N-1, N-2, N-2, ... , 2, 2, 1,1 순서로 값이 채워지는 규칙이 있다. 이 규칙을 이용하면 코드 축약에 도움을 준다. sign 을 사용하는 것은 x가 증가하는 쪽으로 변화하면 다음 y는 감소하는 쪽으로 변화하고, 반대로 y가 증가하면 x는 감소하기 때문이다. int size=N*N-1, sign=1; int x=0,y=0; // 초기 N번 한 번 for(int i(0) ; i0 ; i--){ for(int j(0) ; j 2023. 3. 22.
[서평/23-14] 공간의 미래: 코로나가 가속화시킨 공간 변화 독서기간_2023년 3월 초 저자_유현준 출간일_2021년 5월 17일 미래는 다가 오는 것이 아니라 창조하는 것이다. 유현준 교수를 처음 알게 된 경로는 마인크래프트로 보는 건축(?) 이라는 유튜브 영상이었다. 건축이라 하면... '공사판 일용직'이 주는 편견이 있어서 대수롭지 않게 생각했다. (물론 그들의 기술력도 무시할 수 없다.) 그리고 게임에서 무슨 건축?이라 생각하기 쉽지만... 유현준 교수의 지적인 면모가 눈에 띈다. 그렇게 교수님을 처음 알게 되었다. 건축의 'ㄱ'도 모르는 나인데, 건축이란 키워드로 나를 이렇게 매료시킬 줄 몰랐다. 책을 읽다보면 작자는 다방면에서 지식을 보유하고 있다는 것이 느껴진다. 건축과 생활 양식의 연관성, 건축물과 종교. 지향해야 하는 양식 등 국내외를 막론하고 .. 2023. 3. 22.
[UI/UX] 디자인 레퍼런스 사이트 올 것이 왔다... 플러터보다 더 어려운 디자인ㅠ 이걸 구상하고 코딩하는 디자이너분들과 프론트엔드 개발자분들에게 존경을 표현합니다. 1. 디자이너스 (모바일) 디자이너스 세상의 모든 디자이너들을 위한 공간, 디자이너스(Designus) designus.io 2. Mobbin (모바일 / 웹 beta) https://mobbin.com 3. Dribbble (모바일 / 웹 / 일러스트) Dribbble - Discover the World’s Top Designers & Creative Professionals creative, modern, minimalist, logo, gradient, letter logo dribbble.com 4. WWIT (모바일) Lifeplus 한국의 UI/UX 모바일 패턴.. 2023. 3. 21.
[Spring Reactive] RabbitMQ를 이용해 메시지 브로커 사용하기 AMQP 메시지 프로듀서 @RestController public class SpringAmqpItemController { private static final Logger log = LoggerFactory.getLogger(SpringAmqpItemController.class); private final AmqpTemplate template; public SpringAmqpItemController(AmqpTemplate template) { this.template = template; } @PostMapping("/items") Mono 2023. 3. 21.
[Git] 원격 저장소에 잘못 올린 폴더, 파일 삭제하기 (.idea/ 폴더 삭제하기) 원격저장소와 로컬저장소에 있는 파일 및 폴더를 삭제한다. git rm [파일/폴더명] 원격저장소에 있는 파일 및 폴더를 삭제하는 명령어이다. git rm --cached [파일/폴더명] 뭔지 모르겠지만 'r' 옵션 없이는 안 된단다. -r 옵션을 추가하니 정상 수행되었다. commit 후 push를 해야 리모트에 반영된다!! 2023. 3. 20.