본문 바로가기
반응형

Books5

리팩토링이 뭐에요? 리팩토링이 무엇인가 리팩토링은 ‘코드를 개선하는 작업’을 일컫는 말입니다. 변수의 이름을 알아먹기 쉽게 바꾸는 것도 리팩토링이라고 할 수 있습니다. 조금 더 정확하게 얘기해 보면 리팩토링은 ‘코드의 역할은 유지하면서 나중에 쉽게 수정할 수 있도록 그 구조를 고쳐나가는 체계적인 작업’ 이라고 할 수 있습니다. 코드를 개선하는 작업의 대전제는 코드가 가지고 있던 기존의 역할을 그대로 유지해야 한다는 것입니다. 시간을 들여 작업을 했더니 잘 작동하던 프로그램이 원래 기능을 수행하지 못하게 되거나 오류가 발생한다면 안 하느니만 못한 일이 되어버립니다. ‘개선된 코드’란 그 목적에 따라서 다양한 형태가 될 수 있습니다. 성능 최적화를 위해 개선된 코드는 읽고 수정하기 어려워질 수 있고 반대로 가독성을 높이기 위한.. 2023. 6. 29.
프로그래밍 패러다임 - 구조적, 객체 지향, 함수형 프로그래밍 프로그래밍 패러다임 은 어떻게 코드를 작성할 것인가? 에 대한 답이라고 할 수 있습니다. 시대의 흐름에 따라 이 질문에 대한 대답은 계속 달라지고 있고, 그에 따라 새로운 언어와 도구가 인기를 끌고 대세로 등극하거나 점차 쇠퇴해 가기도 합니다. 프로그래밍 패러다임을 다루는 위키 문서에는 수십 가지의 패러다임을 소개하고 있고, 구글에 검색을 해보면 복잡한 계층도 그림이 제일 먼저 눈에 들어옵니다. 간단히 소개해 보자면 옛날에는 코드가 순차적으로 실행되는 절차 지향 프로그래밍으로 개발을 했지만 JAVA와 C++ 등과 함께 객체 지향이란 개념이 등장하면서 크게 판도가 바뀌었습니다. 이 절차 지향이니 객체 지향이니 하는 것은 '어떻게' 문제를 해결할 것이냐에 초점을 맞춘 명령형 프로그래밍이고, 나는 관점 자체를.. 2023. 4. 27.
클린 아키텍쳐 - 소개 설계는 무언가를 만들기 위해 기초를 마련하는 일을 말합니다. 건물을 지을 때는 기둥을 어떤 식으로 배치해서 하중을 적절히 분산할 것인지 고려해야 합니다. 그래야 건물이 무너지지 않을 테니까요. 프로그램을 만들 때도 프로그램이 앞으로 어떻게 사용될 것인지 어떻게 변화해갈 것인지를 고려한 적절한 아키텍쳐의 설계가 필요합니다. 그래야 우리의 멘탈이 무너지지 않게 지켜낼 수 있습니다. 제 MBO에는 분석/설계가 들어있지만 설계를 어떤 식으로 해야한다는 설명은 들은 적은 없었습니다. 다른 사람들을 봐도 특별히 무언가를 하는 것 같지 않고 그냥 ‘이렇게 하면 되겠지?’ 라고 생각하는 과정을 설계라고 부르는 듯 했습니다. 그리고 그런 식으로 만들어진 프로그램에 새로운 개발 요청이 들어오면 우리 프로그램의 구조상 그것.. 2023. 4. 6.
프로토타이핑과 예광탄 1. 프로토타이핑을 통해 학습하라 프로토타입(Prototype)이란 완제품을 만들기 전에 특정 기능이나 외관 등에 대해 시험할 용도로 만들어지는 견본품을 말합니다. 다른 분야에서도 흔히 사용되는 방법입니다. 제품을 찍어내기 전에 하나를 먼저 만들어보고 문제점을 발견, 개선하여 비용을 줄이기 위해서죠. 개발을 할 때에도 프로토타이핑은 유용합니다. 프로토타이핑을 통해 제품에 대한 사용자의 반응과 요구 사항을 미리 파악할 수 있어, 이미 완성 단계에 이르른 프로젝트를 뒤엎어 버리는 불상사를 방지할 수 있습니다. 프로토타이핑의 대상이 되는 것은 프로토타입을 통해 시험하고 싶은 모든 것입니다. 보다 구체적으로 아키텍쳐, 새로운 기능, 외부 데이터, 써드파티 도구나 컴포넌트, 성능, UI를 프로토타이핑을 통해서 조.. 2023. 1. 10.
객체 지향의 사실과 오해 - 1. 협력하는 객체들의 공동체 https://book.naver.com/bookdb/book_detail.nhn?bid=9145968 객체지향의 사실과 오해 객체지향에 대한 선입견을 버려라!『객체지향의 사실과 오해』는 객체지향이란 무엇인가라는 원론적면서도 다소 위험한 질문에 답하기 위해 쓰여진 책이다. 안타깝게도 많은 사람들이 객체지 book.naver.com 누구나 한 번 이상 들어봤거나 대충의 개념은 알고 있지만 상세히 설명해보라 하면 할 말을 잃게 만드는 객체 지향에 대해 알려주는 책입니다. 컴퓨터과학이 외국에서 온 학문이다 보니 명저라는 책들도 대부분 영어로 적혀 있는 경우가 많습니다. 인터넷 자료들도 주로 영어 문서이고 번역판으로는 이해가 잘 되지 않을 때도 종종 있지요. 이런 현실 속에서 개발자들이 꼭 읽어야 할 책으로 자.. 2021. 11. 15.
반응형