교과목소개
 > 교육안내 > 교과목소개
모바일공학과 교과목소개
교과목명 | 교과목 소개 |
---|---|
프로그래밍언어 1 (Programming Language 1) |
시각 프로그래밍 언어의 개념과 원리를 이해하고, 시각 프로그래밍언어를 사용하여 소프트웨어 개발에 시각적인 도구를 활용하는 기법을 익히고, 기존의 개발방법과 비교하여 얻는 장점들을 알고, 편리한 인터페이스들을 사용할 수 있는 윈도우 프로그래밍 방법을 숙지한다. |
기초컴퓨터그래픽 (Basic Computer Graphics) |
컴퓨터를 활용하는 2D 그래픽 작업 수행에 필요한 조형, 색채 감각을 기반으로 컴퓨터그래픽의 발상과 표현기능들을 익히도록 한다. 특히 그래픽구성과 가공의 대상이 되는 각종 오브젝트의 표현법과 가공기법을 습득한다. |
세미나 (Seminar) |
모바일공학부와 모바일소프트웨어전공, 모바일컨텐츠전공에서 앞으로 배울 각종 주요 과목을 소개하고, 각 전공이 지향하는 목표와 취업분야 및 현업에 종사하고 있는 관련 업종들을 소개하며 현재 이슈가 되고 있는 주제를 선정하여 주요 분야별로 세미나를 개최한다. |
자료구조 (Data Structures) |
자료구조의 기본개념, 알고리즘과의 관계, 배열과 리스트, 트리 및 그래프의 개념 등에 대하여 알아보고, 정렬과 탐색 문제에 대하여 학습하고, 이를 바탕으로 자료구조를 이용한 프로그래밍 실습을 통해 응용 방법을 배운다. |
프로그래밍언어 2 (Programming Language 2) |
소프트웨어 구현 시 가장 널리 사용되는 C언어의 기본개념과 문법구조에 대해 학습하고, 직접 실습하여 컴퓨터 프로그래밍 능력과 논리적 사고력을 향상시킨다. |
컴퓨터그래픽응용실습 (Computer Graphic Application Practice) |
2D 컴퓨터그래픽 이미지 구성을 위한 이미지 가공 능력을 도구인 이미지 프로세서의 원리와 기능 습득을 통해 익히도록 한다. 특히 다양한 실습 작품 제작을 통해 필터 효과를 적용한 이미지 변형, 합성, 복제 기법 등 2D이미지의 표현 능력에 숙련성을 갖추도록 한다. |
디지털 설계 (Digital Design) |
디지털 시스템의 동작원리와 회로 구성의 기본이 되는 게이트의 특성을 배우고, 이를 구현한 각종 조합논리회로의 동작과 기능을 배운다. 또한 순차회로의 기본인 플립플롭의 특성과 그를 이용한 순차논리회로의 설계 방법을 배운다. |
객체지향 프로그래밍 (Object Oriented Programming) |
객체지향 윈도우즈 프로그래밍 작성 방법과 객체지향적인 프로그램 작성을 위하여 C 및 C++언어에 대한 전반적인 학습과 마이크로소프트사의 Visual C++을 사용하여 윈도우즈 프로그램을 개발하기 위한 방법과 제공되는 멤버함수와 클래스의 사용법에 대해 학습한다. |
컴퓨터구조 (Computer Architecture) |
컴퓨터의 구성과 설계에 대한 개념을 소개하고 데이타의 표시방법, 레지스터 전송과 마이크로 동작, 컴퓨터 소프트웨어를 위시하여 연산, 제어, 기억, 입출력 장치의 구조와 설계기법을 다룬다. 이를 바탕으로 논리회로 및 마이크로프로세서 트레이너로 실습한다. |
게임수학 (Game mathematics) |
최신 게임의 흐름을 반영하여 게임 개발에 가장 필요한 수학과 물리의 기초지식을 익힘으로써 게임 프로그램 개발을 위한 기반을 익힌다. |
오토마타이론 (Automata Theory) |
컴퓨터와 관련된 이론적인 바탕과 작동 원리를 정확하게 이해하므로서 하드웨어와 소프트웨어의 기초를 다지고, 컴파일러나, 프로그래밍언어의 동작원리를 알 수 있다. 유한 오토마타, 정규문법과 정규언어, 문맥자유언어, 푸쉬다운 오토마타, 튜링머신 등 각종 오토마타, 문법, 언어와 이들의 응용에 대하여 배운다. |
TOEIC 1, 2 | 대표적인 영어 능력 측정 프로그램인 토익의 다양한 학습을 통해 영어 말하기, 듣기, 독해력을 향상시켜 영어 활용능력을 극대화시킨다. |
현장실습 (Field Practice) |
멀티미디어, 소프트웨어, 모바일 분야의 현장 실습은 소프트웨어 제작 및 프로그래밍, 웹 디자인 분야 및 컴퓨터그래픽, 시스템관리, 휴대폰 및 PDA 모바일 컨텐츠 분야 등에서 산학협력을 통한 전공관련 분야의 산업체에서 업무에 동참하는 경험을 통해 실무 지식 축적 및 예비 취업 기회로 활용한다. |
컴퓨터 네트워크 (Computer Networks) |
정보 통신의 정의와 기본 원리 및 구조, 모델, 시스템, 통신관련 기술, LAN, WAN, VAN, ISDN 통신망 등의 기초 내용을 학습한다. 소형 컴퓨터와 대형 컴퓨터 또는 PC와 PC를 연결하는 LAN을 이용하여 메시지를 교환하고 이를 활용하여 각종 분산 응용을 개발하기 위한 개념 및 기초 기술을 습득케 한다. |
인터넷보안 (Internet Security) |
다양한 형태의 해킹 및 시스템 공격 유형에 대해서 이해하고, 이의 해결 방안을 익히며, 보안과 관련하여 암호화 기법, 인증방법등에 대해 배운다. |
운영체제 (Operating System) |
컴퓨터 하드웨어를 효율적으로 관리하여 컴퓨터를 편리하게 사용할 수 있도록 하는 프로그램관리, 처리기, 기억장치, 주변 장치의 관리 등의 운영체제의 기본 원리와 기능을 배우고, UNIX시스템을 기초로 실제 운영체제의 동작원리를 익힌다. |
알고리즘설계 (Algorithm Design) |
문제가 주어졌을 때 해답이 되는 알고리즘을 만들어 내는 것을 알고리즘의 고안(design)이라 하고, 알고리즘의 옮음(correctness)과 효율(efficiency)을 가려내는 것을 알고리즘의 분석(analysis)이라고 한다. 본 과목에서는 알고리즘에 대한 기초지식을 습득하고 알고리즘의 표현, 분석, 설계방법을 습득한다, 기존에 개발된 알고리즘을 주제별로 구분하여 이해라고 이와 유사한 문제에 대한 해결방법을 습득한다. 난이도가 잇는 문제들인 NP완전 문제, 병렬알고리즘, 분산알고리즘들에 대한 접근방법과 이들을 고안하는 과정 등을 소개한다. |
컴퓨터 그래픽스 (Computer Graphics) |
컴퓨터를 사용한 도형과 영상들을 처리하는 데 필요한 기본적인 이론과 스크린 조작 및 애니메이션, 영상처리 프로그램 작성능력을 함양하고 오퍼레이션 시스템, 하드웨어를 포함한 전체 컴퓨터 환경을 컨트롤 할 수 있는 유연성 있는 프로그램 작성 기술을 익힌다. |
네트워크 프로그래밍 (Network Programming) |
컴퓨터 네트워크의 기본 원리와 구조를 이해하고, 운영체제와 네트워크 서비스 소프트웨어들의 관리방법을 익히고, 컴퓨터 네트워크상에서 통신을 할 수 있는 기본적인 소프트웨어 개발방법을 터득하여 컴퓨터 통신을 응용한 각종 소프트웨어들을 제작한다 인터넷상에서 컴퓨터 통신을 하기 위해 TCP/IP 프로토콜을 이용하고 윈도우즈와 UNIX상에서 동작하는 네트워크 소프트웨어들을 개발한다. |
차세대 컴퓨터 기술 (The Next Generation Computer Technology) |
미래의 컴퓨터 기술들을 조사하고, 개념과 이론을 이해하고, 기술 로드맵에 따른 기술 동향을 파악한다. 사례로 최근 관심을 가지고 연구중인 USN(Ubiquitous Sensor Networks)에 대한 원리와 구조를 이해하고, 실습을 통해 실무능력을 배양하고, 응용할 수 있는 기술을 습득한다. |
객체지향프로그래밍언어 (Objected Oriented Programming Language) |
객체지향언어의 개념과 특성에 대하여 이해하고, 클래스의 개념과 정의방법, 상속, 가상함수, 함수 오버로드와 연산자 오버로드 등 C++의 객체지향적 요소를 학습하고, Visual C++를 이용하여 실습하여 프로그램의 구현방법도 학습한다. |
데이터베이스 설계 (Database Design) |
데이터베이스의 설계기법을 배우고 이를 응용하여 실제 데이터베이스를 설계하고 구현한다. 구현을 위해서는 데이터베이스 개발 도구와 데이터베이스 시스템의 사용법을 익히고 이를 이용하여 데이터베이스 프로그래밍을 실습한다. 또한 데이터베이스의 회복기법, 병행 수행제어, 보안과 무결성, 분산 등의 이론도 공부한다. |
인터넷 프로그래밍 (Internet Programming) |
컴퓨터 네트워크의 기본 개념과 상위 수준의 응용기술을 살펴보고, 객체 지향 언어인 자바의 기본 개념과 사용법을 익히고, 웹 상에서 자바를 이용한 동적인 홈페이지를 작성할 수 있다. |
멀티미디어 프로그래밍 (Multimedia Programming) |
문자, 오디오, 비디오, 보이스, 애니메이션 등의 멀티미디어 데이터를 이용한 응용 소프트웨어를 개발하기 위하여 정보압축기술, 데이터베이스기술, 정보검색기술, 저작도구기술, 개발환경구성기술 및 멀티미디어 작성 툴의 실습을 통하여 멀티미디어 프로그래밍 능력을 배양하도록 한다. |
마이크로프로세서 (Microprocessor) |
마이크로프로세서의 개념과 구조를 이해하고, 응용할 수 있는 능력을 실습을 통해 익힌다. 마이크로 컨트롤러로 많이 활용하고 있는 AVR 시리즈중 ATmega128 의 구조와 기능을 이해하고, 회로를 구성하여 펌웨어를 제작하여 동작할 수 있는 과정을 실습한다. C컴파일러를 이용하여 프로그래밍하고, 디버깅하는 능력을 배양한다. |
임베디드시스템 1,2 (Embedded System 1,2) |
임베디드시스템 제작에 필수적인 실시간 운영체제의 원리와 기능을 이해하고, 범용적으로 사용하고 있는 대표적인 운영체제인 Embedded Linux 운영체제를 실습을 통해 익혀 임베디드 시스템에 포팅하고, 응용할 수 있는 능력을 향상시킨다. |
유닉스시스템 (Unix System) |
유닉스시스템을 사용하여 컴퓨터 하드웨어를 효율적으로 관리하여 컴퓨터를 편리하게 사용할 수 있도록 하는 프로그램관리, 처리기, 기억장치, 주변 장치의 관리 등의 운영체제의 기본 원리와 기능을 배우고, 운영체제 실습을 한다. |
데이터베이스 응용 (Database Application) |
데이터베이스 기본 이론과 SQL언어를 기반으로 데이터베이스를 설계하여 데이터베이스 시스템을 운영하고, 응용방법으로 웹서비스와 연동 하는 기술과 클라이언트, 서버시스템에 적용될 기술들을 익혀 활용 범위를 확대한다. |
웹프로그래밍 (Web Programming) |
고급의 홈페이지 제작에 필수적인 CGI(Common Gateway Interface)와 동적 기법을 적용할 수 있는 웹 프로그래밍 언어들인 PHP, ASP, Java servlet, JSP등의 프로그래밍 능력을 향상시킨다. |
소프트웨어 프로젝트 (Software Project) |
여러 종류의 소프트웨어들의 작성 연습을 통한 고급의 상용 프로그램 개발이 가능하도록 실무 능력을 배양한다. 소프트웨어 개발 생명 주기 전 과정에 걸쳐 다양한 기법 및 도구를 소개하고 직접 설계 할 수 있도록 함으로써 관련 기술을 효과적으로 활용하도록 한다. 소프트웨어공학에서 배운 내용을 기초로 하여 실제 응용 프로그램을 작성한다. 응용 소프트웨어 주제를 정하여 소프트웨어 설계 방법과 테스트 과정과 검증 및 운영에 필요한 기법들을 적용하여 사례 발표를 한다. |
디지털 영상처리 (Digital Image Processing) |
디지털 영상처리의 기본 개념들과 방법들을 실습을 통하여 개념을 정립하고 영상처리의 실무 능력을 배양한다. 영상으로부터 유용한 정보를 추출하는 기본적인 알고리즘과 기본적인 정보를 합성하여 영상을 인지하고 판단하는 고차원의 인공 지능적 처리 방법을 다룬다. |
모바일컨텐츠 (Mobile Contents) |
무선인터넷분야에 대한 기본적인 이론과 무선인터넷 컨텐츠 개발환경을 구축하는 방법과 무선인터넷분야의 컨텐츠를 제작할 수 있는 마크업 언어인 WML, mHTML, HDML등을 이해하고, WAP, ME기반 모바일 컨텐츠 개발과정을 배우며, 무선인터넷 저작도구를 이용하여 모바일컨텐츠를 개발하여 실무를 익힌다. |
모바일 시스템 프로젝트 (Mobile System Preject) |
모바일시스템을 대상으로 개발되는 각종 컨텐츠들의 제작과정을 이해하고, 핸드헬드PC, 포켓PC, 스마트폰, PDA에서 사용할 수 있는 소프트웨어를 제작하는 개발환경을 구축하고, 컨텐츠를 개발하므로써 모바일 산업 현장에서 필요한 실무를 익혀 적응능력을 배양한다. |
모바일 콘텐츠 프로그래밍 & 응용1,2 (Mobile Contents Programming & Applications 1,2) |
셀룰러폰, 스마트폰, PDA에서 널리 사용하고 있는 각종 컨텐츠를 개발하기 위해 서비스사별로 GVM기반에서 Mobile C를 이용한 개발환경과 모바일VM기반에서 J2ME를 이용한 개발환경을 이해하고, 게임, 네트워크서비스, 유무선연동서비스 등의 기초적인 컨텐츠를 제작하여 개발과정을 이해하고, 응용 능력을 배양한다. |
임베디드 시스템 응용 (Embedded System Application) |
임베디드 시스템의 기본 원리와 이론을 이해하고, 임베디드 시스템의 한 종류인 임베디드 리눅스 시스템을 이용하여 임베디드 시스템 하드웨어 제어, 개발환경, 크로스 컴파일러, 커널 설정, 디바이스 드라이버, Qt/Embedded 프로그래밍 등을 배워 모바일시스템의 PDA, 스마트폰, 셀룰러폰의 시스템 개발과 소프트웨어 제작 실무를 배양한다. |
무선이동통신 개론 (Introdution to the Mobile Telecommunication) |
언제, 어디서나, 누구와도 즉시 통신을 추구하는 이동통신은 인간이 추구하는 통신의 최종 형태라고도 볼 수 있는 중요한 기술로서, 셀룰러통신, CT기술, 개인통신망기술, TDMA, CDMA, IMT2000 등 그 주요 기술 및 응용시스템을 학습한다. |
모바일 시스템 응용 (Mobile System Application) |
일반적인 PC에서 사용하는 마이크로소프트 원도우즈나 리눅스 등의 운영체제와 달리 네트워크 장비, PDA등의 디지털 기기, 공장 제어장비 등에 탑재되는 시스템 소프트웨어를 의미한다. 이러한 장비들은 특수한 용도로 사용되는 경우가 많아 실시간 성능과 작은 크기를 절대적으로 요구하기 때문에 논리의 정확성에 시간의 정확성을 요구하는 시스템인 실시간 운영체제가 필요하다. 이러한 실시간 운영체제의 원리와 종류를 이해하고, 실습한다. |