목록2025/04 (19)
동산로의 블로그

"specifies constructs that can be used to define the execution architecture of systems and the assignment of software artifacts to system elements"물리적 시스템의 실행 아키텍쳐와 시스템의 각 부분에 어떤 소트프웨어적 구성요소들 할당되는지를 보여주는 도식입니다하드웨어적 구성도를 보여주기 때문에 일반적으로 다른 구조 설계가 끝난 후에 만듭니다.deployment diagram의 핵심 요소들(key elements)nodes : 보통 하나의 하드웨어를 뜻합니다. 컴퓨터, 센서, 프린터 등이 해당됩니다. 얇은 직육면체로 표현합니다. 한쪽 면에는 정보가 기입됩니다. 겹화살괄표>에 node를 기입할 ..
PNAS에 올라온 perspective 하나를 소개해 볼까합니다.Learning dynamical systems from data: An introduction to physics-guided deep learning참고 : physics guided AI, physics based AI, physics informed AI 등등으로 불립니다. 개요현대 과학/공학에서 해결하고자 하는 문제들은 알려지지 않은 혹은 일부분만 알려진 고차원의 편미분 방정식들을 포함하고 있습니다. 이런 문제들을 고전적으로 물리학을 통해서 미분방정식을 세우고 계산해 왔습니다. 해석가능(interpretability)하고 물리학적 보존량의 보존(conservation guarantee) 등 장점이 있지만 수치적으로 너무 많은 비용..
정적 메소드와 클래스 메소드.정적 메소드정적 메소드는 python class 안에서 정의됩니다. 다만 일반적인 메소드들과 달리self, 혹은 cls를 첫번째 인자로 가지지 않습니다. 인스턴스에 대한 어떠한 접근도 불가능합니다. 클래스와 무관한 일반적인 함수처럼 행동합니다.class MathTool: @staticmethod def add(a,b): return a+bprint(MathTool.add(3,4)) # 7클래스 메소드클래스 메소드는 cls(클래스 자기자신)을 첫번째 인자로 가집니다. 인트턴스의 정의 없이 사용이 가능합니다. 또한 클래스에서 선언된 변수를 접근 가능하고 새로운 인스턴스 생성이 가능합니다.인스턴스와 무관한 클래스 변수에 대한 접근이 가능하기 때문에 다음과 같..
파이썬의 데이터 클래스 데코레이터에 대해서 알아봅시다.dataclasses 모듈에 포함된 기능입니다. 데이터 중심 클래스를 만드는 데에 있어서 도움을 줍니다. 코드 작성시 반복적인 코드를 줄일 수 있고, 더불어 간결하고 가독성을 높은 코드를 짤 수 있습니다.__init__() __repr__(), __eq__(), __hash__() 등의 특수 메소드들을 자동으로 생성해줍니다.order=True를 통해서 비교 연산자 __lt__(),__le__(),__gt__(),__ge__() 도 자동으로 생성해 줍니다.@dataclassclass InventoryItem: """Class for keeping track of an item in inventory.""" name : str unit_p..
람다 함수람다 함수는 함수 리터럴(function literal), 익명함수(anonymous function)라고도 불립니다. def로 정의된 일반 함수와 달린, 람다 함수는 한 줄로 간결하게 정의할 수 있기에 즉석에서 함수를 만들어 사용할 때 유용합니다.람다 함수의 선언보통 함수를 정의할 때는 다음과 같이 def을 사용합니다.def func(param1, param2): return param` + param2람다 함수를 사용하면 같은 기능을 다음처럼 한 줄로 표현할 수 있습니다. lambda param1, param2: param1 + parma2여기서 lambda는 python의 내장 키워드(keyword)이며, : 앞에는 인자들, :뒤에는 리턴값(표현식)을 적습니다.람다함수의 다양한 ..

UML Class Diagram 클래스 다이어그램(Class Diagram)은 UML에서 구조 다이어그램(Structure Diagram)에 속하며 객체 지향 시스템에서 클래스 간의 관계 및 구조를 시각적으로 표현하는 데 사용됩니다. 시스템의 정적인 구조를 나타내며, 소프트웨어 설계의 기초가 됩니다. 클래스 표현 방식클래스는 세 부분으로 나뉜 사각형 상자로 표현되며, 각 부분은 다음과 같은 정보를 담습니다.1. 클래스 이름 : 상단 중앙, 볼드체로 표기2. 속성(Attribute): 중단, 각 속성은 아래 형식으로 작성 [가시성기호] 이름 : 데이터 타입3. 메서드(Method): 하단, 함수 형식으로 작성 [가시성기호] 이름(매개변수) : 반환 타입 가시성(visibility)은 기호로 표현되며..

UML Object Diagram 객체 다이어그램(Obejct Diagram)은 시스템의 객체들들의 스냅샷을 보여주는 도식입니다. 클래스 다이어그램과 매우 유사하지만 차차이점이 있다면, 클래스 다이어그램은 클래스를 보여주고, 오브젝트 다이어그램은 클래스의 인스턴스(instance)를 보여줍니다. 인스턴스네모 속에 이름:클래스의 형식으로 만들게 됩니다. 클래스와 차이점이 있다면 이름과 속성에 해당 인스턴스에 필요한 값들이 설정됩니다. 클래스 다이어그램의 적용 사례 정도로 이해하면 편하다. 다음은 클래스 다이어그램이 인스턴스 다이어그램으로 표현되는 것을 나타낸 것이다. 왼쪽은 클래스 다이어그램이고, 오른쪽은 각 클래스 다이어그램이 구현되면 각각의 인스턴스들이 어떻게 연관되는지 보여주는 도식이다. http..

UML 컴포넌트 다이어그램 (component diagram) 컴포넌트 다이어그램은 UML(Unified Modeling Language)에서 구조 다이어그램(Structual Diagram)의 한 종류로, 시스템 모듈 간 구조와 상호작용을 시각화하는 데 사용됩니다. 1. 컴포넌트란 무엇인가.컴포넌트는 일반적으로 캡슐화된 교체 가능한 모듈로 이해할 수 있습니다 UML 2.0 명세에서 엄밀하게 정의 된 것은 아니지만, 대부분의 경우 이렇게 해석하는 편이 유용합니다. 각 컴포넌트들은 독립적으로 개발, 배포, 교체될 수 있으며, 외부와의 인터페이스를 통해 통신합니다. 2. 컴포넌트 다이어그램의 목적컴포넌트 다이어그램은 시스템의 상위수준(high-level) 구조를 설계하는 데 사용됩니다. 각 컴포넌트의 기능..