본문 바로가기

개발일기

2022 상반기 개발일기 상반기라고 하기도 뭐한게 벌써 8월 마지막 주다;ㅎㅎ 드디어 이직을 했다! 꿈꾸던 회사라 감회가 새롭다 몇번이나 서류도 쓰고, 시험까지 봤었던 회사라 더더욱...! 내가 판교에 있을줄이야....... 대학교때 개발자라면 판교입성은 해야지ㅋ 하다가ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ현실의 벽에 판교쪽은 쳐다도 안보겠다며 광화문에 자리를 잡았었는데... 드디어 판교에 있는 직장을 다닌다......😎 급 모든 상황이 바뀌다 보니 입사 전에도 스트레스를 많이 받고 긴장을 했었다 지금? 계속 긴장중ㅠㅠㅠㅠ 부족함이 너무나 느껴지고 나중에 내가 왜 그런 질문을 했지 하고 이불찰 때도 있었음...ㅎㅎㅎ.. 모르는거 계속 공부해야지 해놓고 출퇴근 시간이 길어지다보니 전-혀 보지 못했다. 또 업무를 정말 간단한걸 주시는데도 내.. 더보기
스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (~100p) 스프링부트에서 JPA로 데이터베이스를 다뤄보자! ORM이란 Object Relational Mapping (객체지향매핑) MyBatis는 ORM이 아닌 SQL Mapper. ORM은 객체를 매핑하는 것이고, SQL Mapper는 쿼리를 매핑합니다. 예전 : Spring & MyBatis 최근 동향 : Spring Boot & JPA SQL에 신경써야할 것이 너무 많아짐 관계형데이터베이스는 어떻게 데이터를 저장할지에 초점이 맞춰져있음. 객체지향프로그래밍은 기능과 속성을 한 곳에서 관리하는 기술. 객체를 데이터베이스에 저장하려하니 문제 발생 => 페러다임 불일치. 더이상 SQL에 종속적인 개발을 하지 않기 위해 JPA 사용 JPA는 인터페이스로서 자바 표준명세서. 인터페이스를 사용하기 위해서는 구현체가 필요.. 더보기
스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (~77p) * 테스트 코드에 대해 공부해보기 TDD란? - 테스트가 주도하는 개발 - 테스트 코드먼저 작성하는 것 부터 시작 1. 항상 실패하는 테스트를 먼저 작성하고(RED) 2. 테스트가 통과하는 프로덕션 코드를 작성하고(GREEN) 3. 테스트가 통과하면 프로덕션 코드를 리팩토링합니다.(REFACTOR) 단위테스트란? - TDD의 첫번째 단계인 기능단위의 테스트 코드를 작성하는것을 말함 테스트코드의 작성이유? - 초기에 문제 발견하도록 도와줌 - 기능에 대한 불확실성을 감소시킬 수 있음 - 단위테스트는 시스템에 대한 실제문서를 제공함(단위테스트 자체가 문서로 사용가능) - 나중에 코드를 리팩토링하거나 라이브러리 업그레이드 등에서 기존 기능이 올바르게 작동하는지 확인 가능 기존 기능이 잘 작동되는것을 보장해주는.. 더보기
스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (~49p) - svn에서 깃으로 전환되어 가는중 - 깃에서 원격 저장소 역할을 하는 서비스 1. 깃허브 2. 깃랩 프로젝트와 깃허브를 연동 인텔리제이에서 Action 창열기 : ctrl+shift+ A => share project on github .idea 디렉토리는 커밋하지 않는다. => 인텔리제이에서 실행시 자동으로 생성되는 파일들이기 때문 .idea 폴더를 앞으로의 모든 커밋 대상에서 제외되도록 처리히는것 : .gitignore 파일 사용 .ignore 플러그인사용 - 파일 위치 자동완성 - ignore 처리 여부 확인 - 다양한 ignore파일 지원(.gitinore, .npmignore 등) 인텔리제이에서 깃 커밋 창 열기 : ctrl+ k 인텔리제이에서 생성 목록열기 : alt + insert 커밋하.. 더보기
스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (~39p) 개발 일기 마냥 쓰기로 결심 - 인텔리제이 설치완료 gradle 프로젝트를 스프링부트 프로젝트로 변경 - build.gradle 파일을 수정 * Gradle 이란? : Groovy를 이용한 빌드 도구 (다른 빌드 도구들: maven(pom.xml), Ant가 있다) : 다른 빌드 도구들의 단점을 보완함 * 책에 나왔던 build.gradle buildscript { ext{ springBootVersion = '2.1.7 RELEASE' } repositories { mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } // .. 더보기