# README

### go home! [:house\_with\_garden:](https://github.com/wnsgml972/midas_log)

#### [Stop thinking, Just Do](https://www.youtube.com/watch?v=Xz2zvDug2jM)

#### [Stay Hungry. Stay Foolish.](https://www.youtube.com/watch?v=7aA17H-3Vig)

### Basic Education

#### 마음가짐

**다른 사람이 내 코드를 봤을 때 깨끗하다고 감탄했으면 좋겠다.**

문학적인 코드를 작성해라. 마치 소설처럼 위에서 아래로 **읽혀야 한다.**

**리팩토링을 해라(절대 미루지 말고), 테스트 코드를 짜라**

개발의 시간은 돌아가는데 까지의 시간이 아니라, 리팩토링하는 시간을 포함해야 한다.

**함수를 짜는 방법**

**논문을 쓰는 것과 같다.** 먼저 생각을 하고 기록한 후 읽기 좋게 다듬는다. 함수도 마찬가지다. 처음에는 길고 복잡하다. 이름은 즉흥적이고 중복된다. 하지만 그 서투른 코드를 빠짐없이 테스트 코드를 작성한다. 그런 다음 코드를 다듬고, 함수를 만들고, 이름을 바꾸고, 중복을 제거한다. \
&#x20;메소드를 줄이고 순서를 바꾼다. 때로는 전체 클래스를 쪼개기도 한다. 이 와중에도 코드는 계속 테스트 케이스를 통과한다. 최종적으로 함수가 만들어진다. \
&#x20;**처음부터 딱 짜내지 않는다. 그게 가능한 사람은 없으니까.**

## 업무 전문 지식

### Basic knowledge

#### Basic

* C++, MFC 개인 프로젝트 진행
* 디버깅
* [Note (VS, OS, C, etc..)](/midas_log/contents/basiceducation/note.md)
* [빌드 속도 개선](/midas_log/contents/basiceducation/build.md)
* [Windows 응용 프로그램 파일 관리](https://github.com/wnsgml972/midas_log/tree/1b90b7a1d4bbb41758c5cc983df18c8981115724/contents/BasicEducation/application_manage.md)
* [Book](/midas_log/contents/basiceducation/book.md)
* [Archive](/midas_log/contents/basiceducation/archive.md)

#### Programming Math

* [Programming Math](/midas_log/contents/basiceducation/math.md)
* [UI Engine](/midas_log/contents/basiceducation/mathhigh.md)

#### Design

* [Design](/midas_log/contents/basiceducation/design.md)

#### Design Pattern

* [Design Pattern](/midas_log/contents/basiceducation/designpattern.md)
* [Clean Code](/midas_log/contents/basiceducation/cleancode.md)

#### Naming

* [Naming](/midas_log/contents/basiceducation/naming.md)

#### Commit Message Rule

* [Commit Message Rule](/midas_log/contents/basiceducation/commit.md)c

#### QA

* [QA](/midas_log/contents/basiceducation/qa.md)

#### Code Quality

* [Code Quality](/midas_log/contents/basiceducation/codequality.md)

#### Code Review

* [Code Review](/midas_log/contents/basiceducation/codereview.md)

#### Memory / Storage

* [Memory Debug](/midas_log/contents/basiceducation/highmemorydebug.md)

#### 응용프로그램 관리

* [Application Manage](/midas_log/contents/basiceducation/applicationmanage.md)

### DevOps

#### DevOps Overview

* [DevOps Overview](https://wnsgml972.github.io/devops/devops.html)
* [DevOps Log](/midas_log/contents/basiceducation/devops.md)

#### Project Management

| Work                     | Name                                                                               |
| ------------------------ | ---------------------------------------------------------------------------------- |
| Version Control          | [Git](/midas_log/contents/basiceducation/git.md)                                   |
| Communication Tool       | [Slack](https://slack.com/), [Mattermost](https://mattermost.com/) : Linked GitLab |
| CI/CD                    | GitLab                                                                             |
| Issue Tracking, Planning | [Jira](/midas_log/contents/basiceducation/jira.md)                                 |
| Docs Cooperation         | [Confluence](/midas_log/contents/basiceducation/confluence.md)                     |
| Static Analysis          | Cpp Check, [Log](/midas_log/contents/basiceducation/codequality.md)                |
| Unit Test                | [Google Test](https://github.com/google/googletest)                                |
| Code Review              | Gerrit, [Log](/midas_log/contents/basiceducation/codereview.md)                    |

#### 비개발자를 위한 기본적인 소스 관리 툴 사용하기

* [Markdown](https://wnsgml972.github.io/test/markdown-example/)
* [VS Code](https://wnsgml972.github.io/setting/2018/11/09/setting_vscodeset/)
* [Source Tree](https://www.sourcetreeapp.com/)
* [Git](https://git-scm.com/downloads)

### Setting

#### Visual Basic Setting

* [Visual Basic Set](/midas_log/contents/basiceducation/visualbasicset.md)

#### Visual Code Basic Setting

* [Visual Code Basic Set](/midas_log/contents/basiceducation/visualcodebasicset.md)

#### Etc Setting

* [Etc Set](/midas_log/contents/basiceducation/etcset.md)

### Modern C++

#### C++ Basic

* [C++ Basic](/midas_log/contents/basiceducation/cppbasic.md)

#### C++ 17

* [C++ 17](/midas_log/contents/basiceducation/cpp17.md)

#### Modern C++ Framework 구현 분석

* [Modern C++ Framework 구현 분석](/midas_log/contents/basiceducation/framework.md)

#### C++ 50 계명!!

* [C++ 50 계명](/midas_log/contents/basiceducation/cpp50.md)

### MIDAS : 기반 개발 및 응용

#### Role

* [Role](/midas_log/contents/basiceducation/role.md)

#### MIDAS DB

* Confluence 참고 (내가 정리)

#### Phase

* Confluence 참고 (내가 정리)
* CIM 기반 FrameWork

#### Alice UI

* Confluence 참고 (기존 자료 참고)
* CIM 기반 UI 엔진

#### CAD

* [CAD Note](/midas_log/contents/basiceducation/cad.md)
* `Parasolid` : 다른 회사 3D CAD 엔진


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wnsgml972.gitbook.io/midas_log/contents/basiceducation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
