[Algorithm Strategies] 1-3. 코딩과 디버깅
·
Reference/알고리즘 문제 해결 전략
구종만님의 "프로그래밍 대회에서 배우는 알고리즘 문제 해결 전략"을 기반으로 공부한 내용입니다. 📕 목차 1. 코딩의 중요성 2. 좋은 코드를 짜기 위한 원칙 3. 자주 하는 실수 4. 디버깅과 테스팅 5. 변수 범위의 이해 6. 실수 자료형의 이해 1. 코딩의 중요성 사람들을 가르치다보면, 본인이 코테를 못하는 이유가 알고리즘과 자료 구조에 대한 지식이 부족해서라고 잘못 생각하는 사람들이 많다. 물론, 많이 안다는 것은 유용하고 때론 중요하고 강력한 알고리즘이 존재하긴 하지만, 과연 그게 가장 큰 문제라고 묻느냐면 난 아니라고 생각한다. 제 아무리 로직을 머리에 꿰고 있다고 해도 그것을 구현하는 "구현력"은 별개다. 그리고 구현 과정에 있어서, 어떤 식으로 코드를 작성하는지도 천차만별이고 같은 로직을 ..
[Clean Code] 2. 의미 있는 이름
·
Reference/CleanCode
📕 목차 1. 의도를 분명히 밝혀라 2. 그릇된 정보를 피하라 3. 의미 있게 구분하라 4. 발음하기 쉬운 이름을 사용하라 5. 검색하기 쉬운 이름을 사용하라 6. 인코딩을 피하라 • 헝가리식 표기법 • 멤버 변수 접두어 • 인터페이스 클래스와 구현 클래스 7. 자신의 기억력을 자랑하지 마라 8. 클래스 이름 9. 메서드 이름 10. 기발한 이름은 피하라 11. 한 개념에 한 단어를 사용하라 12. 말장난을 하지 마라 13. 해법 영역에서 가져온 이름을 사용하라 14. 문제 영역에서 가져온 이름을 사용하라 15. 의미 있는 맥락을 추가하라 16. 불필요한 맥락을 없애라 1. 의도를 분명히 밝혀라 좋은 이름을 지으려면 시간이 걸리지만, 좋은 이름으로 절약하는 시간이 훨씬 많다. 변수나 함수 그리고 클래스 ..
[Effective-Java] Chapter7 #42. 익명 클래스보다는 람다를 사용하라
·
Reference/Effective-Java
💡 익명 클래스는 (함수형 인터페이스가 아닌) 타입의 인스턴스를 만들 때만 사용하라 📌 As-is. 익명 클래스가 세상을 지배하던 시기 예전에는 자바에서 함수 타입 표현을 위해 추상 메서드를 하나만 담은 인터페이스 또는 드물게 추상 클래스를 사용했다. 이러한 인터페이스를 함수 객체(function object)라 하며, 특정 함수나 동작을 나타내는데 사용 JDK 1.1이 등장하면서 함수 객체를 만드는 주요 수단은 익명 클래스(Item24)였다. public class Main { public static void main(String[] args) { List words = Arrays.asList("Hello", "World", "Java", "Lambda", "Stream"); // 람다식을 사용하지..
[Docker] What is Docker?
·
DevOps/Docker & Kubernetes
포스팅 작성하다가 도중에 한 번 날려먹어서 멘탈이 약간 흔들렸다..두 번 공부하고 좋지..^^ 📕 목차 1. What is Container? 2. 기본적인 Docker 사용법 1. What is Container Docker는 Container라는 경령 단위로 애플리케이션을 실행하는 기능을 제공하는 플랫폼이다. 빌드 서버, 테스트 환경, 운영 환경까지 모든 환경이 Docker로 동작할 수 있다. 📌 Cloud Environment 애플리케이션의 클라우드 환경 이주는 서버, 스토리지, 네트워크, 전원을 모두 Microsoft나 Amazon, Google에 맡겨버릴 수 있다. 전 세계에 존재하는 글로벌 데이터 센터에 우리의 애플리케이션을 배포하여 무제한의 확장성을 누릴 수 있고, 새로운 환경에 애플리케이션..