본문 바로가기

분류 전체보기41

Specification 이란 오늘 작성하게 될 글의 주제는 Specification 입니다. 가끔 개발 관련 글 혹은 유튜브에서 표준 스펙이라는 단어를 듣게 될 때가 많았습니다. 들을 때 마다 정확히 무엇을 뜻하는지 궁금한 적이 있었는데 오늘 그 궁금증을 해소하게 된 거 같아서 포스팅을 하려고 합니다. Specification Wikipedia A specification often refers to a set of documented requirements to be satisfied by a material, design, product, or service. Sepcification은 종종 재료, 디자인, 제품 또는 서비스가 충족해야 하는 문서화된 요구 사항 집합을 나타냅니다. 위키피디아에서 정의하고 있는 Specifictio.. 2023. 12. 6.
1727. Largest Submatrix With Rearrangements - Java 이번에 다룰 주제는 알고리즘 문제풀이 입니다. 제가 푸는 모든 문제들을 기록하진 않고, 풀면서 기록이 필요하다 싶은 문제들만 정리해서 기록하려고 합니다! 해당 문제가 기록이 필요하다고 느낀 이유는 문제 해결을 위한 접근 방식을 기록해보고, 해당 접근 방식의 문제점과 해당 문제점을 해결하기 위해 어떤 접근 방식을 생각해 내야 하는지를 기록함으로써 제가 어려워 하는 부분들을 찾아낼 수 있기 때문입니다. 이제 문제를 살펴보겠습니다. 문제 https://leetcode.com/problems/largest-submatrix-with-rearrangements/ Largest Submatrix With Rearrangements - LeetCode Can you solve this real interview qu.. 2023. 11. 26.
IoC - 제어의 역전에 대해서... 이번 포스팅의 주제는 제어의 역전입니다. 스프링을 사용하다 보면 제어의 역전/의존성 주입 이라는 단어가 항상 눈에 띕니다. 그리고 프레임워크와 라이브러리의 차이가 제어의 역전에 있다는 문장을 접해본 적이 있었습니다. 뭔가 사용하는 데 있어서 다를게 없는 거 같은데 제어의 역전이라는 차이가 있다는 것에 흥미가 생겼습니다. 그래서 이번 주제는 제어의 역전이고, 개념을 최대한 정확하게 이해하고 정리해 볼게요! IoC - 제어의 역전이란... 우선 여기서 제어의 흐름이라는 개념에 대해 알고 갈 필요가 있습니다. 제어의 흐름은 일반적인 프로그램의 흐름이 아닌 그와 반대되는 흐름을 가지는 것으로 볼 수 있습니다. 좀 더 자세히 살펴보겠습니다. 일반적인 프로그램의 흐름은 대개 이렇게 흘러 갑니다. Java에서는 ma.. 2023. 9. 11.
프로젝트 중복 제거 1 - 인터페이스를 이용한 공통 작업 추출 이번 포스팅 주제는 현재 진행중인 프로젝트 리팩터링 입니다. 리팩터링은 프로젝트 코드의 내부 동작은 그대로! 어떤 코드 외적인 요소들을 좀 더 가다듬는 작업입니다. 리팩터링의 주된 목적은 가독성, 유지보수성 등 코드의 품질을 높이는 것이고, 이를 통해 개발 생산성과 좀 더 견고하면서 유연한 제품을 만드는 것입니다! 리팩터링 전 코드 간단한 함수 설명을 드리면 해당 함수들의 기능은 서버에 특정 상황이 발생하면 클라이언트에 데이터를 전송하는 코드입니다. 여기 위에 함수 두개는 너무나도 중복되고 있습니다. 그 이유는 List에 요소가 서로 다른데 이 두개를 어떻게 하나로 묶어야 할지 그 당시에는 몰랐기 때문에 우선 저런식으로 코드를 작성한 것입니다. 문제점 저는 객체를 생성하는 부분이 가장 근본이 되는 문제라.. 2023. 9. 10.