전주대학교

전공교과소개

컴퓨터공학과 전공 교과목 소개입니다. ※ 출처: 학사 DB

과목명 소개
C프로그래밍 (C Programming) 컴퓨터공학 분야에서 요구되는 기본적인 프로그래밍 기법에 대해서 다룬다. 이를 위하여 C언어의 기본 문법을 바탕으로 하여 배열, 포인터, 입출력함수, 기초 데이터구조 등에 관련된 프로그램 방법을 다룬다.
소프트웨어기초설계 (Basic Design of Software) 소프트웨어공학 등 컴퓨터공학의 전문적인 지식의 습득없이 단지 컴퓨터공학에 대한 공학적 소양만을 가지고 팀 단위로 실제 프로젝트를 수행하며, 세미나와 토론을 통해 분석, 설계 , 구현, 테스트, 발표 등을 진행한다
컴퓨터개론 (An Introduction to Computer) 컴퓨터 하드웨어 및 소프트웨어의 구성, 프로그래밍 언어와 작성방법, 운영체제, 정보통신등 컴퓨터의 제분야에 대하여 기본적인 개념과 원리를 배운다. 컴퓨터 기술의 현황과 발전방향에 대하여 이해하고 컴퓨터공학을 전공하기 위한 기본능력을 배양한다

과목명 소개
자바프로그래밍 (Java Programming) 자바를 이용하여 객체지향 프로그램의 개념을 이해하고 관련 소프트웨어를 개발하는 능력을 배양하는 것을 목적으로 한다. 이를 위해 데이터타입, 변수, 제어구조, 함수, 데이터구조, 그리고 구조적 프로그램설계를 학습하며, 객체지향 설계 및 프로그래밍에 대해서도 다룬다.
데이터구조 (Data Structure) 컴퓨터 프로그래밍에 필요한 데이터 객체 표현의 기본 개념과 필요성 그리고 지금까지 개발된 기본적인 데이터 구조들인 배열, 스택, 큐, 연결리스트, 트리, 그래프 등을 다루고, 이러한 데이터 구조들의 응용방법과 최근의 고급 데이터 구조들을 다룬다.
운영체제 (Operating System ) 컴퓨터 시스템의 필수적인 교과로서, 운영체제가 무엇이고, 어떻게 설계되고, 구축되는지에 대해 설명한다. 현대 운영체제의 핵심인 프로세스 관리, 저장장치 관리, 입출력 시스템, 분산 시스템, 보호 및 보안을 설명하고, 마지막으로 기존에 개발된 운영체제들의 사례연구를 살펴본다.
컴퓨터구조 (Computer Architecture) 조합 논리회로의 분석과 설계, 동기 순차회로의 분석과 설계 및 레지스터 전달논리의 개념을 다루며, 메모리 모델의 소개, 명령어 집합, 프로그래밍 적재 및 어셈블러 제어장치, 입출력 시스템, 병렬처리 등을 다룬다.
객체지향프로그래밍 (Object Oriented Programming) 객체지향 프로그래밍 언어인 JAVA 프로그래밍 응용에 대해서 다룬다. 이를 위하여 객체지향 모델링에 대하여 공부하고, 이를 바탕으로 JAVA 언어를 이용하여 클래스를 구현한다. 팀 프로젝트를 수행함으로써 객체지향기법을 이용한 실제적인 자바 응용프로그래밍을 경험해 본다.
논리회로 (Logic Circuit) MSI, LSI를 이용한 레지스터 논리부와 카운터와 메모리 설계 레지스터 전송논리를 이용한 프로세서의 설계를 다루며, ROM, PLA에서의 설계와 컴퓨터에서 사용되는 IC의 종류 및 특성, 조합회로, 순차회로의 종류를 다룬다.
서버관리 (Server Management) MS-Windows 서버와 유닉스/리눅스 서버 관리능력을 배양한다. 특히 파일시스템의 보안을 소개하고 서버의 전반적인 관리능력을 배양한다.
웹프로그래밍1 (Web Programming 1) 웹 서비스의 기본 개념을 이해하고, 기본적인 웹 문서의 작성 기술들에 대해 공부한다. 특히 HTML, Javascript와 같은 클라이언트 쪽에서의 웹 프로그래밍 기술과 PHP(또는 ASP)와 같은 서버쪽에서의 기본적인 웹 프로그래밍 기술들에 대해 공부한다.

과목명 소개
정보.컴퓨터교과교육론 (Methodology of Education for Information & Computer) 컴퓨터교육의 개념과 컴퓨터 교육과정, 컴퓨터 교육 교수-학습 내용, 컴퓨터 교육교재, 컴퓨터 교육 평가 등 컴퓨터 교육에 대한 전반적인 내용을 학습한다.
정보.컴퓨터교과교재및연구법 (Research & Guidance of Education material in Information & Computer) 교육실습 과정을 원만히 이수할 수 있도록 컴퓨터 수업지도안 작성법을 익히고, 교육내용, 발표, 태도, 언어구사 방법 등 수업에서 필요한 내용을 실습을 통해 학습한다.
데이터베이스 (Data Base) 데이터베이스를 구축하는데 필요한 데이터베이스의 개념과 이론을 정립한다. 데이터베이스의 개념, DBMS, Data Model, 관계 데이터베이스의 구조, 연산, 질의어, 정규화과정 및 데이터베이스 설계에 대하여 공부하고, 고급과정인 질의어 처리, 회복, 병행제어, 객체지향 데이터베이스 등에 대해서도 공부한다.
소프트웨어공학 (Software Engineering) 소프트웨어의 생산성과 재사용성을 향상시키기 위한 소프트웨어 개발의 공학적 접근법과 CASE(Computer Aided Software Engineering) 등을 학습한다. 소프트웨어 개발 수명주기에 대한 이해와 생산성 향상, 그리고 스프트웨어 품질관리를 위한 방법론을 다룬다.
컴퓨터네트워크 (Computer Networks) 데이터 통신의 기본적인 원리를 공부하고, 이를 바탕으로 하여 데이터링크 기능, 망 기능, LAN, TCP/IP, 보안, 응용 프로토콜 등 컴퓨터 네트워크 기능에 관련된 중요한 프로토콜 구조와 원리에 대하여 다룬다.
데이터베이스프로그래밍 (Database Programming) 데이터베이스 활용 기법을 습득하기 위하여 Oracle DBMS에서 Oracle의 개념과 SQL, SQL*PLUS, 고급질의 등에 대하여 실습을 통해 그 방법을 습득한다. 또한 PL/SQL을 사용하여 데이터베이스와 프로그래밍 언어와의 통합 기법 등을 공부하여 클라이언트/서버 환경 및 웹 환경에서 데이터베이스를 구축할 수 있는 능력을 배양한다.
데이터통신 (Data Communication) 일반 데이터 통신망에서 사용되는 통신장비에 대하여 알아보고, 이들의 동작 원리를 공부한다. 특히 디지털 통신의 원리에 대하여 중점적으로 다루며, 컴퓨터 망의 기초가 되는 물리계층, 데이터링크 계층, 망 계층의 동작원리에 대해서도 공부한다.
디지털회로실험 (Digital Circuit Experiment) 강의내용으로는 논리회로 소재, 부울대수 및 조합, 논리회로 설계, 가산기, 인코더/디코더 설계, 등이 포함된다. 또한 디지털 IC를 이용하여 AND, OR, INVERTER, NOR, NAND 등 각종 게이트 회로를 설계한다.
시스템응용및보안 (Security of system and applications) 본 교과에서는 인터넷 실습 환경에서 웹 해킹과 보안 설정 방법을 알아본 후, 웹과 데이터베이스의 서버 보안 설정을 학습한다. 또한 암호와 보안 전략을 알아봄으로써 인터넷 해킹과 보안에 관한 내용을 각 단원별로 나누어 체계적으로 공부한다. 주요 교과 내용으로는 인터넷 서비스의 구성을 알아보고, 웹 해킹 공격을 설명하고, SQL 삽입 공격, XSS, 악성 코드를 차례로 실습한다. IIS 웹 서버, 아파치 웹 서버, MS-SQL 데이터베이스 등 웹 서버와 데이터베이스를 차례로 살펴보면서 어떻게 보안 설정을 해야 하는지 익힌다.
알고리즘 (Computer Algorithms) 알고리즘의 기술방법과 개발방법론, 그리고 알고리즘의 분석 및 평가방법 등을 다루고, 특히 탐색, 정렬, 수치해석, 네트워크 등 전신분야의 주요 문제들에 대한 문제해결 알고리즘들을 이해하고, 이를 직접 구현하고 응용하는 문제를 다룬다.
웹프로그래밍2 (Web Programming 2) 웹 서버의 구축과 DB 연동, JSP(또는 PHP, ASP), XML 등과 같은 서버쪽에서의 고급 웹프로그래밍 기술들을 공부하고 실습한다. 그 외 AJax, HTML5 등과 같은 최신의 고급 웹프로그래밍 기술들도 다룬다.
임베디드시스템설계 (Design of Embedded System) 임베디드 시스템의 구조와 개발환경, 임베디드 리눅스를 학습한다. 그리고 시스템 초기화 프로그래밍, 디바이스 드라이버 개념을 확립하고, 입출력 장치에 대한 제어 프로그래밍을 학습하여 설계능력을 배양한다.
정보보호개론 (Introduction to Information Security) 정보보호개론에서는 정보보호의 기본기술, 암호화기술, 키분배와 해쉬함수, 해킹과 포렌식을 다룬다. 또한 시스템보안, 서버보안, 응용보안, 전자상거래보안 등을 학습한다. 그리고 주요 네트워크 보안도구인 방화벽, 침입예방시스템, 가상사설망의 구성개념과 구성사례를 소개하여 네트워크관리능력을 배양하며 IPv6에서의 보안을 소개한다.
토지정보체계론 (Land Information System) 도시 및 토지정보를 구성하는 주요 항목을 이해하고 이를 효과적으로 관리할 수 있는 정보시스템의 개념적 설계와 관리를 다룬다.
프로그래밍언어론 (Theory of Programming Languages) 본 과목에서는 컴퓨터 프로그래밍의 기본이 되는 중요 개념들과 프로그래밍 언어가 가진 속성 및 구조를 소개한다. 주요 내용으로는 데이터 형, 데이터 제어 및 순서 제어, 객체의 개념, 효율적인 데이터 저장 및 환경 등으로 요약될 수 있다. 또한 서로 다른 언어들, 즉 명령형 언어, 논리형 언어, 함수형 언어, 객체지향형 언어의 특성과 응용 분야들을 간략히 살펴보도록 한다.
해킹및바이러스대응 (Network Security) 바이러스와 해킹의 유형을 분류하여 침해사고를 소개한다. 그리고 침해사고에 대한 예방 및 대응활동, 포렌식을 소개한다.

과목명 소개
고급시스템프로그래밍 (Advanced System Programming) 리눅스 운영 체제의 시스템 호출 API를 이용한 시스템 프로그래밍 기술을 배운다. 디바이스 드라이버의 개발, 병렬성의 제어, 비동기적인 논리 흐름 간 정보 전달 및 자원 공유 등의 문제를 해결하기 위해 필요한 운영체제 시스템 호출 API 수준에서의 프로그래밍 기술을 강의한다.특징 : 소프트웨어 개발 심화 과정, 실습 과목
공간데이터베이스 (Spatial Database) 공간데이터베이스는 지리공간에서 정의되는 사물을 나타내는 데이터를 저장하고 검색하는 데 최적화된 데이터베이스다. 본 교과에서는 공간 데이터베이스의 정의, 구성요소, 데이터 표현방법과 공간 데이터 모델의 유형과 특징들을 소개하고 공간 질의어의 특성 등에 대하여 강의한다.
공간정보론 (Geographic Information System) 지리 정보 시스템(GIS)은 지리공간적으로 참조가능한 모든 형태의 정보를 효과적으로 수집, 저장, 갱신, 조정, 분석, 표현할 수 있도록 설계된 컴퓨터의 하드웨어와 소프트웨어 및 지리적 자료, 인적자원의 통합체이다. 본 교과에서는 GIS의 정의와 개념 및 지리정보의 유형, GIS의 구성요소, GIS자료의 생성 과정 및 관련 기술적 사항과 GIS의 다양한 활용 분야를 소개 한다.
네트워크보안 (network security) 네트워크 영역에서 널리 사용되는 3대 툴을 소개한다. 그리하여 방화벽/웹방화벽, 침입탐지/예방시스템, VPN을 다룬다. 3대 툴의 설치, 설정, 운용방법을 익힌다. 또한 IPv6를 소개하고 IPv6에서의 보안을 소개한다.
마이크로프로세서응용 (Microprocessor Applications) 마이크로프로세서 구조 및 프로세서의 종류에 대하여 강의하고, Register, Bus, ALU 등에 대해 각종 프로세서의 예를 들어 설명한다.
모바일응용 (Mobile Applications) 모바일 서비스 기반의 전통문화콘텐츠 상품의 창출과정을 이해하기 위해, 모바일 콘텐츠 제작, 기술, 유통 테크놀로지의 개념과 적용에 대해 탐구한다.
인공지능 (Artificial Intelligence) 인공지능의 기본개념, 명제 및 술어논리와 비단조 논리, Lisp 언어, 지식의 표현방법, 각종 탐색기법, 버전 공간과 결정트리, 귀납과 연역 학습이론, 불완전한 정보에서의 계획수립, 불확실성, 영상이해, 자연언어 처리의 이론 배경을 습득한다.
캡스톤디자인 (Capstone Design) 컴퓨터공학의 여러 분야에서 습득한 전문지식을 바탕으로 하여 지역 산업체에서 필요로 하는 작품 혹은 공학 인으로서 제작할 가치가 있는 작품들을 학생들 스스로 설계, 제작, 평가하여 봄으로써 창의성과 실무능력, 복합학제적인 팀웍 능력, 리더의 역할을 수행할 수 있는 작품을 개발한다.
컴퓨터보안 (Computer Security) 본 과목에서는 정수론, 정보이론 등을 기반으로 고전 암호방식과 대칭 및 비대칭 암호방식, 공개키 암호방식, 지식-제로 상호증명 방식 등을 다룬다. 또한 본 교과는 이러한 암호방식을 이용한 개인식별과 인증, 디지털서명, 키 관리 등의 컴퓨터 보안 서비스들과 국내외 표준 암호방식, 그리고 이러한 암호이론의 적용분야로써 컴퓨터 통신보안 및 네트워크 보안에 관하여 살펴본다.