1 minute read


blog

이런것까지 되나 싶은데.. 아이패드 굿노트에서 그림그려서 복사하고 맥북에서 깃헙 이슈에서 붙여넣으면 바로 붙여진다ㄷ

project

pseudo

스키마가 users와 프로필과 구글, 다이나믹 관련으로 중구난방이다. 어떻게 해야 깔끔할까? 성능을 위해서는 다 합치는게 맞지만, 정의는 의미별로 해야 관리하기 수월할 것이다.

어쨌든 기능이 중요하므로 기능을 만들되 그것을 신경쓰면서 할 필요가 있다.

그렇게 되면, 따지고 봤을때 프로필에는 get 기능이 굳이 필요없고, 유저 문서가 프로필을 포함하므로 한 번에 유저 정보만 조회하는 현 상태대로도 괜찮은 듯하다.

그러면 프로필쪽 라우트에서는 편집 기능들만 제공하면 된다.

유저 스키마로부터 프로필 스키마를 일단 구조상 하위로 사용하도록 분리했는데, 그렇게 하고나니 이미 참조하는 다른 키들도 전부 구조를 바꾸어야 하는 문제가 있다.

다시 돌려서 구글쪽 정보로부터만 필요한 프로필 정보를 가져오는 쪽으로 하던가, 다른 모든 코드에서도 user.profile.userName이런식으로 사용하도록 바꾸던가 해야하는데, 아무래도 후자는 범위도 그렇고 복잡해지므로 전자 방식으로 해야할 듯하다.

다만 전자 방식으로는, updateProfile()user[key] = value 이런 식으로 써야 해서 조금 의미상으로 아쉬운 느낌이 있다. user.profile[key] = value 이게 의미상 더 맞다고 생각.

프론트쪽에서는 아래 링크와 같은 방식으로 vuex, axios를 이용하여 api를 앱에 가져오고, 그것을 컴포넌트에서 보여주는 식으로 해야 할 듯하다.

https://blog.logrocket.com/how-to-consume-apis-with-vuex-and-axios/

sport

1393A

http://codeforces.com/problemset/problem/1393/A

rust solution

쉬운 문제. 규칙 찾으면 그냥 단순 계산이다.

image

fn solve<R: io::BufRead, W: io::Write>(scan: &mut UnsafeScanner<R>, out: &mut W) {
    let cases = ri32(scan);
    
    for _ in 0..cases {
        let n = ri32(scan) as f64;
        
        // first integer that is larger than n/2
        writeln!(out, "{}", (n/2.0 + 1.0).floor());
    }
}

Comments