개발 팁
-
함수개발 팁 2022. 1. 13. 19:47
작게 만들어라 함수는 작을 수록 좋다 블록과 들여쓰기 조건문 및 반복문에 들어가는 블록은 한 줄이어야 한다. 중첩 구조가 생길 만큼 함수가 커져서는 안된다는 뜻 그래야 읽고 이해하기 쉬워진다. 한 가지만 해라 함수는 한 가지만 해야한다. 다른 표현이 아니라 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 함수다. 함수 당 추상화 수준은 하나로 함수가 한 가지 작업만 하려면 함수 내 모든 문장의 추상화 수준이 동일해야 한다. 한 함수 내에 추상화 수준을 섞으면 코드를 읽는 사람이 헷갈린다. 코드는 위에서 아래로 이야기처럼 읽혀야 좋다. 좋은 함수는 위에서 아래로 읽으면서 함수 추상화 수준이 한 단계씩 낮아진다. ex)TO 설정 페이지와 해제 페이지를 포함하려면,설정 페이지를 ..
-
의미 있는 이름개발 팁 2022. 1. 10. 22:54
클린 코드의 첫 장은 의미 있는 이름을 짓는 것으로부터 시작한다. 개발을 진행하며 발생한 수없는 버그와 어떻게 하면 좀 더 효율적인 알고리즘을 짤 수 있을까하는 고민으로 고통받아왔던 사람이라면, 고작 이름을 잘 짓는 것이 무슨 대수냐고 반문할 지 모르겠다. 하지만 내 경험에 의하면 의미없는 이름을 짓는 것이 개발을 진행하는데에 있어서 꽤 큰 장애물이 되는 것을 알기에 한 번쯤 읽어본다면 도움이 될 것이라고 생각한다. 그러나 책의 모든 내용을 옮기는 데에는 시간이 걸리기 때문에, 내가 공감한 내용만 가볍게 추려보려고 한다. 의도를 분명히 밝혀라 -변수나 함수,클래스 이름을 지을 때에는 주석이 필요없을 정도로 의미를 명확하게 전달하는 이름이 좋다. -의도가 드러나는 이름을 사용하면 코드의 이해와 변경이 쉬워..
-
구름 IDE에서 Gradle build가 느릴 경우 해결 방법개발 팁 2020. 12. 19. 21:52
구름 IDE에서 처음 리눅스 환경으로 스프링부트 프로젝트를 실행하는데,실질적으로 개발하기에는 빌드 속도가 너무할 정도로 느리다. 1분 40초는 개발자에게는 너무한 시간이다. 시행착오를 거듭하다가, 이 속도의 원인이 Gradle의 느린 빌드 속도에 있다는 것을 알게 되었다. 그리고 터미널에 간단한 명령 하나만 입력하면 해결할 수 있다. touch ~/.gradle/gradle.properties && echo "org.gradle.daemon=true" >> ~/.gradle/gradle.properties 위 명령어를 입력하고 난 뒤 gradle build 명령어를 추가로 입력하면 세팅이 완료된다. 다시 한 번 스프링 부트 프로젝트를 실행해보자. 1분 40초나 걸리던 Gradle build가 고작 5초(..
-
[아이패드로 코딩하기] 구름 IDE에서 Spring Boot 프로젝트 생성하고 공유하기개발 팁 2020. 12. 19. 19:48
아이패드에서 구름 IDE를 사용해 현재 개발 중이던 프로젝트를 깃허브에서 내려받아 바로 진행하려고 하였으나, 도중 만났던 오류들과 이러한 오류들을 피해 내가 찾아낸 방법들을 공유하고자 한다. 처음 시도했을 때는 Github에 올려져 있던 내 프로젝트를 그대로 내려받는 방법을 선택하였다. 그러나 정작 내려받고 나서 실행시켜보니, intellij에서는 잘만 실행되던 내 프로젝트가 막상 구름 IDE에서 실행시켜보니, 빌드가 안되는 현상이 목격되었다. 원인을 살펴보니, 현 Gradle 버전이 스프링부트 플러그인 요구 사항에 맞지 않는다는 것이었다. 그래서 좀 더 높은 버전의 Gradle을 사용하고자 업데이트를 진행. 그러나 결과는 실패.아마도 어떤 알 수 없는 문제에 의해 파일 다운로드가 실패한 것으로 보인다...
-
[아이패드로 코딩하기] 구름 IDE 소개개발 팁 2020. 12. 19. 17:33
최근에 아이패드에서 사용할 수 있는 쓸만한 IDE로는 Pythonista가 있지만, 파이썬 밖에 쓰지 못하기 때문에 따로 내가 개발을 진행할 만한 온라인 IDE가 없나 생각해보다가, 요 근래 있어서 유명해진 구름 IDE에 관심을 가지게 되었다. 도커 기반의 컨테이너로 사용자가 직접 개발 가능한 환경을 초기에 최대 5개까지 생성할 수 있게 해주고, 꽤나 다양한 언어를 지원한다. 나는 이 구름 IDE를 현재 개발 중인 어플의 서버를 개발하는 데에 이용할 계획이다. 우선은 시험 삼아 첫 프로젝트를 생성해보았다. 스프링부트 Gradle로 생성된 프로젝트이다. 우선은 PC 환경에서의 모습이다. 일반적인 IDE 화면과 크게 다를 것이 없어보인다. 프로젝트를 실행하려면 우측 하단의 재생 버튼을 눌러 명령을 실행하면 ..
-
[개발 팁] Vim 에디터란 무엇인가?개발 팁 2020. 11. 17. 21:55
최근에 즐겨보게 된 유튜브 채널 중에 얄코-얄팍한 코딩 지식이라는 채널이 있다. 설명도 아주 친절하게 잘해주는 건 물론이고, 도중에 간간히 유머도 녹아있어 초보자들이 입문으로 접하기에 아주 좋은 채널이라고 생각한다.이 채널의 동영상들을 시간 가는 줄 모르고 하나씩 보다가 Vim 에디터에 대한 소개 영상이 눈에 들어 왔다. Vim. AWS 원격 접속 시 환경 세팅을 하는 데에서 잠깐 봤던 녀석이다. 리눅스와 같은 CLI 환경에서 사용되는 구닥다리 유물 쯤으로 생각하고 있었으나, 얄코의 소개 영상을 보고 생각이 조금 달라졌다. CLI 환경에서만 즐겨 사용되는 것이 아닌, GUI 환경에서도 Vim을 고집하는 사람들이 있다지 뭔가. 기존에 익숙해진 방식에서 벗어나기 어려워하는 괴짜 같은 개발자가 아닌가 생각했으..
-
[아이패드로 코딩하기] 아이패드에서 파이썬 코딩하기 - Pythonista 소개개발 팁 2020. 11. 14. 18:29
최근 출퇴근 길에 아이패드로 백준 알고리즘 문제를 한번 풀어보고 싶어 스마트폰 핫스팟을 켜고 백준에 접속해서 코딩을 해보니, 여간 불편 한 것이 아니었다. 출퇴근 시간대라 사람이 많이 몰려 인터넷 속도는 기가 막히게 느릴 지경이었고, 백준의 제출 란은 IDE가 아니기에 코딩하기에 좋은 환경은 아니었다. 그래서 나름의 대안을 찾아보다가 Pythonista라는 어플을 발견했다. 앱스토어에 들어가 보면 이 어플에 대한 찬사도 자자하다. 나름대로 평가가 좋은 어플인 것 같아서, 12,000원의 돈을 주고 바로 다운로드 받아 직접 코딩을 해봤다. 직접 사용해보니, 사람들이 입을 모아 칭찬하는 것에는 다 이유가 있는 듯 하다. 내가 사용해보면서 느꼈던 장접들을 꼽아보자면 다음과 같다. 1.오프라인으로도 컴파일해서 ..