오늘도 회의를 진행했는데 작업을 시작하기 전 
최종적으로 협의하고 깃 관리하는 방식에 대한 이야기를 진행했다.
칸반과 이슈 관리도 이렇게 복잡해질 수 있는지 몰랐고
브랜치도 각 작업자 이름 -> 프론트 -> 데브 -> 메인의 구조가 아닌
기능별로 구조를 만들고 커밋 때도 절차에 맞는 태그를 붙여야 헀다.

이런저런 진행 방식과 폴더 분할도 상당히 어려웠는데
무슨 원자, 분자 이런 4가지 분할이 있는데 일단 2가지정도로 한다고 한다.

Next의 기초적인 폴더 이용과 비슷한 index 사용은 귀동냥으로 이제 이해가 끝났지만 한분이 어느정도 작업한 내용을 봐야 완전히 알 수 있을 것 같다.

레퍼런스 문서화도 많이 되어있어 잘 보고 하기만 하면 문제는 없을 것 같지만 새로 추가된 부분(나에게만)이 10가지는 되는 것 같아 주의해서 해야겠다.

주석 방식도 특이하고(/** */)
전반적으로 누가 봐도 알기 쉽게 분할하자는 의도가 강했는데
이렇게 해야 협업이지! 라는 느낌이 강했기 때문에
정말 좋은 프로젝트 같았다.

양식에 맞게 클론 후 브랜치명을 생성한 다음
브랜치에 맞는 넘버링?(#9)으로 이슈 생성까지 완료했다.

자율적으로 보고 넘어가자는 느낌이라 넘어갔는데 
혼자서만 화면정의서를 하지 못한 부분이 걸리기도 했고
api를 내가 직접 받아서 사용하려고 헀었는데
오늘 서버에서 처리한 다음 api를 제공해주시는 방향으로 바뀐 것도 있어서
필요 데이터들을 아실 수 있게 하기 위해 화면 정의서도 작성했다.

오늘은 레퍼런스 학습을 조금 더 하고
익숙하신 동기분의 작업이 조금 올라오면 양식을 참고해서 진행해야겠다.

리액트 쿼리, 리코일, 반응형 웹, 폴더구조, 스타일관리법, 이슈관리, 컴포넌트 분할 및 TypeScript의 적용 등 너무 많은 정보가 쏟아지기 때문에 빠르게 따라가야겠다.





1.세마포어는 데드락, 경쟁상태 등의 문제를 예방하기 위해 공유자원의 접근을 제한하는 방식으로 Critical Section(임계 구역)이라는 공유 데이터 접근 프로그램 실행을 통제한다.

기본값은 1인 현재 자원의 사용 가능여부를 체크한 뒤
작업에 들어갈 때 자원의 값을 1씩 감소시키고
작업 시작 전 자원이 0이라면 자원을 대기하는 방식이다.


2.뮤텍스(Mutex)는 Mutual Exclusion의 약자로 데커, 피터슨, 제과점 알고리즘이 있다.

데커(Dekker) 알고리즘 - flag와 turn을 통해 진입 여부를 결정하는 방식
  세마포어와 비슷한 기능을 한다.
피터슨(Peterson) 알고리즘 - 데커에서 양보절차가 포함된 방식
제과점(Bakery) 알고리즘 - queue와 비슷한 느낌으로 우선순위 처리방식이다.






(1).백준 4766 일반 화학 실험은 각 온도차이를 출력하는 문제였는데
소수 둘째 자리까지 출력하는 부분이 포인트였다.
둘째자리까지 자르는 방법은 간단하게 100을 곱한 다음 반올림 후 100을 나누는 방식으로 처리할 수 있었지만 없는 소숫점을 다시 붙일 수는 없는 노릇이라 문자열로 변경한 뒤 소숫점의 위치가 -2인경우 '0'을 추가하고 소숫점이 없는 경우 '.00'을 추가하는 방식으로 해결헀다.

let input = `10.0
12.05
30.25
20
1
999`.split('\n').map(Number)

let result = []

for(let i = 0 ; i < input.length-2 ; i++){
    let A  = String(Math.round((input[i+1] - input[i])*100)/100)
    if(A[A.length-3] === '.'){}
    else if(A[A.length-2] === '.'){
        A += '0'
    }
    else{
        A += '.00'
    }
    result.push(A)
}


console.log(result.join('\n'))

+ Recent posts