기본 콘텐츠로 건너뛰기

golang 소스에서 ClassDiagram UML 파일 생성

1. 전체적인 진행 목표는 아래와 같다.

golang source 분석 

-> .puml 파일 생성 

-> 파일 내용을 plantuml.com (또는 local plautuml 서버) 에서 이미지 확인

-> 분석용 또는 문서화 용으로 사용.


2. 먼저 plautuml 웹 서비스 환경을 준비한다. plantuml 은 다양한 Uml 타입을 지원하는데, 텍스트를 입력하면 해당 내용을 UML 이미지로 생성해준다.

2.1. 기존 platuml 웹서비스 주소 접속 아래 도커 설치는 필요하지 않음. https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000

2.2. 또는 로컬에 docker 설치하여 http://localhost:8080/ 접속하기 위한 방법 은 다음 방법 참고

2.2.1. https://plantuml.com/ko/starting 에 가면 docker 에 설치하는 방법 있슴.

2.2.2 .도커가 이미 설치된 상태에서 콘솔창에서 다음을 입력함

docker run -d -p 8080:8080 plantuml/plantuml-server:jetty


3.  golang 용 폴더 생성 (참고링크: https://github.com/jfeliu007/goplantuml )

go mod init 

go get github.com\jfeliu007\goplantuml\parser

go install github.com\jfeliu007\goplantuml\cmd\goplantuml@latest

goplantuml folder > folder.puml 


4. 생성된 .puml 을 편집기에서 해당 내용을 읽어 plantuml.com 에 접속하여 편집기 화면에 붙여 넣기를 수행하면 우측 또는 하단에 해당 내용을 이용하여 Uml(여기서는 ClassDiagram) 이미지가 생성 됨.


5. 아래 링크는 java 파일을 이용하여 .puml을 png 형식으로 파일을 생성하는 방법도 있습니다.

https://sonumb.tistory.com/101


이상입니다


댓글

이 블로그의 인기 게시물

[c#.net] WPF 사용 중 xaml관련 실행시 오류 와 대처 방법

wpf 사용 중 xaml관련 실행시 오류 가 발생해서 자그마치 2일을 소비 했다..--;; 오류 내용은 아래와 같다. ================================== 'System.Windows.Markup.XamlParseException' 형식의 첫째 예외가 PresentationFrameWork.dll에서 발생했습니다. 추가 정보: '지정된 바인딩 제약 조건과 일치하는 'PapaZone.MainWindow' 형식에 대한 생성자 호출에서 예외가 throw 되었습니다.' 줄 번호 '21' 및 줄 위치 '9' 이 예외에 대한 처리기가 있으면 프로그램을 안전하게 계속할 수 있습니다. [] 이 예외 형식이 throw되면 중단 ================================== 위 Xaml 오류 메세지만으로는 내용 추적 불가하여, 도대체 뭔가 했다. 검색해도 뚜렷한 답변은 없었지만, 여러가지 의견을 종합해 보면 아래와 같다. 1. xmlns 관련 파일 과 관련된 파일 로딩 실패 이거나, 2. 신규로 추가된 namespace 에 속한 태그 사용시 오류로 판단되어 태그 하나씩 삽입하며 테스트 해봐야 한다고 함. 해결한 지금에 원인을 보면, xaml 에서 clr-namespace 로 추가된 항목들이 로딩에 실패해서 발생한 것이며, 추가된 항목은 있었으나, 이것과 연결된 파일이 없어서 로딩되지 않는 것이 문제였다. 오늘도 즐거운 하루~~

[MSSQL] SQL Server 에 원격 접속을 못하는 경우 조치 방법

[MSSQL] SQL Server 에 원격 접속을 못하는 경우 조치 방법 내부 오류 추적 결과 다음과 같이 나옴. [Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: 대상 컴퓨터에서 연결을 거부했으므로 연결하지 못했습니다. SqlState : 08001, NativeError : 10061 오류 원인과 처리 1.SQL 서버 로그인 계정 틀린 경우 -> A.SQL Managerment Studio에서 사용할 DB 접속 '로그인' 사용할 계정의 아이디/암호 확인 2.TCP/IP 접속 권한이 없는 경우 -> A.SQL Server 구성 관리자를 실행에서 TCP/IP 허용 되어 있는지 확인 B. 서비스 포트 값이 (보통 1433) 맞는지 확인 C. 외부에서 접속하는 경우에는 방화벽 허용 되엉 있는지 확인 C. 서비스 재시작 3.Windows 인증 모드만 허용 인 경우 -> A.SQL Managerment Studio에서 사용할 DB 접속하고, 우클릭 하여 속성 정보 확인해서 B.연결에서 인증모드 '로그인' 사용할 계정의 아이디/암호 확인 4.'exec Sp_ReadErrorLog' 명령어를 사용해서, 로그인 실패 로그를 확인해서 원인을 분석한다.

[링크] [Python] Kivy 한글 예제

링크:  http://www.complexity.co.kr/?p=443 폰트 복사를 하고, 폰트 경로를 지정해 줘야 한글 출력이 됨... 나는 kivy를 아래의 폴더처럼 구성이 되어 있다. \Kivy-1.9.0-py2.7-win32-x64 윈도우 시스템 폴더의 한글 폰트를 가져다 아래의 폴더에 복사하면 된다 \Kivy-1.9.0-py2.7-win32-x64\kivy27\kivy\data\fonts 난 네이버 나눔 고딕이 좋아보여서 나눔 고딕 폰트('NanumGothic.ttf')를 복사 했음 아래는 실행한 결과, 그리고, 아래는 kivy 이용한 한글 Hello World 코드 # coding: utf-8 from   kivy . app   import   App from   kivy . uix . button   import   Button   import   os class   TestApp ( App ): def   build ( self ): fontName = '/' . join ([ os . getenv ( 'SystemRoot' ), '/fonts/NanumGothic.ttf' ]) return   Button ( text = 'Hello World\n안녕?' , font_name = fontName ) TestApp (). run ()