본문 바로가기
728x90
728x90

전체 글62

[React][NFasT 프로젝트] mainpage 처음부터 다시 만들어보기 1 계기 NFasT 프로젝트를 다시 복습하며 처음부터 새로 만들어보기로 했다. 다시 만들어보는 이유는 첫째, 컴포넌트의 사용과 상태관리를 다시 복습하고 싶었고 둘째 코드 리팩토링을 하기 위해서다. 그리고 마지막에 시간이 없어서 반응형으로 만들어보지 못했는데 반응형으로 구현하는 것도 추가해보려한다. 그리고 redux 폴더 구조를 더 편리하게 짤수는 없을까 검색해본 결과 Ducks Pattern을 발견했는데 기존 ActionCreator,reducer,type이 계속 한벌씩 생성되는걸 한 묶음으로 모듈화 하여 관리하는 패턴이다. 깔끔하다고 해서 이번 기회에 적용해보기로 했다!! NFasT 프로젝트를 진행하는 동안 느꼈던건 상태관리가 중요하고 어렵다는 것이다. 컴포넌트에 속한 state가 변화할 때마다 props.. 2023. 12. 11.
리액트 폴더 구조 이해하고 정리하기 [React][NFast 프로젝트] 싸피에서 진행했던 프로젝트들 중 React 언어를 사용했던 NFast와 RealCart를 회상하며 리액트에서의 폴더 구조를 정리해보고자한다. 같이 협업하는 프론트엔드끼리 폴더 컨벤션을 정해놓는게 의사소통에 매우 유리해지니 폴더 구조를 필히 알아놔야한다고 생각한다. React 폴더 구조 NFasT 프로젝트에서의 React 폴더 구조 아래는 NFasT에서의 React 폴더 구조이다. 일단 큰 구조를 보자 node_modules 현재 프로젝트에 포함된 라이브러리들이 설치되어있다. 보통 깃 저장소에 올릴때는 함께 올리지 않는다. public 컴파일이 필요없는 파일들이 위치한다. 절대경로로 불러올 수 있다.index.html과 같은 정적인 파일들이 포함되는 곳. src 앱이 컴파일 될 때 사용하는 모든 것. 개발.. 2023. 12. 5.
우선순위큐(Priority Queue) [자료구조] ( 프로그래머스 LV2 .더맵게) https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 자 이제 Queue는 아는데 위 문제와 같이 일정 기준으로 정렬을 계속해서 해줘야 하는 경우(우선순위가 존재하는 경우) Priority Queue를 써주면 더 편리하게 코드를 짤 수 있다. 우선순위 큐(Priority Queue) Queue는 부가적인 기능 없이 오직 먼저 들어온 데이터가 먼저 나가는 First In First Out (FIFO) 구조로 되어있다. 하지만 우선순위 큐는 들어간 순서.. 2023. 12. 5.
탐욕 알고리즘 Greedy Algorithm [문제해결전략] ( 프로그래머스 요격 시스템) 탐욕 알고리즘(Greedy Algorithm)이란? 현재 상태에서 최선의 선택을 하며 최종적인 해답에 도달하는 방법이다. 탐욕 알고리즘 문제를 해결하는 단계 1. 선택 절차 : 현재 상태에서의 최적의 해답을 선택한다. 2. 적절성 검사 : 선택된 해가 문제의 조건을 만족하는지 검사한다. 3. 원래의 문제가 해결되었는지 검사하고 해결되지 않았다면 선택절차로 돌아가 위 과정을 반복한다. 탐욕 알고리즘은 요격시스템을 풀면서 알게되었다. 처음에는 도통 어떻게 푸는지 몰랐는데 어떻게 푸는지 알게되면 그때부터 쉽게 풀리는 듯 하다. 프로그래머스 - 요격 시스템 https://school.programmers.co.kr/learn/courses/30/lessons/181188 프로그래머스 코드 중심의 개발자 채용. .. 2023. 12. 2.
[나는 SSAFY, 기사는 계속된다] 프롬프트는 무엇인가? 환상일기 프로젝트를 하는데에 있어서 중요한 부분을 차지했던 프롬프트 연구! 환상일기는 키워드를 입력하면 그 키워드가 들어간 재미있는 이야기를 제공하는 서비스였기에 키워드를 다루는 프롬프트가 중요했습니다. 그렇다면 프롬프트는 무엇일까요 2023. 11. 25.
[app][Android] 안드로이드 4대 컴포넌트 ( Activity, Service, Broadcast Receiver, Content Provider ) 안드로이드의 4대 컴포넌트 4대 컴포넌트는 안드로이드앱의 필수적인 기본 구성요소이다. 각 구성요소는 사용자가 앱에 들어올 수 있는 진입점이다. 각 유형은 또렷한 목적을 수행하고 각자 나름의 생명주기가 있어 구성요소의 생성 및 소멸 방식을 정의한다. Intent 4대 컴포넌트는 인텐트를 통해 서로 상호작용을 할 수 있다. intent란 컴포넌트를 수행하기 위해 시스템에 넘기는 정보이다. 즉, 실행하고자하는 컴포넌트 정보를 담은 intent 구성 -> 시스템 -> intent 정보를 통해 그에 맞는 컴포넌트를 실행하게된다. 안드로이드는 컴포넌트 기반 구조이고 이때 intent에 의해 내부적으로 개발자가 Activity와 같은 클래스들이 각 목적을 동작하게 된다. 컴포넌트의 종류 1 . 액티비티 (Activi.. 2023. 11. 22.
[app][Android] 안드로이드 액티비티 생명주기 안드로이드 액티비티 생명주기 Activity 안드로이드 4대 컴포넌트 중 하나이고 가장 기본이 되는 구성요소이다. 컴포넌트 중에서 UI와 가장 밀접한 관련을 가지고 있기 때문이다. 하루일과를 마치고 침대에 누워 유튜브를 눌렀다. 폰 중앙에 유튜브 로고가 뜨며 다음으로 실행되었다. 너덜트 채널을 감상하며 웃고있었다. 동기부여영상이 재밌었다. 그 순간 미국에 있는 언니에게 카톡이 왔다. 언니의 카톡을 보기위해 유튜브 앱을 나와 카톡으로 이동했다. 여기서 액티비티가 크게 세개 존재한다. 처음 실행했을때 나오는 로고화면 유튜브 첫화면 및 영상화면 카카오톡 채팅 화면 이런 액티비티는 생명주기를 갖는다. 유튜브 앱을 나와 카톡으로 이동했을 때 유튜브와 카톡의 액티비티는 각자의 생명주기에 따라 호출되는 함수들이 있다.. 2023. 11. 17.
HashSet [자료구조] https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제를 풀면서 내가 이제까지 안 지식으로 풀기 어렵다는 생각이 들었다. 이제까지 ArrayList, Stack, HashMap , replaceAll 정규식 등 문제를 풀어가면서 새로운 자바 클래스들을 공부하고 그 도구를 활용해서 알고리즘을 풀었다. 하지만 이 문제는 안풀리는것이다 ㅠㅠ 그래서 결국 다른 사람들이 어떻게 풀었는지를 확인했더니 대부분 HashSet으로 풀었다. 아직 그에관한 지식.. 2023. 11. 15.
StringBuilder [자바] (프로그래머스 -코드 처리하기) https://school.programmers.co.kr/learn/courses/30/lessons/181932 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 일단 내가 푼 방법 class Solution { public Stack stack = new Stack(); public String solution(String code) { String answer = ""; boolean modeZero = true; for(int i=0;i 2023. 11. 3.
728x90
728x90