본문 바로가기
반응형

IntelliJ53

2. 악취나는 코드 개선하기 시리즈 - 심하게 중첩된 코드 IntelliJ 블로그에 올라온 시리즈물을 번역 & 재정리 하였습니다. 악취나는 코드 개선하기 시리즈를 계속 진행하며, 이번 포스트에서는 명백한 리펙토링을 거부하는 천진난만한 코드를 살펴 보려고 합니다. 코드 예제 자체는 매우 사소한 것이지만 실제로는 이 특정 프로젝트에서 반복적으로 발견되는 문제의 증상입니다. 즉, 코드의 중첩입니다. 이것은 loop문, if 문, 심지어 람다 표현식 또는 내부 클래스, 또는 위의 모든 것의 조합 일 수 있습니다. The Smell: Deeply Nested Code 먼저 발견한 문제있는 코드는 내부 if 문이있는 double for 루프입니다. (MappedClass의 메소드) 이 코드의 문제점은 무엇입니까? 단일 문자 변수 이름(mf, n)를 관대하게 봐줄수 있고, .. 2017. 9. 3.
1. 악취나는 코드 개선하기 시리즈 - NULL IntelliJ 블로그에 올라온 시리즈물을 번역 & 재정리 하였습니다. 리팩토링에 대한 연구 중에 저는 여러가지 패턴(냄새나는 패턴)이 계속해서 반복되는 것을 보았습니다. 이런 패턴들은 특별히 새로운 것이 하나도 없으며, 많은 책들(리팩토링, 패턴을 활용한 리팩토링)과 블로그 및 동영상 에서 이런 냄새나는 패턴들을 어떻게 다루는지 알려주고 있습니다. 하지만 저는 IntelliJ IDEA가 어떻게 당신을 도울 수 있는지 (아닐 수도 있지만) 몇 가지 구체적이고 사소한 예로 설명하고 싶었습니다. 내가 반대하려는 첫 번째 문제는 null을 사용하는 것입니다. 특히 null-check 코드가 주위에 흩어져있을 때 더욱 그렇습니다. Java 8의 Optional은 이러한 많은 문제를 해결해야 한다고 생각했습니다... 2017. 9. 2.
2017.2 버전에 추가된 기능 정리 IntelliJ 2017.2 버전에서 추가된 기능에 대한 소개가 IntelliJ 블로그에 올라와 정리하였습니다. Endpoints TabEndpoints Tab이 추가되었습니다. Run/Debug 실행시 등장하는 화면에는 이제 SpringBoot Actuator의 Beans, Health, Mapping 정보들이 같이 노출됩니다. 단, 해당 기능은 compile('org.springframework.boot:spring-boot-starter-actuator')과 같이 프로젝트에 spring-boot-starter-actuator 의존성이 포함되어있어야만 합니다. (spring-boot-starter-actuator가 없을 경우) (spring-boot-starter-actuator가 있을 경우 - He.. 2017. 8. 31.
맥북에서 오라클 사용하기 (docker + intelliJ) 보통 데이터베이스 관련 스터디나 학원의 경우 대부분이 오라클 데이터베이스를 기준으로 합니다. 하지만 저처럼 맥북을 사용하시는 분들은 오라클을 사용할 수 없어 VM머신등을 사용하는등 어려움이 많습니다. (저같은 경우 패스트캠퍼스 SQL 튜닝 캠프에서 오라클 데이터베이스를 기준으로 하여 어쩔수없이 오라클을 사용하게 되었습니다 ㅠㅠ) 그럼 이제 진행하겠습니다.0. 도커 설치도커를 기본적으로 알고 계시면 전혀 문제 될게 없지만, 모르신다 하여도 요즘은 도커 설치가 OS별로 아주 쉽게 되어있어 금방 하실수 있습니다. Docker 사이트에 접속하여 Docker For Mac 설치파일을 받아 설치하시면 됩니다. 1. 도커 컨테이너 생성 및 실행 설치가 끝나시면 터미널을 열어 컨테이너를 받아야합니다. 오라클 11g 이.. 2017. 8. 6.
IntelliJ에서 패턴으로 텍스트 교체하기 안녕하세요? 이번 시간엔 IntelliJ에서 패턴으로 텍스트 교체하기 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 문제 상황예를 들어 아래와 같이 테스트 코드가 작성되어있다고 가정해보겠습니다. 서로 다른 amount에 대해 각각 계산을 진행하는 코드입니다.헌데 요구사항이 변경되어 originAmount의 계산에 supplyAmount와 vat도 추가 파라미터로 포함되어야 합니다. 즉, .originAmount(XXX)를 .originAmount(XXX).supplyAmount(XXX).vat(XXX)로 테스.. 2017. 6. 3.
IntelliJ 디버깅 해보기 안녕하세요? 이번 시간엔 intellij의 debugging 을 간단하게 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 굉장히 기초적인 수준이지만, System.out.println으로 디버깅 하셨던 분들에게 도움이 될것 같아 정리하였습니다.주요 단축키꼭 디버깅이 아니더라도 아래 단축키 정도는 익혀두면 여러모로 쓸 곳이 많다.shift + shift : 전체 검색 (file, action 모두 검색)command + shift + a : action 검색 (설정, Refactor 등)command + shift + .. 2017. 4. 17.

728x90
반응형