본문 바로가기

전체 글

전반적인 게시판 관련 로직 및 코드 리팩토링 우선 위 사진은 리팩토링 전 프론트엔드 root 디렉토리 이고 오른쪽은 리팩토링 후 간결해진 root 디렉토리이다. . . board기반의 데이터 베이스를 생성하여 게시판 의 id와 이름을 저장했다. 그리고 이젠 url에 게시판 이름을 토대로 url을 생성하는게 아닌 boardid기반으로 url을 생성하였다. . . . 이전에는 각 게시판 url페이지를 각각 렌더링을 시켰다. 왼쪽 코드를 각각 게시판 별로 14개를 만들었지만 현재는 오른쪽과 같이 nextJs의 slug를 사용하여 아주 약간만 더 길지만 14개의 파일이 하는 기능을 구현하였다. 뿌듯하다. 위 코드는 slug를 활용하여 url을 해당 url을 가져와서 로직을 수행하게 만들었다. 그리고 백엔드 단의 로직도 추가 하였다. 중요한 점으로 이전에 .. 더보기
2주차 면접 예상 질문 면접 예상 질문 - SQL에 대해서 설명해주세요. C언어와 같은 프로그래밍 언어와 어떤차이가 있나요? SQL(Structured Query Language)은 주로 관계형 데이터베이스에서 데이터를 조작하기 위한 언어로, 데이터 검색, 삽입, 갱신 및 삭제와 같은 작업을 수행합니다. SQL은 데이터베이스와의 상호작용에 중점을 두고 있으며, 데이터 정의와 조작을 위한 특수한 명령어를 제공합니다. 반면 C언어는 범용 프로그래밍 언어로, 다양한 응용 분야에서 사용되며, 시스템 프로그래밍부터 게임 개발, 웹개발 등 과 같은 응용 프로그래밍까지 다양한 영역에서 활용됩니다. - 개발자가 작성한 SQL이 어떤 과정을 통해 실행 되는지 설명해주세요. 먼저, SQL 쿼리는 데이터베이스 관리 시스템(DBMS)에 전달되어 파.. 더보기
2주차 : SQL SQL SQL(Structured Query Language)란? 구조화된 질의 언어라는 뜻으로 관계형 데이터베이스에서 사용되는 언어. 표준 SQL을 배우면 대부분의 DBMS를 사용할 수 있다. 💾SQL: DBMS에서 사용하는 언어 SQL(Structured Query Language)은 관계형 데이터베이스에서 사용되는 언어로, ‘에스큐엘’ 또는 ‘시퀄’로 읽습니다. 관계형 DBMS 중 MySQL를 배우려면 SQL을 필수로 익혀야 한다. SQL이 데이터베이스를 조작하는 ‘언어’이긴 하지만 일반적인 프로그래밍 언어(C, 자바, 파이썬 등)와는 조금 다른 특성을 갖는다. SQL은 특정 회사에서 만드는 것이 아니라 국제표준화기구에서 SQL에 대한 표준을 정해서 발표하고 있고 이를 표준 SQL이라고 한다. 하지.. 더보기
게시판 entity 생성 프론트단 상세 페이지 개발에 앞서 게시판 별로 모두 각각 개발하는건 너무나도 시간이 오래걸리고 비효율 적이라 생각하여 게시판 테이블을 만들어 각각의 id를 사용해서 slug를 활용해 보고자 한다. . . 게시판의 이름만 속성으로 가지고 있다. . . . 각각의 게시판을 enum을 사용해도 될것 같지만 차후 각각의 학교 별로 게시판을 다르게 사용할것도 가정하여 테이블을 따로 만들었다. . . . 현재 애브리타임 또한 각각의 특정 게시판과 게시글마다 아래와 같이 특정한 숫자값으로 라우팅 처리 한다. . . . 그래서 굳이 내부 로직을 자세히 뜯어 보진 안더라도 이와 비슷하게 구현을 해보고자 한다. 더보기
1주차 면접 예상 질문 면접 예상 질문 - 파일시스템과 데이터베이스의 차이점에 대해서 설명해주세요. 파일 시스템과 데이터베이스는 데이터를 저장하고 관리하는 방식에서 차이가 있습니다. 파일 시스템은 데이터를 파일과 디렉터리로 구성하여 저장하며, 데이터의 구조화된 쿼리나 복잡한 연산을 지원하지 않습니다. 반면, 데이터베이스는 구조화된 테이블로 데이터를 저장하고 SQL과 같은 쿼리 언어를 사용하여 효율적으로 데이터를 관리하고 검색할 수 있습니다. 데이터베이스는 데이터의 무결성과 보안을 강화하며, 동시 액세스와 대량의 데이터 처리에도 효과적입니다. - 데이터베이스의 특징에 대해 설명해주세요. 데이터베이스는 데이터의 무결성과 일관성을 보장하여 정확하고 안정적인 정보를 제공합니다. 또한 복잡한 쿼리를 지원하며, 여러 사용자가 동시에 접근.. 더보기
개발 진행 정리 및 차후 진행 기본적인 백엔드 API 큰틀 개발을 끝냈다. 세부적으로 가드가 트랜잭션이 안걸려 있는 API체크를 한뒤 본격적으로 프론트 단 개발을 다시 시작할 것이다. . . . 이전에 백엔드 개발을 하며 쌓인 정리 안된 데이터들을 싹 정리하고 postman도 정리를 먼저 해보자. 사용자 2명과 화면 렌더링시 필요한 건물별 게시글 몇개 빼고 모두 삭제 시켰다. 그 과정에서 아래와 같이 업데이트 및 삭제 시 관계가 연결된 테이블에 대한 설정도 각각 세팅했다. 더보기
1주차 : 데이터베이스란? 데이터베이스 기본 개념 데이터베이스(Database, DB)란? ==> 여러 사람이 공유할 목적으로 체계화해 통합, 관리하는 데이터의 집합. 컴퓨터 언어로 제어가 가능하며 앱이나 웹을 통해 공유가 가능하여 전세계 누구나 데이터베이스에 접근하고 편집이 가능하다. 데이터베이스의 특징 실시간 접근성(Real-Time Accessibility) ==> 실시간 처리에 의한 응답이 가능해야 한다. 계속적인 변화(Continuous Evolution) ==> 새로운 데이터의 삽입(Insert), 삭제(Delete), 갱신(Update)로 항상 최신의 데이터를 유지한다. 동시 공용(Concurrent Sharing) ==> 다수의 사용자가 동시에 같은 내용의 데이터를 이용할 수 있어야 한다. 내용에 의한 참조(Cont.. 더보기
OT 및 가이드 스터디 가이드 기본적으로 화상캠 기반 스터디이며 스터디는 총 2시간으로 초반 20분간은 멘토가 학습 팁, 면접팁을 공유함녀 주차별 질의 응답 시간을 갖게된다. 그이후 시간은 팀별로 zoom 소회의실로 이동하여 팀단위로 모의 면접을 진행하게 된다. 그리고 멘토들이 각 소회의실을 돌아다니며 모의면접에 참여 하면서 멘토링을 진행한다(팀 단위 모의면접 가이드 참조) 또한 매주차 학습한 내용을 블로그에 기록하는 과제가 있다(블로그 작성 과제 가이드 참조) 팀별 모의면접 가이드 목적 ==> 면접에 대한 두려움을 없애고 알고있는 지식을 상대방에게 조리있게 전달하는 연습을 한다. ==> 모르거나 애매한 부분을 유연하게 넘기는 방법을 터득한다. ==> 팀동료의 상세한 피드백을 통해 부족한 점은 보완하고 장점은 강화한다... 더보기