본문 바로가기

배운 거/항해99

[항해99] 17일차 - 주특기 입문 5

"빨래랑 설거지는 기가 막히게 했다."

 

응애, 나 애기 코더.

 

성장할 시간을 주세요..일주일만 더 조...응애...

 


머릿말 꾸미기도 지쳤다.

 

바로 배운 걸 정리해본다.

 

CS 스터디

오늘은 Array와 Array List , Linked List를 비교해보는 시간을 가졌다.

 

https://github.com/gyoogle/tech-interview-for-developer/blob/master/Computer%20Science/Data%20Structure/Array%20vs%20ArrayList%20vs%20LinkedList.md

 

GitHub - gyoogle/tech-interview-for-developer: 👶🏻 신입 개발자 전공 지식 & 기술 면접 백과사전 📖

👶🏻 신입 개발자 전공 지식 & 기술 면접 백과사전 📖. Contribute to gyoogle/tech-interview-for-developer development by creating an account on GitHub.

github.com

간단하게 보면 Array List와 Linked List의 추가/삭제 그리고 조회 속도는 그림과 같다고 볼 수 있는데

 

Array list 같은 경우 이미 기존의 배열 사이에 요소를 하나 추가해야할 때

 

이미 주어진 배열의 인덱스에 값을 덮어 씌운 후 하나의 요소를 뒤에 덧붙이는 식으로 추가를 하게된다

 

Array의 경우엔 길이를 먼저 메모리에 입력을 시켜야 하기 때문에

 

저장한 데이터에서 특정 인덱스의 값을 지우게 되면

 

비어있는 데이터가 되어버린다.

 

대충 처리하고자 하는 데이터의 추가삭제를 많으면 List, 조회를 많이 한다면 Array를 사용하자.

 

주특기 입문 과제 - 게시판 api 설계

일단은 배포까지 완료하고 제출해버렸다.

 

개인 공부 시간을 확보하려면 더 빨리 과제를 끝냈어야했는데

 

좀 아쉬웠다.

 

우선 어제의 대충 짠 Respose Entity는 Spring 내의 기능을 어떻게 써먹는 줄을 몰라서

 

그냥 대충 따라서 클래스하나 더 만들어 썼다...

 

있는 거를 쓸 줄 몰라서 하나 더 만드는 거 이게 맞나 싶은 데 

 

아무튼 내가 원하는 대로 출력되니까 된 거라고 정신승리 엔딩 해버렸다..

 

코드는 대충 이런식

 

코드가 좀 간결해졌는데 구동시간은 어쩔지 모르겠다.

 

AWS에서 배포하는 데는 어려움 없었고

 

postman과 ARC에서 제대로 응답하는 것도 확인했다.

 

아래는 제출한 명세서.

 

더보기

GET - /api/posts - 전체 게시글 목록 조회 API
Response
{
    "status": "OK",
    "data": [
        {
            "date": "2022-07-27T15:05:11.089077",
            "id": 11,
            "title": "test",
            "content": "test",
            "author": "test"
        },
        {
            "date": "2022-07-27T15:05:09.879769",
            "id": 10,
            "title": "test",
            "content": "test",
            "author": "test"
        },
        {
            "date": "2022-07-27T15:05:08.46289",
            "id": 9,
            "title": "test",
            "content": "test",
            "author": "test"
        },
        {
            "date": "2022-07-27T15:04:09.638744",
            "id": 8,
            "title": "test1",
            "content": "test1",
            "author": "test1"
        }
    ]
}

GET - /api/posts/{id} - 게시글 조회 API
Response
{
    "status": "OK",
    "data": {
        "date": "2022-07-27T15:05:09.879769",
        "id": 10,
        "title": "test",
        "content": "test",
        "author": "test"
    }
}

POST - /api/posts - 게시글 작성 API
Request
{
"title" : "test2",
"content" : "test2",
"author" : "test2",
"password" : "password"
}

Response
{
    "status": "OK",
    "data": {
        "date": "2022-07-27T15:05:09.879769",
        "id": 10,
        "title": "test",
        "content": "test",
        "author": "test"
    }
}

PUT - /api/posts/{id} - 게시글 수정 API

Request
{
"title" : "PUTtest3",
"content" : "test3",
"author" : "test3",
"password" : "password"
}

Response
{
    "status": "OK",
    "data": {
        "date": "2022-07-27T15:05:11.089077",
        "id": 11,
        "title": "PUTtest3",
        "content": "test3",
        "author": "test3"
    }
}

DELETE - /api/posts/{id} - 게시글 삭제 API
Response
{
    "status": "OK",
    "data": true
}

POST - /api/posts/{id} - 게시글 비밀번호 확인 API
Request
{
    "password":"password"
}

Response
{
    "status": "OK",
    "data": true
}

요구사항은 지켰지만 예제처럼 error number를 출력하게하지는 않았습니다.


내일은 정신차리고 공부할 수 있을까 걱정이 앞선다.

 

매일 컨디션 조절한다고 일찍 자려고하는데

 

TIL 앞에서만 서면 그냥 시간이 한시를 넘어버리니..

 

일단 오늘 하루를 이렇게 정리하면서

 

무거운 마음으로 마무리 지어본다.

 

아무것도 머릿 속에 남지않은 하루라니...

 

아쉬움이 너무 크다!

 

내일은 오늘보다 훨씬 더 나은 하루이길 바라면서

 

그럼 코바!