본문 바로가기

분류 전체보기166

클린코드 8장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 8장 경계 때로는 사내 다른 팀이 제공하는 컴포넌트를 사용한다. 어떤 식으로든 이 외부 코드를 우리 코드에 깔끔하게 통합해야만 한다. 외부 코드 사용하기 Map 같은 경계 인터페이스를 이용할 때는 클래스나 클래스 계열 밖으로 노출하지 않도록 주의한다. 또한 map 인스턴스를 공개 api의 인수로 넘기거나 반환값으로 사용하지 말자. 그러면 map 인터페이스가 변하더라도 나머지 프로그램에는 영향을 미치지 않는다. 경계 살피고 익히기 때로는 우리 버그인지 라이브러리 버그인지 찾아내느라 골치를 앓는다. ...곧바로 우리쪽 코드를 작성해 외부 코드를 호출하는 대신 먼저 간단한 테스트 케이스를 작성해 외부 코드를.. 2022. 9. 16.
클린코드 7장 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 7장 오류 처리 오류 처리는 중요하다. 하지만 오류 처리 코드로 인해 프로그램 논리를 이해하기 어려워진다면 깨끗한 코드라 부르기 어렵다. 오류 코드보다 예외를 사용하라 if 문으로 오류를 하나하나 잡기보다는, try-catch로 묶어서 처리하자 Try-Catch-Finally 문부터 작성하라 예외에서 프로그램 안에다 범위를 정의한다는 사실은 매우 흥미롭다. 어떤 면에서 try 블록은 트랜잭션과 비슷하다. 미확인 예외를 사용하라 아주 중요한 라이브러리를 작성한다면 모든예외를 하나하나 잡아야 하지만...일반적인 애플리케이션은 의존성이라는 비용이 이익보다 크다. 확인된 예외: 컴파일 과정에서 에러가 나므로 .. 2022. 9. 15.
라인 2022 상반기 필기테스트 후기 코테가 떨어졌을 것이라고 생각해서 필기테스트를 대비하고 있지 않았는데 코테 합격 연락을 받았다. 준비할 시간이 이틀 정도 있었다. 필기테스트 보는 건 처음이어서 인터넷에서 라인 필기테스트 후기 글을 빡빡 긁어모았다. 전공 수업에서 배운 것들이 나온다는 걸 알고 수업 들으면서 정리했던 자료, cs 면접 대비 깃허브 글, 정처기 자료등등을 보며 벼락치기했다. 시험은 90분동안 이루어졌다. 문제 수는 34문제였나 그랬다. 4시간동안 봤던 프로그래머스 sk 2차 코테를 보면서도 지치진 않았는데, 라인 필기는 머리를 너무 썼는지 60분이 넘어가자 힘들다는 생각이 들었다. sk 2차코테는 머리를 안써서 탈락했나?ㅋㅋ 범위는 진짜 온갖 곳에서 나왔다. 네트워크, 데이터베이스, 운영체제, 알고리즘 등등.. 문제 유형은.. 2022. 9. 15.
[cs 정리] 알고리즘 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. 정렬 알고리즘의 종류와 개념 선택 정렬 정렬되지 않은 부분을 쫙 돌면서 제일 작은애(혹은 제일 큰 애)를 선택해서 위치 바꾸기. 시간복잡도는 최선의 경우 최악의 경우 모두 O(n^2) 버블 정렬 앞에서부터 둘씩 비교해서 큰 애를 뒤로 보낸다. 한 바퀴 돌 때마다 가장 큰 애가 맨 뒤로 가게 된다. 시간복잡도는 최선의 경우 최악의 경우 모두 O(n^2) 버블 정렬 같은경우엔 최선의 경우를 O(n)까지 줄이도록 개선하는 방법이 있다. 한바퀴돌았는데 스왑이 한번도 일어나지 않으면 탈출하는 것. 한바퀴(n)돌았는데 다 정렬되어 있는 상태라면 거기서 탈출이 가능할 것이다. Repeat until no swaps.. 2022. 9. 15.
[cs 정리] 개발 상식 1. Rest API 란 무엇인가? REST api는 REST의 특징을 기반으로 만들어진 api를 의미합니다. 여기서 REST란,자원(Resource)을 이름으로 구분하여 해당 자원의 상태를 주고 받는 모든 것을 의미합니다. 즉 어떤 자원에 대해 CRUD 연산을 수행하기 위해 URI에 HTTP Method를 사용하여 요청을 보내면, 자원이 특정한 형태로 반환되는 것이 REST의 개념! 🔎 CRUD 연산이란? 기본적인 데이터 처리 기능인 Creat, Read, Update, Delete를 묶어서 일컫는 말. 🔎 REST? Representational State Transfer의 약자 REST의 구성 요소 자원: HTTP URI 행위: HTTP Method(Get, Post, Put 등등...) 표현: C.. 2022. 9. 15.
get과 post의 차이점 이 포스트는 2021.12~2022.09 기간동안 벨로그에 작성한 글을 티스토리에 옮겨 적은 것입니다. get과 post는 사실 여러번 써봤다. 하지만 둘의 차이점은 잘 모르고 다른 코드 참고하면서 그냥 막 썼던 것 같다.🙄 rest api를 공부하다가 마침 생각이 나서 같이 정리해본다. GET의 특징 정보를 읽기 위해 쓰는 메서드 캐싱이 가능하다 브라우저 히스토리에 기록이 남는다 길이 제한이 있다. url에 데이터가 노출되기 때문에 중요한 정보를 다루면 안된다. 멱등이다. 🔎멱등이란? 멱등성(idempotent)은, 연산을 여러 번 적용해도 결과가 달라지지 않는 성질을 말한다. POST의 특징 리소스를 생성/업데이트하기 위해 서버로 데이터를 보낼때 쓰는 메서드 캐싱이 불가능하다 브라우저 히스토리에 기록.. 2022. 9. 15.
반응형