전체 글(148)
-
IntelliJ spring color console
스프링을 실행하는데 흑백으로 나온다. application.properties 들어간다 밑에 문장을 입력 후 재실행한다. spring.output.ansi.enabled=ALWAYS 잘된다.
2023.01.03 -
[책리뷰] 함께 자리기 - 애자일로 가는 길
책을 읽게 된 계기 어떤 영상에서 공부를 제대로 하려면 이 책을 읽어야 한다고 해서 구매했다. 책 내용 이 책은 1. 자라기 2. 함께 3. 애자일 로 나눠져 있다. 1. 자리기 에서는 개발을 공부하는 마음가짐(?)에 대해서 나와있다. 2. 함께 에서는 개발에 있어서 협력의 중요성에 대해 설명한다. 3. 애자일 은 애자일의 정의와 실천 방법을 설명한다. 후기 책을 읽으면서 지금까지 개발공부를 제대로 못한 느낌이 들었고 나만의 공부방법을 찾아야 겠다는 생각을 했다. 함께 자리기 - 애자일로 가는 길 함께 자라기 - 교보문고 애자일로 가는 길 | 다음 문장들을 보고 거짓이라고 생각하는 게 있으면 골라보세요.1. 일반적으로 경력이 많으면 전문성도 높다.2. 수십 년간 같은 수련을 날마다 반복하면 실력이 는다...
2022.06.04 -
[책리뷰] 객체지향의 사실과 오해 - 역할, 책임, 협력 관점에서 본 객체지향
책을 읽게 된 계기 Spring 강의를 듣던 중에 강사님 소개로 구매했다. (즉흥적이었다...) 책 내용 클래스의 구조와 메서드가 아니라 객체의 역할, 책임, 협력에 집중하라. 많은 사람들은 객체 지향이라는 말을 들으면 조건반사적으로 클래스라는 단어를 떠올린다. 클래스가 객체지향 프로그래밍 언어의 관점에서 중요한 구성요소(construct)인 것은 분명하지만 객체지향의 핵심을 이루는 중심 개념이라고 말히기에는 무리가 있다. 훌륭한 객체지향 설계자가 되기 위해 거쳐야 할 첫 번째 도전은 코드를 담는 클래스의 관점에서 메시지를 주고받는 객체의 관점으로 사고의 중심을 전환하는 것이다. 후기 이 책은 이상한 나라의 엘리스의 내용을 바탕으로 객체란 무엇이며, 객체의 역할, 책임 , 협력의 개념을 독자가 이해하기 ..
2022.05.22 -
항목 53: 컴파일러 경고를 지나치지 말자
✅ 이것만은 잊지 말자! 컴파일러 경고를 쉽게 지나치지 맙시다. 여러분의 컴파일러에서 지원하는 최고 경고 수준에도 경고 메시지를 내지 않고 컴파일되는 코드를 만드는 쪽에 전력을 다 하십시오. 컴파일러 경고에 너무 기대는 인생을 지양하십시오. 컴파일러마다 트집을 잡고 경고를 내는 부분들이 천차만별이기 때문입니다. 지금 코드를 다른 컴파일러로 이식하면서 여러분이 익숙해져 있는 경고 메시지가 온 데 간 데 없이 사라질 수도 있습니다. 출처 - Effective C++ (스콧 마이어스)
2022.04.01 -
qml ChartView zoom in rect
마우스 위치에서 확대 Qt qml의 ChartView를 이용하여 그래프를 그리는 작업을 하던 중 zoom 기능을 추가하고 싶었다. 기본으로 제공하는 zoomIn() , zoomOut() 기능을 차트 가운데에서만 확대할 수 있는 기능만 가지고 있었다. 내가 원하는 건 마우스 위치에서 확대 되는 것이기 때문에 zoomIn(), zoomOut()은 소용이 없었다. 그래서 ChartView에서 제공하는 zoomIn(rect rectangle)을 이용해서 구현하였다. 지정한 사각형을 현재 차트에 가득차게 확대해주는 함수다. 즉, 현재 차트보다 지정한 사각형의 크기가 작아야 확대되고 크면 축소된다. 사각형은 왼쪽 위의 x, y 좌표와 너비 높이 순으로 지정한다. 하지만 한가지 문제가 있었다. 내가 원하는 건 한 점..
2022.03.08 -
항목 26: 변수 정의는 늦출 수 있는 데까지 늦추는 근성을 발휘하자
생성자 혹은 소멸자를 끌고 다니는 타입으로 변수를 정의하면 반드시 물게 되는 비용이 두 개 있습니다. 하나는 프로그램 제어 흐름이 변수의 정의에 닿을 때 생성자가 호출되는 비용이고, 또 하나는 그 변수가 유효범위를 벗어날 때 소멸자가 호출되는 비용입니다. 변수가 정의됐으나 사용되지 않은 경우에도 비용이 부과되는데, 이런 비용은 웬만한 경우가 아니면 물고 싶을 생각이 안 들 것입니다. 어떤 변수를 사용해야 할 때가 오기 전까지 그 변수의 정의를 늦추는 것은 기본이고, 초기화 인자를 손에 넣기 전까지 정의를 늦출 수 있는지도 둘러봐야 한다는 것입니다. 이렇게해야 쓰지도 않을 객체가 만들어졌다 없어지는 일이 생기지 않으며, 불필요한 기본 생성자 호출도 일어나지 않습니다. 덤으로 누가 보아도 그 변수의 의미가 ..
2022.03.05 -
QML module not found 해결법
qt를 cmake로 빌드파일을 만들 때 사용자 모듈을 인식하지 못하는 오류가 생긴다. 해결법은 다음 stackoverflow에서 찾았다. https://stackoverflow.com/questions/56347507/custom-qml-module-not-found Custom QML module not found I have a QML application. I have created my own QML module. called MyCustomModule. The module has the appropriate qmldir file, which is registered to the corresponding my_custom_module.qrc file. I ... stackoverflow.com #..
2021.12.20 -
Unable to assign QQuickRootItem to double
Qt Quick 프로그래밍을 하던 중에 이런 오류가 나왔다. 찾아보니 Rectangle의 width와 height 값을 Window에서 parent로 값을 가져오려고 해서 나오는 오류였다. Window { width: 640 height: 480 visible: true Rectangle { id: rect width: parent height: parent } } 해결 방법은 여러가지이다. anchors.fill : parent 를 대신 사용한다. window에 id 값을 지정해서 id.width 값과 id. height 값을 받는다. 참고 https://stackoverflow.com/questions/30121552/qml-unable-to-assign-qquickitem-to-qquickancho..
2021.07.31