다형성을 사용하면 객체를 실제 클래스가 아닌 부모 클래스의 인스턴스로 취급할 수 있다. 이를 통해 객체의 런타임 유형에 따라 실행되는 메서드가 달라지는 유연성과 동적 메서드 디스패치를 지원한다. Core PrinciplesDynamic Binding: 다형성을 사용하면 런타임에 실제 객체 유형에 따라 실행되는 메서드가 결정되는 지연 바인딩이 가능하다.Interfaces and Abstract Classes: 인터페이스와 추상 클래스는 다형성을 허용하여 여러 클래스가 공유 동작을 위한 공통 인터페이스를 제공할 수 있도록 한다.Advanced UsageMethod Overloading (Compile-time Polymorphism): 이름은 같지만 매개 변수가 다른 여러 메서드를 사용할 수 있어 유연성을 ..
OOP의 대표 개념 중 하나인 Encapsulation (캡슐화) 에 대해 알아보자. Conceptual Depth: 캡슐화는 단순히 데이터를 숨기는 것뿐만 아니라 객체의 내부 상태와 외부 세계 사이의 명확한 경계를 정의하는 것이기도 하다. 이러한 분리는 데이터 액세스 및 수정 방식에 제약을 가해 개체가 유효하고 일관된 상태를 유지하도록 한다.Access Modifier: private, protected, public, package-private(default) 수정자는 클래스 멤버의 접근성을 제어한다. 데이터 멤버를 private으로 유지하고 필요한 경우에만 getter 와 setter 메서드를 통해 액세스할 수 있도록 하는 구현이 대표적이다.Immutable Objects: 캡슐화된 클래스는 se..
Angular는 동적 웹 애플리케이션 구축을 위해 Google에서 관리하는 인기 있는 오픈소스 프론트엔드 프레임워크다. 2010년에 처음 개발(AngularJS)된 후 2016년에 Angular(Angular 2+)로 개편되었으며, 단일 페이지 애플리케이션(SPA) 구축에 널리 사용되고 있다. 아래는 Angular의 기능으로 Angular의 툴링(Angular CLI 등)과 함께 강력하고 확정있는 기능을 제공한다. Component-Based Architecture: Angular는 컴포넌트 중심이므로 사용자 인터페이스의 각 부분이 컴포넌트로 구축된다. 따라서 애플리케이션을 모듈화하고 재사용할 수 있으며 관리하기가 더 쉽다.TypeScript: Angular는 정적으로 유형화된 JavaScript의 상위..
React는 Facebook에서 개발 및 유지 관리하는 인기있는 오픈소스 JavaScript 라이브러리로, 특히 단일 페이지 애플리케이션(SPA)를 위한 사용자 인터페이스 (UI)를 구축하기 위해 특별히 설계됐다. React는 특히 재사용 가능한 컴포넌트를 만드는 데 중점을 두고 있으며, 이는 복잡한 인터페이스를 만들기 위해 결합할 수 있는 독립적인 UI 조각이다.React의 에코시스템, 도구(예: React Developer Tools, Create React App), 다른 라이브러리와의 호환성을 동적이고 대화형이며 빠르게 로드되는 웹 애플리케이션을 구축하는 데 탁월한 선택이다. Component-Based Architecture: React는 고도로 컴포넌트 중심이므로 개발자는 자체 상태를 관리하는..
Nvidia Jetson은 클라우드 기반 프로세싱에 의존하지 않고 네트워크 엣지에 있는 디바이스에 직접 인공지능 및 머신 러닝 모델을 배포하도록 설계된 엔비디아에서 개발한 Edge AI Computing Platform이다. Jetson 플랫폼은 컴팩트하고 전력 효율이 높아 로봇 공학, 자율 주행 차량, 드론, 스마트 카메라, IoT 디바이스 등 실시간 데이터 처리가 필요한 임베디드 시스템에 적합하다. Jetson은 임베디드 시스템에서 중요한데, 높은 컴퓨팅 성능과 효율성, 소형 폼 팩터를 결합해 개발자가 온디바이스 인텔리전스(on-device intelligence)가 가능한 스마트하고 반응성이 뛰어난 디바이스를 만드는 데 두각을 나타낸다. 이는 클라우드 인프라에 대한 의존도를 낮추고 로컬 처리를 유지..
다음은 간단한 GUI 애플리케이션, Signal and Slots을 이용한 이벤트 처리, 파일 I/O 처리를 다루는 Qt의 몇 가지 기본 에제다. 이 예제에서는 기본적인 GUI 요소 처리부터 파일 입출력 수행, 대화창 생성에 이르기까지 필수적인 Qt 기능을 다룬다. Qt의 우연셩과 방대한 문서는 여러 플랫폼에서 복잡한 애플리케이션 개발을 위한 훌륭한 프레임워크다. Simpel GUI Application with a Button and Label: 이 예제에서는 버튼과 레이블이 있는 GUI 애플리케이션을 만든다. 버튼을 클릭하면 레이블 텍스트가 변경된다. 이 예제에서는 버튼의 clicked signal를 버튼 클릭 시 레이블 텍스트를 변경하는 사용자 지정 slot인 onButtonClicked에 연결한다..
다음은 GUI 애플리케이션 설정, 오디오 입력/출력 처리, 간단한 오디오 효과 만들기 등 일반적인 작업을 보여주는 몇 가지 기본적인 JUCE 구현 예제다. 이 예제에서는 JUCE가 설치되어 있고 프로젝트가 Projucer (JUCE의 프로젝트 고나리 도구)에서 생성되어 있다고 가정한다.이 코드 스니펫은 fixed gain을 0.5f 로 설정하고 있으며, 슬라이더에 연결된 변수로 대체해 gain level을 실시간으로 제어할 수 있다. 여러 개의 사용자 제어 파라미터가 있는 더 복잡한 플로그인을 구축하는 경우 AuidoProcessorValueTreeState 클래스를 사용해 파라미터를 처리할 수 있다. Basic GUI Application: 이 예제에서는 슬라이더와 슬라이더의 값을 표시하는 레이블이 있..
JUCE는 주로 오디오 및 멀티미디어 애플리케이션을 구축하기 위해 설계된 인기 있는 크로스 플랫폼 C++ 프레임워크다. 음악 기술 업계에서 특히 디지털 오디오 워크스테이션 (DAW), 오디오 플러그인, 신디사이저 및 기타 오디오 처리 소프트웨어 제작에 널리 사용되고 있다.사용 편의성, 오디오 중심 디자인, 다양한 디지털 오디오 워크스테이션과 운영 체제에서 원활하게 작동하는 플러그인을 만들 수 있는 기능으로 오디오 및 음악 소프트웨어 업계에선 높은 선호도를 얻고 있는 JUCE는 다양한 디지털 오디오 워크스테이션과 운영 체제에서 원활하게 작동한다.아래는 JUCE의 주요 기능 및 장점에 대한 개요다. Audio Processing: JUCE는 실시간 오디오 I/O, MIDI 지원, 내장 DSP(디지털 신호 처..
Qt는 강력한 크로스 플랫폼 소프트웨어 개발 프레임워크로, 주로 Windows, macOS, Linux, Android, iOS 등 다양한 우영 체제에서 실행할 수 있는 그래픽 사용자 인터페이스 (GUIs)와 애플리케이션을 만드는 데 사용된다. Qt는 자동차 인터페이스, 의료 기기, 데스크탑 및 임베디드 시스템용 소프트웨어와 같이 복잡하고도 고도로 상호 작용하며 성능에 민감한 애플리케이션이 필요한 분야에서 널리 사용된다. 다음은 핵심 기능에 대한 분석이다. Widgets and UI Elements: Qt는 버튼, 텍스트 상자, 슬라이더 등 사전 빌드된 UI 컴포넌트의 광범위한 컬렉션을 제공하므로 풍부한 데스크탑 애플리케이션을 쉽게 빌드할 수 있다.Cross-Platform: 운영 체제 차이에 따른 추상..
Firebase Cloud Messaging은 Google에서 제공하는 크로스 플랫폼 메시징 서비스로, 개발자가 웹 브라우저뿐만 아니라 Android 및 iOS에서 사용자의 디바이스에 알림과 메시지를 보낼 수 있도록 해준다. Firebase Cloud Messaging은 모바일 및 웹 애플리케이션의 알림 시스템, 사용자 참여, 알림 및 실시간 업데이트에 널리 사용된다. Firebase Cloud Messaging의 주요 기능 및 용도는 아래와 같다. Push Notifications: FCM을 사용하여 앱이 실행되고 있지 않을 때에도 사용자의 디바이스에 직접 알림을 보낼 수 있으므로 사용자가 앱에 계속 참여할 수 있는 강력한 도구가 된다.Targeting Messaging: 특정 디바이스, 디바이스 그룹..
- Total
- Today
- Yesterday
- join
- machine learning
- I2C
- Python
- min heap
- 투 포인터
- vertex shader
- DICTIONARY
- 오블완
- The Economist Espresso
- ml
- 이코노미스트
- tf-idf
- Hash Map
- leetcode
- 소켓 프로그래밍
- C++
- 티스토리챌린지
- 리트코드
- 파이썬
- socket programming
- The Economist
- Computer Graphics
- java
- 이코노미스트 에스프레소
- 딕셔너리
- Android
- 머신 러닝
- 안드로이드
- defaultdict
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |