[용어] 오버로딩 & 오버라이딩이란?
2023. 4. 3. 14:26
Information Technology/용어
오버로딩 (Overloading) - 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있더라도 - 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메소드를 정의할 수 있음 - 오버로딩은 매개변수의 차이로만 구현할 수 있음 오버로딩은 파라미터만 다른 것 '같은 이름의 메소드가 소스코드에 너무 많이 실렸다' 고 생각하면 됨 오버로딩의 조건 - 메소드의 이름이 같고, 매개변수의 개수나 타입이 달라야 함 - 리턴 값만 다른 것은 오버로딩을 할 수 없음 오버로딩 사용하는 이유 같은 기능을 하는 메소드를 하나의 이름으로 사용 가능 메소드의 이름을 절약할 수 있음 오버라이딩 (Overriding) - 부모 클래스의 메소드를 재정의 하는 것 - 자식 클래스에서는 오버라이딩 하는 메소..
[용어] 소프트웨어 아키텍처란?
2023. 3. 16. 15:15
Information Technology/용어
소프트웨어 아키텍처 (Software Architecture) - 시스템의 초기 설계 결정 사항을 표현하는 것 = 구조 - 소프트웨어 아키텍처가 중요한 이유는 소프트웨어의 품질을 결정하기 때문 - 하나의 소프트웨어를 개발할 때, 이런 수많은 모듈들을 어떻게 분할하고 배치할 것인지 결정할 때 참고하는 것이 소프트웨어 아키텍처 모듈 - 소프트웨어를 구성하고 있는 작은 기능 하나하나의 단위 컴포넌트 - 모듈을 기능별로 묶어놓은 집합 소프트웨어 아키텍처 기본 원리 모듈화: 소프트웨어 성능 향상 및 유지관리 등이 용이하도록 시스템의 기능을 모듈단위로 나누는 것 추상화: 전체적이고 포괄적인 개념을 설계한 후에 구체화 시켜 나가는 것 단계적 분해: 상위 개념부터 하위 개념으로 구체화 시키는 분할 기법 하향식 설계 전..
[용어] 메시지 브로커
2023. 3. 15. 23:26
Information Technology/용어
메시지 브로커란? - 미들 웨어의 유형 중 하나로, 송신자 (Publish) 로부터 전달 받은 메시지를 수신자(Subscriber)로 전달해주는 중간 역할 - 응용 소프트웨어 간에 메시지를 교환할 수 있게 함 // 미들웨어: 어플리케이션과 어플리케이션 사이에서 동작하는 중간 단계 어플리케이션 // 미들웨어를 통해 분산된 모든 어플리케이션 사이에 연결을 맺지 않아도 데이터의 교환 가능 - 메시지가 적재되는 공간을 메시지 큐, 메시지의 그룹을 토픽 이라고 함 메시지 브로커 사용 방법 - DW, AS라는 두 개의 서버가 있다고 가정함 DW는 실시간으로 데이터를 수집하고 관리하는 서버 AS는 이 데이터를 가공하여 사용하는 서버 AS에서 DW에 있는 데이터를 사용하려는데 메시지 브로커를 사용한다면? - DW 에서..
[용어] 마이그레이션, 컨버팅, 포팅
2023. 3. 15. 23:15
Information Technology/용어
마이그레이션 (Migration) - 하나의 운영체제 (OS)를 다른 운영체제로 옮겨가는 과정 - 일반적으로 더 나은 운영 체계로 나아가는 과정을 말함 - 예: 휴대폰 데이터 → 동기화 - 예: 윈도우 NT → 윈도우 2000 서버로 이동 포팅 (Porting) - CPU, 운영체제 등 소프트웨어를 원래 설계된 컴퓨팅 환경이 아닌 각기 다른 환경에서도 동작할 수 있도록 해당 환경에 맞춰주는 작업 - 한 소프트웨어를 다른 기종의 컴퓨터 또는 프로그램으로 옮기는 과정이라 생각하면 됨 - 예: 윈도우 → 리눅스 / 윈도우 → 맥 / iOS → 안드로이드 컨버팅 (Converting) - 개발된 프로그램을 언어만 변경해, 같은 플랫폼에서 같은 동작이 가능하도록 수정하는 작업 - 같은 플랫폼 상에서 개발 언어만 ..