13주 실습강의 2009. 1학기, 소프트웨어 설계 및 실험(Ⅰ).

Slides:



Advertisements
Similar presentations
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Advertisements

.Net History. Visual Studio.Net 2002 /.Net Framework 1.0 제품의 버전 / 특징 2002 년 - Visual Studio.Net 2002 /.Net Framework 1.0 첫 통합 개발 환경 - C# 언어 등장 (C# 1.0)
컴퓨터와 인터넷.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
MS SQL Server 학기, 소프트웨어 설계 및 실험 ( Ⅰ )
Chapter 16 : Struts 프레임워크 2. chapter 16 : Struts 프레임워크 2.
Local Connection과 InkPresenter 학기, 소프트웨어 설계 및 실험(Ⅰ)
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
Power Java 제3장 이클립스 사용하기.
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
최윤정 Java 프로그래밍 클래스 상속 최윤정
주)INVENTORNICS 노창배 소프트웨어 김 경 순
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Power Java 제2장 자바 개발 도구.
C 언어 1 1주차 C언어 시작하기 - 1차시 C 언어 특징 및 프로젝트 생성 Programming Language.
시스템집적반도체 설계 검증 환경과 기법 Ch 7.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
운영체제 박상민.
Ubiquitous Computing Practice - Part I (Installation) -
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
25강. Security-I 보안 관련 프로젝트 생성 보안 관련 라이브러리 추가 보안 관련 설정 파일 만들기
Visual Basic .NET 처음 사용하기.
1. C++ 시작하기.
26. 매크로와 전처리기.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
모바일 자바 프로그래밍 JDBC / WAP Ps lab 오민경.
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
Chapter 03 : 서블릿 ( Servlet ) 개요. chapter 03 : 서블릿 ( Servlet ) 개요.
10장. 예외처리.
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
Grade Server Team14. Attention Seeker
3강. JSP 맛보기 JSP 문서 작성 하기 JSP 아키텍처 Lecturer Kim Myoung-Ho Nickname 블스
Method & library.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
영상처리 실습 인공지능연구실.
MVC 모델을 이용한 웹 애플리케이션 작성 웹 애플리케이션 개발 순서를 알아본다 웹 애플리케이션의 실행 순서를 이해한다.
Smart Workplace 개발자 가이드
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
AUTODESK AUTOCAD ELECTRICAL 전기제어 2D 설계 소프트웨어 표준기반 설계 생산성 도구 구조도 설계
Lab 8 Guide: 멀티스레딩 예제 2 * Critical Section을 이용한 멀티스레딩 동기화 (교재 15장, 쪽)
자바 5.0 프로그래밍.
텍스트 분석 기초.
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
PMIS 서버 설정 환경설정 작성자 : 배경환.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
12주 실습강의 학기, 소프트웨어 설계 및 실험(Ⅰ).
OpenCV 설정 2.21 만든이 딩딩.
DK-128 개발환경 설정 아이티즌 기술연구소
STS 또는 Eclipse 에서 프로젝트를 Export 하고 Import 하는 방법
13주 실습강의 학기, 소프트웨어 설계 및 실험(Ⅰ).
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
프로그래밍 언어 학습을 위한 가상실습환경 창원대학교 이수현.
Installation Guide.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
학부 컴퓨터공학부 교육과정 (학부) 2학년 4학년 3학년 1학년 1학기 2학기 IPP 자격과정 전공트랙
29장. 템플릿과 STL 01_ 템플릿 02_ STL.
CHAP 15. 데이터 스토리지.
CODE INJECTION 시스템B 김한슬.
J2SE 설치 부산대학교 인공지능 연구실.
Presentation transcript:

13주 실습강의 2009. 1학기, 소프트웨어 설계 및 실험(Ⅰ)

정보 검색의 간략한 과정 문서 수집 문서 전처리 문서 분석 문서 색인 역파일 생성 역파일 저장 문서 검색 수작업, robot 색인어 사전 구축, 색인어와 문서 id 부여 역파일 생성 색인어 기준으로 각 문서 내용 정렬 문서를 색인어별로 merge 역파일 저장 문서 검색 질의어 색인 질의 오늘 할 부분 – 문서 색인, 질의어 색인

Friends, Romans, countrymen. Inverted index 생성 Tokenizer Token stream. Friends Romans Countrymen Linguistic modules Modified tokens. friend roman countryman Indexer Inverted index. 2 4 13 16 1 색인 Documents to be indexed. Friends, Romans, countrymen.

Linguistic modules n-gram 형태소 분석기 Term을 n개의 음절로 나누는 것 “정보검색”에 대한 2-gram(bigram)은 “정보”, “보검”, “검색”이다. 일반적으로 한글은 2-gram, 영어는 4-gram을 많이 사용 간단하지만 성능은 좋지 않다. 형태소 분석기 주어진 문장을 문법상 의미가 있는 최소단위(형태소)로 분리 자연어처리에 필요한 기초 기술 신조어와 구어에 약점을 지닌다. 영어에 비해 한글의 형태소 분석은 어렵다. 일반적으로 약 95% 이상의 성능

실습 - 색인 부산대 인공지능연구실의 형태소 분석기를 이용해서 문서와 질의어를 색인한 뒤 검색 색인서버와 통신하여 결과를 받아오는 형태 ATL COM DLL로 제공

COM 컴포넌트 개체 모델(Component Object Model, COM) 목적 : 특정한 기능을 갖는 컴포넌트를 여러 어플리케이션에 재사용 가능 컴포넌트 소프트웨어의 조건 언어 독립적 C++로 작성하더라도 C#에서 사용 가능 이진(binary) 형태로 제공 Win32 DLL 또는 EXE로 생성된 실행 코드 버전 호환성 제공 위치 투명성(location transparency) 제공 COM 컴포넌트를 사용하는 어플리케이션은 COM 컴포넌트가 설치되고 실행하는 위치에 관계없이 사용 가능

ATL(Active Template Library) C++의 템플릿(template)을 사용하여 작성된 클래스 라이브러리 MFC와 ATL MFC 풍부한 사용자 인터페이스 컴포넌트가 무거워짐 속도가 느림 ATL MFC 수준의 사용자 인터페이스를 제공하지 않음 프레임워크, 실행 라이브러리를 필요로 하지 않음 작고 빠른 COM 컴포넌트를 생성하는데 적합

ATL COM DLL 장점 단점 실버라이트로 해결하기 어려운 문제를 해결할 수 있다. C++로 되어있다. 디버깅이 어렵다. 파일 접근, 소켓 통신 등 C++로 되어있다. 익히기 쉬움 C++ 대부분의 문법을 사용 가능 단점 디버깅이 어렵다. 로그 파일 등으로 해결 DLL 파일을 지우고 다시 쓰는 것이 번거롭다. DLL을 실행하고 있는 프로세스를 직접 찾아서 꺼야 함. procexp.exe를 사용하여 DLL을 찾을 수 있다. http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

실습 – ATL COM DLL 만들기

실습 – ATL COM DLL 만들기 프로젝트 -> 추가 -> 클래스 추가 -> ATL Active Server Page 구성 요소

실습 – ATL COM DLL 만들기 약식 이름을 적고 다음 버튼을 누른다.

실습 – ATL COM DLL 만들기 스레딩 모델 : 모두 지원 : 자유 스레드된 마샬러

실습 – ATL COM DLL 만들기 클래스 뷰 -> Interface선택(IMyStrObj) -> 추가 -> 메서드 추가

실습 – ATL COM DLL 만들기

실습 – ATL COM DLL 만들기 stdafx.h #include <comdef.h> 추가 STDMETHODIMP CMyStrObj::Append(BSTR str_1, BSTR str_2, BSTR* result) { // TODO: 여기에 구현 코드를 추가합니다. _bstr_t bstr1 = str_1; _bstr_t bstr2 = str_2; bstr1 += bstr2; *result = bstr1.Detach(); return S_OK; }

실습 – ATL COM DLL 사용 *.Web project -> 참조 추가 -> COM tab -> DLL 선택 WCF 서비스 추가 실행 결과 [OperationContract] public string Append(string str1, string str2) { MyStringLib.MyStrObjClass mystr = new MyStringLib.MyStrObjClass(); return mystr.Append(str1, str2); }

실습 – ATL COM DLL 사용 색인기 사용 실행 결과 시작 – 실행 - regsvr32 “c:\폴더\LinguisticModule.dll” 참조 추가 LinguisticModuleLib.LinguisticObjClass 생성 getIWords() 함수 사용 실행 결과

실습 문서 색인 질의어 색인 새 글쓰기에서 색인기를 사용. ‘|’와 ‘ ’(공백)으로 tokenize 지난 주 실습했던 AND, OR 연산을 수정하여 우선순위 적용 OR 연산 수행 후 AND 연산 수행 예) A B|C ‘B’와 ‘C’를 먼저 OR 연산한 후 ‘A’와 AND 연산한다.