정보

채상혁·2022년 5월 18일
0

EDI 전자문서교환

표준화된 자료표현 양식에 준하여 전자적 통신매체를 이용해 교환하는 방식이다.

국내기업은 물론 국제무역에서 각종 서류의 작성과 발송, 서류정리절차 등의 번거로운 사무처리가 없어져 처리시간의 단축, (주문,생산,납품,유통)비용의 절감으로 생산성을 향상시킨다.

EAI 기업응용 프로그램 통합

기업응용 프로그램 통합이란 DW,ERP,CRM,SCM,B2B등 기업에서 운영하는 서로 다른 시스템을 통합하는 것을 의미합니다. 업무의 효율성, 확장성 증가, 유지보스 및 비용 절감 편의성을 증가시킵니다.

구성요소

데이터 브로커 : 서로 다른 어플리케이션은 각기 다른 형태로 데이터를 보관하고 있기 때문에 애플리케이션간 통합을 위해 데이터 포맷과 데이터코드를 변환하는 것

메시징 통로: 기능과 변환을 마친 다른 어플리케이션으로 전송하는것, 허브&스포크 방식과 메시지 버스방식 2가지가 있습니다. (데이터 변환, 룰 프로세싱, 트랜젝션 처리등)

어댑터 : 각기 다른 어플리케이션과 메시징 통로 사이에서 데이터를 입출력하는 도구, 새로운 어플리케이션이 하나 도입되면 하나의 어댑터만 추가해주면 다른 어플리케이션과 통합을 할 수 있다.

프로세스 통합 : 위 3가지를 통해 데이터 통합이 이루어진다. EAI는 데이터 통합에서 벗어나 프로세스까지 통합해야 합니다. 즉 특정 어플리케이션에서 변환 과정을 거쳐 옮겨온 데이터를 다른 어플리케이션에서 자동적으로 작동 시키는 워크플로우까지 통합되야 하는 것, 때문에 상용화된 EAI솔루션들은 교환된 데이터를 실제 업무에 적용할 수 있도록 비즈니스 규칙을 자동화한 소프트웨어 모듈을 포함하고 있다.

기대효과

기존 투자에 대한 보호 : 이미 안정화된 시스템과의 통합 유용하여 기존 투자 보호
환경 변화에 빠른 시간내에 대응 가능 : 새로운 시스템 도입하여 개발 안정화까지 시간 지연을 감소, 빠른 환경 변화에 즉각 대응 가능, 기존 시스템 그대로 이용
시스템 선정시 제약적 감소 : EAI 솔루션을 통해 개방적인 하부구조가 정의되면 새로운 시스템 도입시 선정 제약이 사라짐
시스템의 통합관리 가능 : 흩어진 시스템들이 하나로 통합관리되면 모두 하나의 인터페이스로 관리할 수 있게 됨, 일관성 증가, 유지보수 비용 절감

B2Bi 기업간 통합

단일 기업의 이기종 어플리케이션을 통합하는 것을 전사어플리케이션통합 EAI정의합니다
B2Bi는 대상 범위가 기업간으로 확대된것입니다. 두 기업간에 업무가 이뤄지려면 두 회사가 서로 이해할 수 있는 공통의 포맷이 필요하다.

SOA 서비스 지향 아키텍쳐

업무상에 일 처리에 해당하는 소프트웨어 기능을 서비스로 판단하여 서비스를 네트워크상에 연동하여 시스템 전체를 구축해 나가는 방법론 이다.

각 단위작업이 서비스로 이루어진 구조

ESB

enterprise service bus 비즈니스 내에서 서비스 어플리케이션 자원을 연결하고 통합하는 미들웨어라 할 수 있으며 분산된 서비스 요소들을 쉽게 통합 연동할 수 있어 신뢰성 있는 메시지 통신이 가능하다. 높은 추상화 수준을 제공하기 때문으로 ESB를 사용하는 주된 이점 중 하나는 접점의 수를 줄이는 것이다. ESB는 SOA가 실현되는 플랫폼 이는 변환/라우팅 의 개념이 ESB에 의해 SoA로 가져올 수 있기 때문이다 .

SOA와 ESB의비교
SOA는 느슨하게 결합 된 서비스 기반 어플리케이션을 구현하기 위한 아키텍처 모델이고, ESB는 개발자가 서비스를 개발하고 적절한 API를 통해 서비스간에 통신하는 데 도움이되는 인프라 스트럭처 소프트웨어이다. ESB는 SOA가 실현되는 플랫폼으로 사용될 수 있다. 하지만 ESB는 서비스가 흐르는 매체일 뿐이고, ESB는 SOA의 구현과 서비스 구성 및 배치를 위한 기능을 제공한다.

EIMS

eims란 기업 전체 시스템에서 정의되는 인터페이스 및 전문의 레이아웃, 거래방식, 통신방식을 통합관리하여 개발 생산성을 높이고 시스템을 효율적으로 운영할 수 있게 해주는 시스템입니다.

API

application programming interface 응용프로그램인터페이스
특정한 기능을 사용하기 위해 필요한 데이터를 주고받게끔 만든 도구나 방법입니다.

쓰레드

프로그램을 실행하는 하나의 프로세스 내에서 실제로 작업을 처리하는 주체를 뜻합니다. 모든 프로세스는 하나이상의 스레드를 가집니다.

멀티 쓰레드

하나의 프로세스가 두개이상의 스레드를 가지는 경우 프로세스 내에 있는 각각의 스레드가 프로세스 메모리를 공유하기 때문에 자원을 절약할 수 있고 쓰레드간 정보 교환이 쉽나든 장점입니다.

동기 / 비동기 ***

sync - async 동기 방식은 기능에 대한 요청을 보내고 응답을 받아야만 동작이 순차적으로 처리되는 방식이며, 비동기 방식은 요청을 보내는 순서와 상관없이 동작이 처리되는 방식이다.

AJAX

async Javascript and xml 비동기적 자바스크립트와 XML의 약자로 일부 데이터만을 갱신하는 웹 개발 기법입니다. 비동기방식!!

컴파일 언어 , 인터프리트언어

컴파일 언어는 컴퓨터가 처리할 수 있는 기계어로 프로그램 실행 속도가 빠르다는 장점이 있다
반면에 인터프리트언어는 실행속도는 느리지만 디버깅은 훨씬 쉽습니다.

트랜잭션이 뭔지

  • 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위입니다.

객체가 뭔지

  • 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른것과 식별 가능한 것을 의미

객체화가 뭔지

  • 클래스를 참조하여 객체를 만드는 과정 인스턴스화 라고합니다. 클래스를 참조하여 객체를 만들고 그 객체를 메모리에 할당시켜 놓는 행위입니다.

SVN이 뭔지

  • SVN이란 Subversion으로 형상관리/소스관리 툴입니다.

오라클 CRUD 중 뭐가 가장 어려운지

  • READ가 어렵다고 생각합니다 왜냐하면 주어진 정보중에서 조건이 달릴 경우 조인문이 복잡해질수 있기 떄문입니다.

뭐가 가장 힘든지

  • 의사소통이 원할하지 않은것입니다.

오버라이딩, 오버로딩이 뭔지

  • 오버라이딩은 상속받은 메서드를 재정의 하는 것이고 오버로딩은 기존에 없던 새로운 메서드를 정의하는 것입니다. 매개변수와 타입을 다르게 해서 리턴타입은 달라도 됩니다.

콜백함수가 뭔지

  • 다른 함수의 인자로써 넘겨진후 특정 이벤트에 의해 호출되는 함수입니다.

메소드가 뭔지

  • 객체지향 프로그램에서 함수의 역할을 하며 멤버변수에 대해 접근권한을 갖습니다.

get post 방식 차이가 뭔지

  • get방식은 url에 뭍어서 데이터를 전달하며 보안에 취약한 점이 있으며 속도가 빠릅니다.(캐싱사용) 헤더에 담겨서 전달 반면에 post 방식은 URL에 표시되지 않고 body에 담겨 서버로 데이터가 전송됩니다. 대용량데이터에 유리합니다.

MVC가 뭔지,

  • model view controller를 뜻합니다. 하나의 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴입니다. 일종의 규약을 가진 디자인 패턴입니다. 유지보수의 편리성! 확장성 유연성 중복코딩의 문제점이 사라집니다.

펑션, 프로시저가 뭔지

  • 매개변수를 받아 여러 작업을 수행하여 값을 반환할 수 있다는 공통점이 있습니다.
    프로시저는 일종의 쿼리를 하나의 함수처럼 실행하기위한 쿼리의 집합입니다.
    함수는 하나의 목적을 수행하기 위해 설계된 코드의 집합입니다.
    함수가 여러 작업을 위한 기능이라면 프로시저는 작업을 정리한 절차입니다.

세션, 쿠키가 뭔지

  • 사용자의 정보가 저장되는 위치에 차이점이 있습니다. 쿠키는 클라이언트 에 저장되고 세션은 서버에 저장됩니다. 보안면에서 세션이 우수하며 속도 측면에서는 쿠키가 우수합니다.
    쿠키를 사용하는 이유는 서버의 자원을 사용하기 때문에 무분별하게 사용하면 서버가 감당할 수 없습니다.

데이터베이스 인덱스가 뭔지

  • 추가적인 저장공간을 활용하여 데이터베이스 테이블의 검색속도를 향상시키기 위한 자료구조입니다.

프레임워크가 뭔지

  • 개발에 정해진 틀입니다. 제어의 주체가 프레임워크에 있습니다.
    일정하게 짜여진 뼈대에 맞춰서 개발하는 것 입니다.

라이브러리가 뭔지

  • 소프트웨어를 개발하기 쉽게 어떤 기능을 제공하는 도구들이라고 할 수 있습니다.

API가 뭔지

  • 응용프로그램에서 데이터를 주고 받기 위한 방법입니다. 특정데이터를 공유할 경우 어떠한 방식으로 정보를 요청해야 하는지 어떻게 제공 받을수 있을지에 대한 규격들입니다. KAKAOMAP API등

자바 List, Set, Map이 뭔지

  • 자바의 컬렉션의 주요 인터페이스 입니다.
    순서와 데이터중복여부에 따라 나눌 수 있습니다
    List는 순서o 데이터중복 o
    Set은 순서x 데이터중복x
    Map은 key value 이며 key중복x value중복o

어노테이션이 뭔지

  • 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터(데이터에 관한 구조화된 데이터)입니다. 어노테이션은 클래스 파일에 임베디드 되어 컴파일러에 의해 생성된후 JVm에 포함되어 작동합니다.

디버그가 뭔지

  • 프로그램 개발 단계에서 시스템의 논리적인 오류나 비정상적 연산을 찾아내고 그 원인을 수정하는 작업입니다.

예외처리가 뭔지

  • 프로그램 실행 시 발생할 수 있는 예외에 대비하는 것으로 프로그램 비정상종료를 막고 실행 상태를 유지하는 것 입니다.

쓰레드가 뭔지

  • 프로세스 내에서 실제로 작업을 수행하는 주체를 의미합니다.

다형성이 뭔지

  • 하나의 객체에 여러가지 타입을 대입할 수 있다는 것입니다. 확장하거나 변형 코드의 길이를 줄여주는 역할을 합니다.

추상화가 뭔지

  • 공통의 속성이나 기능을 묶어 이름을 붙이는 것 입니다. 객체 지향 관점에서 클래스를 정의하는 것입니다.

생성자가 뭔지

  • 객체가 객체화 될 때 호출되는 특수 함수로 새로 생성된 객체를 쓰기 전에 초기화하는 것입니다.

지역 변수와 전역 변수는 뭐가 다른지

  • 전역변수는 함수 밖에서 선언하며 어디서든 접근 가능한 변수입니다. 지역변수는 함수 내에서 선언하며 블록 내에서만 접근 가능합니다. 유효한 범위가 정해져 있다는 것 입니다.

this와 super는 뭐가 다른지

  • this는 현재 클래스의 인스턴스를 의미합니다. super는 상속받은 부모 클래스의 멤버변수를 참조할때 사용합니다.

문자열 비교시 ==가 아닌 equals를 왜 써야하는지

  • ==연산자는 비교하고자 하는 두개의 대상의 주소값을 비교하는데 반해서 equals 메소드는 두개의 대상의 값 자체를 비교한다는 것 입니다. String은 클래스이기 때문에 주소값이 부여됩니다 따라서 값을 비교하는 equals메서드를 써야 합니다.

프로젝트 힘들었던 점..

  • 조원 한명이 중간에 힘들다고 나갔을떄 아무런 이야기도 하지 않고 나가서 힘들었고
    전부 비동기 방식으로 구성된 게시판이 있는데 순서를 명확하게 지정하기가 힘들었습니다.

0개의 댓글