HTTP 웹 서버 만들기 직접 HTTP Request, Response를 작성하다보니 HTTP Header 형식이 많이 친숙해졌다.어느정도 리팩토링이 진행된 단계에서 자바지기 박재성 님과 알게된 점, 궁금한 점에 대해 이야기를 갖는 시간을 가졌다. 기억에 남는 부분을 포스팅해본다. (제대로 기억하고 있는거겠지 ㅡㅡ?) 추가적으로, 이번에 너무 좋은 사이트를 발견했다. 1. status code 301과 302의 차이는 무엇인가? - 301은 Client단에 정보를 남겨 cookie가 남아있는한 설정된 URL로 연결된다. - 302는 서버에 웹 페이지 요청시 다른 URL로 연결시킨다. 2. HTTP stateless 특성을 보완하기 위한 방법 - 무상태 프로토콜의 단점을 보완하기 위해 polling 방식,..
10 / 28 (토) ~ 29 (일) 한국시리즈 우승까지 1승 !!! 그렇다. 이번 주말에는 지인들과 야구를 보고 시간을 보냈다. 10 / 27 (금)오늘 오전에는 Next Step의 미션을 제대로 진행하지 못했다. (금요일이라 그런가..) MVC 프레임워크 구현하는 부분을 진행하다 집중이 안되어 SLiPP에서 최근에 포비가 코드리뷰한 부분을 보기도 하다가 그냥 어제 공부했던 Servlet 내용을 정리하는데 시간을 보냈다. 오후에는 학습했던 포비와 Servlet에 대해 이야기하는 시간을 가졌다. 포비(자바지기 박재성님)의 교육 방식은 주제에 대해 피교육자가 직접 실습하면서 스스로 고민하는 시간을 갖게 한 뒤, 해당 주제에 대한 이론을 알려주고 그에 대해 QnA를 하는 형태로 진행된다. 어제 실습했던 부분..
레드마인은 이슈트래킹을 목적으로 사용하는데(JIRA가 유료이기 때문에), markdown / ckeditor 등을 지원하며 git / svn 등의 버전관리시스템과도 연동이 가능하다. project와 일감 등을 계층구조로 구성할 수 있고 하위일감, 연관 일감 등으로 구성할 수 있어 유기적인 구성이 가능하다. 그 외에 게시판, wiki, 간트차트, 파일 저장소 등의 기능들이 유용하게 사용된다.1. Prepare - Install Package1yum -y install nano zip unzip libyaml-devel zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel gcc ruby-devel gcc-c+..
10 / 22 (일)1차 미팅 회의 내용 정리레드마인 설치 (또다시 삽질..)협업 환경 구성React.JS로 영화 순위 페이지 작성Http 웹 구현 실습 리팩토링 10 / 21 (토)1차 미팅 (사업 방향, 일정 등 공유, 주요 기능사항 명세 및 개발 가능성 확인, 우선순위 토의)병문안 10 / 20 (금)HTTP 웹 구현 실습 요구사항 6 에서 삽질을 많이 한 하루였다. 템플릿 엔진에 익숙해서 POST로 값을 넘기고 처리하려고만 하다 리팩토링은 하나도 하지 못했다. 어휴 한심하다. 부족함을 많이 느낀 하루였다.다음주 월요일에 pobi가 java lambda 및 stream에 대해 강의한다고 하여 자바의 신 java8 lambda 부분을 읽어보았다.오후엔 honux의 git 강의를 통해 그동안 미묘하게 ..
10 / 14 (토)AWS Serverless Workshop : 빅데이터 분석 AWS Kinesis (Stream, Firehose, Analytics), DynamoDB, Athena를 경험해본 시간. 결국 Stream 데이터를 Kinesis에 보내는 기능과 기능들 사이사이에 데이터를 Lambda로 처리하는 작업들이 연습되어야 할 것 같다. 데이터를 어떻게 보내서 쌓고 하는 부분들(시스템 아키텍처)은 AWS에서 해결해주기 때문. 그리고 Athena가 SQL문을 지원하기에 S3에 쌓인 데이터를 편리하게 검색할 수 있다는 것이 신박했다. 10 / 13 (금)JAVA 시스템 운영중 알아두면 쓸모있는 지식들성능 이슈 관련하여 좋은 포스팅을 발견했다. 겸사겸사 자바 성능 튜닝 관련해서 좀 책을 찾아보고 있었는..
앞에서는 클라이언트의 요청 처리를 서블릿 홀로 담당하는 All-in-One 방식에 대해 살펴보았다. All-in-One 방식은 규모가 크거나 업무 변경이 많은 경우에는 유지보수가 어려워 운영 비용이 증가하게 된다. 시스템 변경이 잦은 상황에서 유지보수를 보다 쉽게하려면, 중복 코드의 작성을 최소화하고, 코드 변경이 쉬워야 한다. 이를 위해서는 객체 지향의 특성을 활용하여 좀 더 역할을 세분화하고 역할 간 의존성을 최소화하여야 한다. 그리하여 제안된 것이 MVC(Model-View-Controller) 아키텍처이다. MVC 구조에서는 클라이언트의 요청 처리를 서블릿 혼자서 담당하지 않고 세 개의 컴포넌트가 나누어 처리한다. 컨트롤러 컴포넌트의 역할은, 클라이언트의 요청을 받았을 때 그 요청에 대해 실제 업..
자바 입문서 1권 혹은 학원 기초과정을 마치고 나서 읽으면 좋을 책이다. 객체지향 개념을 잡는데에 있어 ‘객체지향의 사실과 오해’를 많이 추천받곤 했는데,이 책과 비교한 글을 읽고 우선 이 책을 먼저 접하게 되었다. “왜 이렇게 객체가 협력을 하는지 대해서 설명하기 보다 조금씩 추상화하고 코드를 정리하면서 객체의 협력을 만들어 내는 느낌이다. 처음부터 설계를 생각해내는 것과 리팩토링의 차이랄까.” [관련 블로그] 이 책의 내용을 살펴보면,1장 객체 지향에선 객체지향언어로 프로그래밍을 하면서 느끼고 접했을 개념들을, 2장 설계원칙 / DI와 서비스 로케이터는 이제부터 내가 개발하면서 지켜야할 설계 원칙들을, 그리고 마지막으로 3장 주요 디자인 패턴은 앞으로 설계하게 될 패턴들 중 자주 사용되는 패턴들을 맛..
10 / 01 (일)오후까지 잠저녁 늦게 급하게 객체지향과 디자인 패턴을 마저 읽고 정리함 9 / 30 (토)윤석찬 님과 한 뷰에 ㅎㅎ; 몸살난 몸 이끌고 다음달(코드스쿼드 수업기간)에 살 방 알아보고, AWS Serverless 실습 워크샵에도 다녀옴 집에 오자마자 잠 9 / 29 (금)형이 집에 옴 오랫만에 고스톱치다 몸살 남 9 / 28 (목)우연히 동네 도서관에서 (개발자가 반드시 정복해야할) 객체지향과 디자인 패턴을 발견조깅 9 / 27 (수)Spring 4.0 Part 1 Spring 기초 정리하다 지침 ㅠㅠ조깅 9 / 26 (화)Spring 4.0 3, 4, 6장 조깅 9 / 25 (월)이리저리 길에서 시간을 허비한 날. 운전 면허 갱신Spring 4.0 2장코드스쿼드 설명회 (너무 반가웠던..
9 / 24 (일)Spring 4.0 1~2장 9 / 23 (토)휴식 9 / 22 (금)스프링 프레임워크에 이르기까지(생각보다 '열혈강의 웹 개발 워크북'을 읽고 정리하는데 오래 걸렸다. 특히 이번주는 TIL도 꼬여버렸다. 책을 2회독하고, 정리하면서 한번 더 보았지만 아직 완전히 내 것이 아닌 거 같은..(특히 책의 후반부) 너무 많은 개념들이 레퍼런스처럼 평면적으로 늘어져있고, 특히 페이지 컨트롤러 부분은 정반합 사례들이 너무 많아 길을 잃기 일수였다 ㅠㅠ. 아직 초심자인 나에겐 아직 소화하기 힘든 주제들인 것 같다. 좀 더 공부한 후에 다시 봐야겠다.) 조깅 9 / 21 (목)웹 개발 워크북 6~8장 다시 읽기 및 정리조깅 9 / 20 (수)웹 개발 워크북 4~5장 다시 읽기 및 정리 9 / 19 ..