project 3

[싸피 회고] 특화 프로젝트 3 - FCM(Firebase Cloud Messaging)

내가 ddong... 이 된 FCM. 알람은 우리 앱의 주요 기능 중 하나였고 알람 기능을 개발하기 위해  FCM을 사용했다. 올해 FCM 사용법이 바뀌어서 정보 찾는 게 어려웠다. 혼자 할 수 있는 게 아닌데 혼자 하겠다고 끙끙대서 날린 시간도 있다. 반성 반성 또 반성. 나 진짜 소통 잘 못하는구나를 느껴 아주 조금 우울했었지만 백엔드 팀원과 합심해서 기능 구현을 성공해 행복했다.  FCM을 사용하기로 결정하고 내 디바이스 토큰을 받고 내 디바이스와 FCM 서버를 연결했을 때 내가 이해한 작동 원리를 이랬다. FCM에서 알람 타이틀 및 내용, 시간을 정한다.FCM 서버에서 내 디바이스로 알람을 보낸다. 그럼 내 디바이스에서 알람 내용이랑 시간을 설정하면 되겠네?? 라는 생각이 들었다.그래서 내가 생각..

project/ssafy 2024.11.02

[싸피 회고] 특화 프로젝트 2 - 리덕스(Redux)

1차 때 저장소를 안 쓰고 props로 다 넘겼었는데 후회되는 일 중 하나였다. 처음에는 userName 같은 간단한 것들 1, 2개만 넘겨서 가벼운 마음으로 props를 썼는데 개발을 진행하면서 다른 컴포넌트 사이 간에 넘겨야 할 요소가 점점 많아졌다. 자식 컴포넌트A - 부모 컴포넌트 - 자식 컴포넌트B(C의 부모 컴포넌트) - 자식 컴포넌트C 이런 구조에서 A -> C로 데이터를 전달해야 했을 때 정말 난감하고 멘붕이었다. 이동하는 컴포넌트가 많으니까 성능은 점점 구려지는데 불필요하게 코드가 길어질 수밖에 없었다. 그리고 userName도 여러 컴포넌트에서 많이 써서 부모에서 자식 컴포넌트로 전달할 수 있어도 저장소에 저장하자고 생각했다. 그래서 2차 프로젝트를 할 때 저장소를 꼭 쓰고 싶었다.  ..

project/ssafy 2024.11.02

[싸피 회고] 특화 프로젝트 1 - 리액트 네이티브 네비게이션

리액트 네이티브를 쓰면서 제일 처음 리액트와 차이점을 느낀 부분은 리액트 네비게이션을 쓰는 것이었다. 리액트에서는 url과 url 이름을 이용해서 필요한 페이지로 링크를 타고 이동하게 했는데 앱에서는 링크의 개념이 없어 다른 방법으로 이동해야 했다.   리액트 네이티브에서는 React Navigation을 이용해서 페이지를 이동한다. 리액트 네비게이션은 NavigationContainer를 이용해 Screen name과 component를 지정할 수 있다. 이를 통해 생성된 모든 경로 구성은 내비게이터에 props로 지정된다.  어떤 정보를 저장소에 저장하고 필요할 때 꺼내 쓴다는 게 힘들었다. A 페이지에서 B 저장소에 저장하고 C 페이지에서 B 저장소에서 꺼내 쓰는 건 알겠어. 근데 코드가 너무 복잡..

project/ssafy 2024.11.02