알고리즘 오늘은 하루 종일 알고리즘만 팠다. 오전에 코딩 테스트, 오후에는 원티드에서 진행하는 쇼미 더 코드 대회를 치렀다. 경험 삼아 한번 쳐본 거긴 하지만, 아직은 많이 멀었다는 생각이 들었다. 백준에서 문제를 12문제나 풀었다. 쉬운문제만 풀어서 그런가? 잘 풀리는 느낌이 들었다. 이제는 좀 감이 잡히는 느낌이었다. 이번 주말에는 알고리즘 공부만 집중해서 좀 더 끌어올리면, 이후에는 공부하기가 좀 더 편해질 것 같다. 최근 2주간 꽤 열심히 하긴 했다. 특히 오늘 하루동안 경험치를 거의 80점 가까이 올렸다. 현재 실버 3까지 7점만이 남았다. 다음 주까지 실버 2를 다는 게 목표였는데, 이룰 수 있을 것 같다. 7월이 끝나기 전에 골드 4 이상을 다는 게 목표다.
얼마 전 웹 프로젝트에서 메일을 통한 유저의 이메일 인증 기능을 개발했다. 이메일을 유저 아이디로 사용하기 때문에, 사용자의 이메일이 유효한지 확인하는 절차가 필요했기 때문이다. 사전 지식 및 설정 메일 시스템과 SMTP에 관한 포스팅 https://bool-flower.tistory.com/13 이메일과 SMTP 유튜브 한기대박승철교수님 채널의 컴퓨터 네트워크 제9강 이메일과 SMTP 강의를 보며 작성된 글이다. 강의를 들으면서 같이 좋을 것 같다. 최근 진행하던 프로젝트에서 메일을 통한 회원 인증 bool-flower.tistory.com 구글 SMTP 설정방법 https://hyunmin1906.tistory.com/276 [Go] Google Gmail SMTP 설정 방법 및 메일 전송 ■ SMT..
오늘부터 TIL을 조금씩 기록해보기로 했다. 지금은 26일 새벽이지만, 25일분을 기록한당. 블로그 오브젝트 3장에 대해 정리했다. 엊그제 영준이랑 스터디하면서, 다 정리가 안된 부분을 조금 더 보충해서 다시 업로드했다. CS - 알고리즘 백준 단계별 문제를 풀다 만것을 다시 풀어보고 있다. 생각보다 몰랐던 게 많았다. 문자열 문제를 3개 정도 푼 것 같다. 현재 실버 5다. 너무 낮다. 요즘 부스트코스에 모두를 위한 컴퓨터 과학이라는 강의를 보면서 기초를 다시 다지고 있다. 알고리즘 파트를 다 봤다.
개발 공부를 하면서 객체지향이라는 말을 많이 들어왔다. 듣기만 듣고, 제대로 공부해본 적이 없어서 아직까지 그 의미를 명확히 알지 못한다. 예전에 SOLID에 대해 정리하면서 책임이니, 의존이니 하는 용어의 의미도 명확하게 정리되지 않은 채로 남아있다. 조영호 님의 오브젝트를 읽으며 친구와 스터디를 진행하기로 했다. 1, 2장은 각자 읽어보기로 하고 3장부터 한 챕터씩 맡아서 포스팅한 자료를 바탕으로 서로 설명해주면서 공부해나가기로 했다. 객체지향에서 가장 중요한 것은 역할, 책임, 협력 핵심은 협력을 구성하기 위해 적절한 객체를 찾고 적절한 책임을 할당하는 과정 협력 : 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용 책임 : 객체가 협력에 참여하기 위해 수행하는 로직 역할 : 객체들이 ..
과거에는 컴퓨터 네트워크 아키텍처가 여러 가지가 존재했는데, 지금은 그 아키텍처가 인터넷으로 통일되었다. 이 인터넷의 동작을 규정 및 정의하는 규칙을 프로토콜이라 한다. 인터넷이란? A Inter-Connected Network of Networks : 네트워크(Subnet)들이 상호 연결된 네트워크 네트워크 (Network) 다양한 유형의 호스트와 스위치들을 통신 링크로 연결한 분산 시스템 호스트 (Host) 인터넷의 끝에 연결된 종단 장치(End-system) - 어떤 사용자가 어떤 프로그램을 사용하기 위한 실제 장치 PC, 서버, 스마트 폰, IoT 센서 등 종류가 여러 가지 통신 링크 (Link) 통신 장치들 간에 정보 전달 단위인 패킷을 전달하는 유, 무선 매체 패킷은 정보 전달 단위를 통칭해서..
이 글에서는 SOP, CORS, CORS 동작 방식에 대해 설명한다. 프로젝트에서 코드로 CORS 정책 설정하는 방법에 대해서는 아래 포스팅을 참고하기 바란다. Spring boot 환경에서 CORS 정책 설정하기 (Feat. Spring Security) 이번 글에서는 Spring Boot 환경에서 CORS 이슈를 경험하고 해결한 과정을 정리했다. 혹시 CORS를 모르거나 관련된 배경지식에 대해 궁금하다면 아래 포스팅을 참고하면 좋을 것 같다. SOP와 CORS 최근 bool-flower.tistory.com SOP (Same Origin Policy) 어떤 origin에서 불러온 문서 또는 스크립트가 다른 출처에서 가져온 리소스와 상호작용하는 것을 제한하는 보안 방식 여기서 origin은 출처를 의미..
인터넷 이메일 시스템 구조 시스템 구성 요소 User Agent - 사용자 장치에서 메일 작성, 읽기 관리 기능 수행 Mail Server - 다수 사용자들의 메일박스 관리, 메일 송, 수신 제어 SMTP - Mail Server 간 통신을 지원하는 메일 전송 프로토콜 User Agent와 Mail Server 정보는 메일주소에 나타난다. 메일 주소에는 Local Part와 Domain Name 영역이 나뉜다. 아래 예시를 보면 쉽게 이해할 수 있을 것이다. Local Part - 사용자 메일 박스의 이름 Domain Name - 목적지 메일 서버의 도메인 이름 Local Part @ Domain Name ex) inhan1009 @ naver.com 이메일 전송 과정 송신자 UA에서 메일 작성 후 메일..
Comparator와 Comparable는 자바로 알고리즘 문제를 풀다 보면 반드시 접하게 된다. 나도 최근 알고리즘 공부를 진행하면서 이 인터페이스들을 구현할 필요가 있었고, 아직 완전히 숙지하지 못한 것 같아 정리해본다. 정렬 어떤 문제에서는 임의로 클래스를 생성해서 객체 간의 값을 비교할 수 있도록 정렬 기준을 정의할 필요가 있다. 이때 사용하는 것이 이 글의 주제인 Comparator 인터페이스와 Comparable 인터페이스이다. 보통 자바에서는 아래 코드로 배열 또는 리스트를 정렬한다. Arrays.sort(arr); Collections.sort(list); 자바에서 정렬은 특별한 정의가 되어 있지 않으면 오름차순을 기준으로 한다. Comparable Comparable 인터페이스는 comp..