728x90
📍 77일차 2.16.수. 프로젝트 12일차 TL;DR
오늘은 내 생일이다. 어릴때의 생일은 특별한 날로 생각했지만 요즘은 특별한 날이 아니라는 생각이 든다. 점심즈음에 2년 전쯤 내가 중위로 근무할 때 같이 군생활을 했던 분들이 생일이라고 연락과 함께 기프티콘을 주셨다.(전역한지 약 2년이 되었지만 아직도 연락해주시는걸 보면 군 생활은 아주 못하진 않았다는 생각이 든다.) 그러나, 프로젝트 마감이 4일이 채 남지 않았기 때문에 게으름 피우지 않고 열심히 작업중이다.
- 동점자를 고려한 순위 매기기
const calcRankWithConcurrentScore = (userData) => {
const userRank = [...userData];
userRank.sort((a, b) => {
if (a.score === b.score) {
if (a.username < b.username) return -1;
if (a.username > b.username) return 1;
}
return b.score - a.score;
});
let rank = 1;
let currentScore = 0;
const result = userRank.map((user) => {
const { score } = user;
if (score >= currentScore) {
const newUser = {
...user,
rank,
};
currentScore = score;
return newUser;
}
rank += 1;
currentScore = score;
return { ...user, rank };
});
return result;
};
userRank: [
{
username: "Jin1won",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 100,
rank: 1,
},
{
username: "YWTechIT",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 100,
rank: 1,
},
{
username: "cafeLatte",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 70,
rank: 2,
},
{
username: "coffee",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 50,
rank: 3,
},
{
username: "h1jun",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 50,
rank: 3,
},
{
username: "alice",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 30,
rank: 4,
},
{
username: "soo054141",
avatarUrl: "https://avatars.githubusercontent.com/u/54543013?v=4",
score: 30,
rank: 4,
},
];
- develop에 최신 코드를 다른 브랜치로 내려받을 때는 git checkout develop 후 git merge 를 해주면 된다.
- routes에서 동일한 URI로 GET, POST요청을 보내는 코드는 다음처럼 한 줄로 줄일 수 있다.
// before
router.get("/today/goal", getGoalController);
rotuer.post("/today/goal", postGoalController);
// after
router.route("/today/goal").get(getGoalController).post(postGoalController);
728x90
nvm(node version manager)
: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bashsource ~/.bashrc
파일로 이동nvm install 14.18.1
: 원하는 노드 버전 설치nvm ls
: 설치한 노드 목록 보기node -v
: 현재 노드버전 보기- 터미널 재부팅 후에도 노드 버전이 제대로 적용되어있는지 살펴보기
- 백엔드 개선할 점: 써드파티 API를 이용하는 로직은 처음에 모두 긁어온다음 DB에 저장하고, 일정 시간마다 갱신했으면 더 좋을 것 같다.
Nginx
이용시proxy_pass
값 설정하기도메인
->nginx
->server.js
release
브랜치는 수정하지 않고develop
브랜치의 수정사항을 가져오기만 한다. 만약,release
브랜치의history
를 관리하고 싶다면tag
를 남기거나 삭제하지 않거나..- 무겁지 않은 로직은 테스트코드로 남겨두기
반응형
'Frontend > 엘리스 SW 엔지니어 트랙' 카테고리의 다른 글
[ 엘리스 SW 엔지니어 트랙 ] 79일차 TL;DR (0) | 2022.02.19 |
---|---|
[ 엘리스 SW 엔지니어 트랙 ] 78일차 TL;DR (0) | 2022.02.17 |
[ 엘리스 SW 엔지니어 트랙 ] 76일차 TL;DR (0) | 2022.02.15 |
[ 엘리스 SW 엔지니어 트랙 ] 2.13.월. TL;DR (0) | 2022.02.14 |
[ 엘리스 SW 엔지니어 트랙 ] 75일차 TL;DR (0) | 2022.02.12 |
댓글