11. 다음 중 헝가리안 표기법(Hungarian Notation)에 대해서 서술하시오.
정답 : 변수명 작성시 변수명에 자료형을 구분지을 수 있는 접두어를 달아 표기하는 방법
해설 :
- 헝가리안 표기법(Hungarian Notation) : 변수명 작성시 변수며에 자료형을 구분지을 수 있는 접두어를 달아 표기하는 방법
- 카멜 표기법(Camel Notation) : 맨앞의 단어는 전체 소문자로, 그 뒤에 따라오는 단어들은 앞 한글자만 대문자로 표기 나머지는 소문자로 표기하는 방법(helloWorld)
- 파스칼 표기법(Pascal Notation) : 모드 단어들의 앞 한글자를 대문자로 표기하고 나머지는 소문자로 표시한다.
12. 테스트의 종류 중, 동치 분할 테스트, 경계값 분석 테스트 등의 종류가 있는 테스트 기법을 쓰시오.
정답 : 블랙 박스 테스트 (명세 기반 테스트)
해설 :
블랙 박스 테스트의 종류로는
- 동치 분할 테스트 : 프로그램의 입력 데이터를 여러 분류로 나누어 검사
- 경계값 분석 : 입력값의 경계값을 중심으로 예외 발생 검사
- 원인-결과 그래프 기법 : 입력데이터 간의 관계, 출력에 미치는 영향에 대한 분석 그래프 이용
- 오류 예측 기법 : 테스터의 감각이나 경험, 지식을 통해 에러케이스를 예측
- 비교 검사 : 테스트 대상과 비교 대상 프로그램에 같은 입력값을 넣어 데이터를 비교
13. 다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.
#include <studio.h>
int r1(){
return 4;
}
int r10(){
return (30+r1());
}
int r100(){
return (200+r10());
}
int main(){
printf("%dn", r100());
return 0;
}
정답 : 234
해설 : 200+(30+(4))
14. 데이터베이스에서 스키마(Schema)에 대해 간략히 설명하시오.
정답 : 데이터베이스의 전체적인 구조와 제약조건에 대한 명세로 내부 스키마와 외부 스키마로 나뉜다.
해설 :
스키마(Schema)
데이터베이스의 전체적인 구조와 제약조건에 대한 명세
내부 스키마(Internal Schema)
- 물리적 저장 장치 관점에서 본 DB의 물리적인 구조
개념 스키마(Conceptual Schema)
- 논리적 관점에서 본 전체적인 데이터 구조
- 사용자들이 필요로하는 통합 조직의 데이터베이스 구조
- View(뷰)라고도 불림
외부 스키마(External Schema)
- 사용지 관점에서 논리적인 구조
- 서브 스키마, 사용자 뷰라고도 한다.
15. 다음은 자바(Java) 코드이다. 출력 결과를 쓰시오.
abstract class vehicle{
private String name;
abstract public String getName(String val);
public String getName(){
return "vehicle name:" + name;
}
public void setName(String val){
name = val;
}
}
class Car extends Vehicle{
public Car(String val){
setName(val);
}
public String getName(String val){
return "Car name : " + val;
}
public String getName(byte val[]){
return "Car name : " + val;
}
}
public class good {
public Static void main(String[] args){
Vehicle obj = new Car("Spark");
System.out.print(obj.getName());
}
}
정답 : Vehicle name: Spark
해설 :
Car 객체에 파라미터로 Spark를 주었는데 Car의 생성자에서 setName(val)을 함으로써
Spark가 이름으로 저장되고
obj.getName()을 실행하였는데, 오버로딩된 getName 메소드 중 파라미터가 없는 메소드는
vehicle 클래스의 getName()이므로 Vehicle name: Spark을 출력
16. UI 설계 원칙 중 직관성에 대해 설명하시오.
정답 : 누구나 쉽게 이해하고, 사용할 수 있어야한다.
해설 :
UI(User Interface)
종류
- CLI(Command Line Interface) : 명령과 출력이 텍스트 형태로 이루어지는 인터페이스
- GUI(Graphic User Interface) : 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 인터페이스
- NUI(Natual User Interface) : 말이나 행동으로 조작하는 인터페이스
기본 원칙
- 직관성 : 누구나 쉽게 이해하고 사용할 수 있어야 한다.
- 유효성 : 사용자의 목적을 정확하게 달성하어야 한다.
- 학습성 : 누구나 쉽게 익힐 수 있어야한다.
- 유연성 : 사용자의 요구사항을 최대한 수용하고, 오류를 최소화하여야 한다.
17. 다음은 자바(Java) 코드이다. 출력 결과를 쓰시오.
public class Test{
public static void main(String []args){
int i=0;
int sum=0;
while (i<10){
i++;
if(i%2==1)
continue;
sum += i;
}
System.out.print(sum);
}
}
정답 : 30
해설 : 0 + 2 + 4 + 6 + 8 + 10
18. EAI 유형에는 메세지 버스(Message bus) 유형, 하이브리드(Hybrid) 유형, ( A ) 유형, ( B ) 유형이 있다. 괄호안에 들어갈 말을 적으시오.
정답 :
A. 포인트 투 포인트(Point-to-point)
B. 허브 앤 스포크(Hub & Spoke)
해설 :
EAI (기업 애플리케이션 통합, Enterprise Application Intergration)
엔터프라이즈의 미들웨어를 인프라로 하여 다양한 이질적 기업환경(애플리케이션, 데이터, 플랫폼 및 네트워크 등)을 통합하여 하나의 시스템으로 관리 운영할 수 있는 유기적 시스템
EAI 통합 방식
Peer to Peer (Point-to-Point, 포인트 투 포인트)
- 중간 미들웨어 없이 애플리케이션 간 별도의 통신으로 연계
Hub & Spoke (허브 앤 스포크)
- 단일 접점으로 주변과 연계하는 일종의 중앙집중 방식
Messaging Bus
- 메세지 전송로(버스)를 통해 데이터가 전달되도록 하는 방식
Hybird
- Hub & Spoke 방식과 Message Bus 방식의 혼합
- 그룹 내에서는 Hub & Spoke, 그룹 간에는 Messaging Bus를 활용
19. C++에서 생성자란 무엇인지 쓰시오.
정답 : 해당 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드
해설 : 해당 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드
20. 학생 테이블에 주소 속성을 추가하는 SQL문을 작성하려고 한다. 빈 칸을 채우시오.
( A ) TABLE 학생 ( B ) 주소 VARCHAR(20);
정답 : A : ALTER B: ADD
해설 : 전체적으로 2021년 문제보다 2020년 문제가 쉽다.