Skip to content

1111(금) 전체 회의록

김가은 edited this page Nov 20, 2023 · 1 revision

11/11

🍁 회의에서 할 것

  • 황준일님 피드백 다시 읽어보고 일부 적용하기
  • 월요일에 할 것 정리

피드백 읽어보기

  • 백로그 작업 예상 시간 추가하기

    • 만나서 하기
  • 깃헙 프로젝트 쓰기

    • 프로젝트 생성
    • 칸반보드, 간트 차트, 이슈 테이블 생성
  • 노션이랑 깃허브 연동 기능 찾아보기

  • interface로 통일하는 이유..?

    • ts에서 type과 interface 차이 ⇒ 준섭이 알아보고 정리하기
  • 이벤트 핸들러 네이밍 예시 상세하게

    • 차차 프론트끼리 구현 하면서 추가
  • 모노레포

    • yarn workspace 사용하기
    • 월요일에 다시 프로젝트 세팅 할 예정
  • 스크럼에서 이번주 개인별 목표 이야기하기

    • 다음 주 부터 적용
  • 팀회고 KPT 방식 사용하기

    • 월요일에 만나서 회고 방법 체계적으로 정하기
  • 마일스톤 사용해보기

    • 월요일에 할 일 예상 시간 추가하고 만들기
  • PR 템플릿 스크린샷부분 조금 더 자세하게

    • 스크린샷 ⇒ 동작 화면
  • type vs interface

    JavaScript vs TypeScript

    코드 비교

    const user = {
    	id: 'admin',
    	name: 'admin',
    };
    
    user.email  // Not error
    interface User {
    	id: string;
    	name: string;
    };
    
    const user: User = {
    	id: 'admin',
    	name: 'admin',
    	email: 'admin@teamo2.kr',  // Object literal may only specify known properties, and 'email' does not exist in type 'User'.
    };
    
    user.email  // Property 'email' does not exist on type 'User'.

    타입을 모를 때 생길 수 있는 위험

    const consoleArrayLength = (array) => {
    	console.log(array.length);
    };
    
    consoleArrayLength();  // Error on runtime
    
    const value = 10;
    consoleArrayLength(value);  // Error on runtime

    타입 선언

    기본 타입

    • Boolean: 참/거짓

    • Number: 숫자

    • String: 문자열

    • Array: 배열

    • Object: 객체

    • Any: 아무거나

    • Null

    • Undefined

    • Void

    • Never

    • Unknown

    유니온 (Unions)

    type Status = 'open' | 'closed';
    const status: Status = 'open';
    const status: Status = 'closed';

    제네릭 (Generics)

    type StringArray = Array<string>;
    const stringArray: StringArray = ['string1', 'string2'];
    
    type CustomTypeOrNumber<T> = T | number;
    const customTypeOrNumber: CustomTypeOrNumber<string> = 'any string';
    const customTypeOrNumber: CustomTypeOrNumber<string> = 100;

    구조적 타입 시스템 (Structural Type System)

    interface User {
    	id: string;
    	name: string;
    };
    
    const user: User = {
    	id: 'admin',
    	name: 'admin',
    };

    Type vs Interface

    같은 기능?

    type UserType = {
    	id: string;
    	name: string;
    };
    
    type UserClass = UserType & {
    	email: string;
    	login(): boolean;
    };
    
    class User implements UserClass {}
    
    interface UserType {
    	id: string;
    	name: string;
    };
    
    interface UserClass extends UserType {
    	email: string;
    	login(): boolean;
    };
    
    class UserClass implements UserClass {}

    다른점

    // 선언 병합
    interface User {
    	id: string;
    };
    
    interface User {
    	name: string;
    };
    
    const user: User = {
    	id: 'admin',
    	name: 'admin',
    };

    결론: 개방-폐쇄 원칙에 의해 불가피한 상황이 아니라면 Interface를 사용하는 것이 좋다.

    References

월요일에 할 것

  • 태스크당 예상작업시간 추가하기 → 마일스톤 작성
  • 노션 깃허브 연동
  • interface로 통일하는 이유 찾아보고 위키에 추가하기 or 룰 바꾸기
  • 모노레포 설정 변경
  • 위키의 이벤트 핸들러 네이밍 룰에 예시 더 상세하게 적기
  • 페어프로그래밍 룰 추가하기
  • 회고 방법론 정하기

소개

규칙

학습 기록

[공통] 개발 기록

[재하] 개발 기록

[준섭] 개발 기록

회의록

스크럼 기록

팀 회고

개인 회고

멘토링 일지

Clone this wiki locally