반응형
[개발도서]프로그래머 열정을 말하다 (채드 파울러)
독서/📚2024. 5. 2. 11:33[개발도서]프로그래머 열정을 말하다 (채드 파울러)

목차에서* : 다시 읽어 보고 싶은 장** : 스스로 개선 되었으면 싶은 장 3장_코딩만으로는 이제 충분하지 않다이제 자신의 시간을 투자할 사업 분야에 대해 생각할 시간이다. 실천하기1. 비즈니스 담당자와 점심 약속을 잡으라. 담당자들이 일을 어떻게 하는지 이야기를 나누라. 일과 대해 자세히 질문하라. 이야기 나누는 동안 그 일을 하고 싶은 포부가 생기면 무엇을 배워야 하는지, 무엇을 바꿔야 하는지 질문하라. 기술이 그들의 일에 도움이 됐는지(또는 일을 더디게 했는지) 이야기를 나누라. 그리고 이 일을 정기적으로 하라. 2. 회사 업무와 관련된 업계 잡지를 고른다. (..) 회사에는 대부분 업계 잡지 과월호 모음이 있다. 잡지를 하나하나 읽이 시작하라. 모든 내용을 이해할 수는 없겠지만 꾸준히 읽도록 한..

[Next Step] 12장 확장성 있는 DI 프레임워크로 개선
독서/📚2023. 11. 23. 13:50[Next Step] 12장 확장성 있는 DI 프레임워크로 개선

12.1 필드와 setter 메소드에 @Inject 기능 추가현재 생성자 주입만 가능한데, @Inject를 활용해서 필드(field), setter 메소드를 통해서도 DI를 할 수 있도록 기능을 추가한다 필드와 생성자 주입@Service public class MyQnaService { private UserRepository userRepository @Inject private QuestionRepository questionRepository; @Inject public MyQnaService(UserRepository userRepository) { this.userRepository = userRepository }} setter 주입@Controllerpublic cla..

[Next Step] 10장 새로운 MVC 프레임워크 구현을 통한 점진적 개선
독서/📚2023. 11. 20. 21:44[Next Step] 10장 새로운 MVC 프레임워크 구현을 통한 점진적 개선

목표✨ (p338)① 레거시 MVC프레임워크와 애노테이션 기반의 새로운 MVC 프레임워크가 동시에 서비스 가능하도록 구현② 인터페이스로 추상화 가능한 부분을 찾아 2개의 프레임워크가 공존 가능하도록 리팩토링 수행  10.1 MVC 프레임워크 요구사항 3단계10.1.1 요구사항 (p335) 아래 RequestMapping 코드를 보면 직접 요청 URL과 컨트롤러를 추가 해야 하는 불편함이 있다. 서블릿과 같이 애노테이션을 활용해 설정을 추가하고 서버가 시작할때 자동으로 매칭되도록 개선해 본다. (힌트: @Controller 애노테이션을 추가하고, 자바 리플렉션을 활용) 10.1.2 자바 리플렉션(p340)Hint① java.lang.Class API의 getConstructors(), getMethods(..

[Next Step] 9장 두 번째 양파 껍질을 벗기기 위한 중간 점검
독서/📚2023. 11. 18. 21:33[Next Step] 9장 두 번째 양파 껍질을 벗기기 위한 중간 점검

실습 프로젝트 저장소실습의 경우 처음에 fork 받았는데, 깃 허브 잔디가 심어지지 않아 기술 블로그 참고(링크)하여 저장소 설정을 변경하도록 함 jwp-basic https://github.com/slipp/jwp-basic/tree/step7-self-check GitHub - slipp/jwp-basic: 자바 웹 프로그래밍 기본 실습자바 웹 프로그래밍 기본 실습. Contribute to slipp/jwp-basic development by creating an account on GitHub.github.com자체 점검 요구사항(필수)① 로컬 개발 환경에 톰캣 서버를 시작하면 서블릿 컨테이너의 초기화 과정을 설명하라 (아래 참고) ② 로컬 개발환경에서 톰캣 서버를 시작한 후 http://loc..

[Next Step] 8장 Ajax를 활용해 새로고침 없이 데이터 갱신하기
독서/📚2023. 11. 17. 18:31[Next Step] 8장 Ajax를 활용해 새로고침 없이 데이터 갱신하기

실습 프로젝트 저장소실습의 경우 처음에 fork 받았는데, 깃 허브 잔디가 심어지지 않아 기술 블로그 참고(링크)하여 저장소 설정을 변경하도록 함 jwp-basic https://github.com/slipp/jwp-basic/tree/step4-qna-getting-started GitHub - slipp/jwp-basic: 자바 웹 프로그래밍 기본 실습자바 웹 프로그래밍 기본 실습. Contribute to slipp/jwp-basic development by creating an account on GitHub.github.com 8장 AJAX를 활용해 새로고침 없이 데이터 갱신하기- 이번 장에서는 질문 목록/상세, 답변 목록/생성/삭제 화면 및 기능 구현 후 리팩토링을 수행한다- 책에는 없는 내..

[Next Step] 7장 DB를 활용해 데이터를 영구적으로 저장하기
독서/📚2023. 11. 17. 11:24[Next Step] 7장 DB를 활용해 데이터를 영구적으로 저장하기

실습 프로젝트 저장소실습의 경우 처음에 fork 받았는데, 깃 허브 잔디가 심어지지 않아 기술 블로그 참고(링크)하여 저장소 설정을 변경하도록 함 jwp-basic https://github.com/slipp/jwp-basic/tree/step2-user-with-mvc-framework GitHub - slipp/jwp-basic: 자바 웹 프로그래밍 기본 실습자바 웹 프로그래밍 기본 실습. Contribute to slipp/jwp-basic development by creating an account on GitHub.github.com  자바 진영은 데이터베이스에 대한 접근 로직 처리를 담당하는 객체를 별도로 분리해 구현하는 것을 추천한다. 이 객체를 DAO(Data Access Object)라..

[Next Step] 6장 서블릿/JSP를 활용해 동적인 웹 애플리케이션 개발하기
독서/📚2023. 11. 16. 21:01[Next Step] 6장 서블릿/JSP를 활용해 동적인 웹 애플리케이션 개발하기

실습 프로젝트 저장소실습의 경우 처음에 fork 받았는데, 깃 허브 잔디가 심어지지 않아 기술 블로그 참고(링크)하여 저장소 설정을 변경하도록 함 jwp-basic (6.1)https://github.com/slipp/jwp-basic/tree/step0-getting-started GitHub - slipp/jwp-basic: 자바 웹 프로그래밍 기본 실습자바 웹 프로그래밍 기본 실습. Contribute to slipp/jwp-basic development by creating an account on GitHub.github.com  web-application-server https://github.com/slipp/web-application-server GitHub - slipp/web-ap..

[Next Step] 12.8 웹서버 도입을 통한 서비스 운영(p458) 정리
독서/📚2023. 11. 10. 21:35[Next Step] 12.8 웹서버 도입을 통한 서비스 운영(p458) 정리

4-1. nginx 설치 및 설정 디렉토리$ apt-get install -y nginx$ sudo service nginx start$ netstat -tnlp  서버 아이피 접속시(80포트) nginx default 페이지 확인 가능하다80/tcp 접근 되지 않을 경우 ufw 방화벽 설정 확인해보기 주요 디렉토리 - /etc/nginx/sites-available- /etc/nginx/sites-enabled  참고. 강의 https://www.youtube.com/watch?v=7GlCo6RHBns4-2. nginx 와 tomcat 서버 연동nginx 와 tomcat 연결 설정$ cd /etc/nginx/sites-availabe$ sudo vim jwp-basic# 아래 내용 작성 후 저장 - t..

[Next Step] 6.6 쉘 스크립트를 활용한 배포 자동화(p218) 정리
독서/📚2023. 11. 3. 22:22[Next Step] 6.6 쉘 스크립트를 활용한 배포 자동화(p218) 정리

요구사항-지금까지 구현한 기능을 개발 서버에 톰캣 서버를 설치한 후 배포한다-서버가 정상적으로 실행되고 있는지 톰캣 로그 파일( catalina.out )을 통해 모니터링 한다-쉘 스크립트를 만들어 배포 과정을 자동화 한다 ① 톰캣 서버 설치② 실습 코드 배포③ 톰캣 서버 로그 모니터링④ 쉘 스크립트 통해 배포 자동화  참고. 영상 자료https://www.youtube.com/watch?v=ZsiO27LeW34https://www.youtube.com/watch?v=9Rr4gMRyUtQhttps://www.youtube.com/watch?v=bzM1WL4qdoA1. 톰캣 서버 설치톰캣 디렉토리 구조 - bin : 톰캣 서버 시작/종료,  catalina.sh 옵션 설정도 가능 - logs : 톰캣 실행..

[Next Step] 3.3 원격 서버에 배포 (p84) 정리
독서/📚2023. 7. 11. 21:38[Next Step] 3.3 원격 서버에 배포 (p84) 정리

요구사항 로컬 개발 환경에 설치한 HTTP 웹 서버를 물리적으로 떨어져 있는 원격 서버에 배포해 정상적으로 동작하는지 테스트한다. 이때 HTTP 웹 서버 배포 작업은 root 계정이 아닌 배포를 담당할 새로운 계정을 만들어 진행한다. ① 계정 추가 및 sudo 권한 할당② 각 계정별 UTF-8 인코딩 설정해 한글 이슈 해결③ JDK, 메이븐 설치④ Git설치, clone 및 빌드⑤ 방화벽 설정(ufw)⑥ 소스 코드 재배포 참고. AWS 사용할 경우 아래 링크 참고 (p83)https://opentutorials.org/module/1946 참고. 영상 자료https://www.youtube.com/watch?v=dWGzApCuF9Mhttps://www.youtube.com/watch?v=N8iLAuAo-..

[도서 리뷰] 비전공자를 위한 이해할 수 있는 IT 지식
독서/📚2022. 5. 6. 12:17[도서 리뷰] 비전공자를 위한 이해할 수 있는 IT 지식

오래전 기술 블로그, 유튜브 통해 추천받아 알게 된 도서로 회사 도서관에 있길래 대여해서 읽어 보았다🤔 요약👨‍💻 신입 웹 개발자 뿐만 아니라 연관 직군에 있는 사람에게 권장하고 싶은 도서 였습니다 - (경력 기준) 이해가 쉽게 되고, 다른 사람한테 어떻게 설명하면 좋을지 가이드가 되는 도서 - 방대한 웹 개발에 대한 지식(웹, 프론트, 백엔드, DB, 서버 등)을 풀어 이해 돕기 위해 고민한 흔적이 느껴지는 도서 - 비전공자뿐만아니라 웹 개발 시작하는 주니어에게도 추천하고 싶은 도서 - 2시간 정도 가벼운 마음으로 읽기 좋은 도서 (단, 깊이는 다른 도서에서 찾길) HTML이 프로그래밍 언어가 아니라는 점입니다. HTML은 컴퓨터에게 특정 일을 시킬 수 있는 언어가 아닌 단지 브라우저가 볼 수 있는 문..

[클린코드] 1장. 깨끗한 코드
독서/📚2022. 2. 22. 22:12[클린코드] 1장. 깨끗한 코드

클린코드란 성능이 좋은 코드 의미가 명확한 코드 가독성이 좋은 코드 중복이 제거된 코드 나쁜 코드 1) 성능이 나쁜 코드 불필요한 연산이 들어가서 개선 여지 있는 코드 2) 의미 모호한 코드 이해가 어려운 코드 ( ex. 네이밍과 그 내용이 다른 코드 ) 3) 중복된 코드 비슷한 내용이 중복되는 코드 → 버그💣 발생 가능성 증가 나쁜 코드가 나쁜 이유 1) 깨진 유리창 법칙 🔳 나쁜 코드는 깨진 유리창처럼 계속 나쁜 코드가 만들어지도록 한다. 깨진 유리창 하나를 방치해 두면, 그 지점을 중심으로 범죄가 확산되기 시작한다는 이론으로, 사소한 무질서를 방치하면 큰 문제로 이어질 가능성이 높다는 의미를 담고 있다 ( 위키 백과 참조 ) 2) 생산성 저하 🕛 기술 부채를 만들어 수정을 더 어렵게 한다. ( + ..

[Spring]  Http Request에 대한 DispatcherServlet 동작과정
공부/Spring2021. 11. 13. 22:47[Spring] Http Request에 대한 DispatcherServlet 동작과정

DispatcherServlet 동작과정 @Controller 인 경우 ① Client(사용자)에서 브라우저 통해 Http Request 보내면 DispatcherServlet이 받음 ② HandlerMapping한테 지시하여 Http Request URI에 맞는 Handler(Controller)를 찾음 ③ 해당 Handler를 실행할 수 있는 HandlerAdapter를 탐색 ④ 찾은 HandlerAdapter를 사용해서 Handler Method를 실행 ⑤ 개발자가 만든 비즈니스 로직을 수행 후 View name(ex. "index")과 model (key, value 형태) 반환받음 ⑥ DispatcherServlet은 ViewResolver 에게 View name전달하여 해당 View 파일을 찾..

[네트워크] Http Method 와 Http Status Code
공부/CS2021. 11. 12. 12:14[네트워크] Http Method 와 Http Status Code

HTTP (HyperTexT Protocol) 하이퍼텍스트를 빠르게 교환하기 위한 프로토콜의 일종 즉, HTTP는 서버와 클라이언트의 사이에서 어떻게 메시지를 교환할지를 정해놓은 규칙 80번 포트를 사용하며 HTTP의 구조는 요청(Request)과 응답(Response)으로 구성 https://namu.wiki/w/HTTP HTTP Request Method 서버에 요청시 주어진 리소스에 수행하길 원하는 행동을 Method 로 나타냄 CRUD ('Create', 'Read', 'Update', 'Delete') 에 대해 Http Method를 보통 아래와 같이 구분함 Create = POST/PUT Read = GET Update = PUT Delete = DELETE GET 서버에게 특정 Resourc..

반응형
image