컴퓨터와 멀티미디어학 과 :산업.전산.전자공학부학 년 :4학년학 번 :성 명 :멀티미디어를 활용한 웹 페이지의 저작1.html●hypertext markup language의 약자로 web page를 만들기 위한 기본 언어 또는 약속이 라 할수 있다.●markup language문자열의 앞뒤에 태그를 붙여 그 문자열의 특성을 나타내 주는 언어●html은 sgml(standard generalized markup language,문서의 논리적 구조를 기술하기 위 한 markup language의 정의를 위한 언어)표준에 따라 구현한 문서 형식1.1html 문서●html문서의 구성간단한 html문서body태그 안의 내용이 브라우저에 나타납니다.줄을건너 뛰었습니다.heading1heading3/제목:간단한 웹 페이지font 크기2font 크기61.2하이퍼링크●하이퍼텍스트 상에서 원하는 곳으로 이동할 수 있도록 만들어진 링크.웹에서의 하이퍼링크는 태그에 의해 만들어진다.●다른 웹 사이트로의 링크daum.net으로의 링크2.웹 페이지의 디자인●다른 매체와 마찬가지로 뚜렷한 주제와 충실한 내용이 중요하다.●시각적인 디자인과 탐색 구조, 인터페이스도 중요하다.●네트워크상에서의 통신 효율도 고려해야한다.2.1웹 페이지의 개발과정●주제와 대상의 결정? 명확한 주제와 그에 관한 정보를 중심으로 제작? 웹 페이지를 접하는 대상을 고려(연령층등)●아이디어 도출? 정한 주제와 관련된 것들을 자유롭게 생각해 보고 생각나는 것들을 모두 저는단계●내용의 구성? 아이디어를 의미있게 구성하여 사이트 맵을 제작? 사이트맵:웹 페이지의 구조를 파악할 수 있도록 페이지간의 계층구조를 그림으로 나타 낸 것●웹 페이지 작성의 준비●웹 페이지의 작성2.2웹페이지의 구성(1)페이지의 분할? 스크롤을 여러번 해야 할 정도로 긴 페이지는 사용자에게 부담을 줌? 프레임을 너무 많이 나누면 혼란스러움(2-3개가 적당)(2) 웹 페이지의 탐색구조? 선형구조? 계층구조? 선형+계층구조? 망구조? 탐색 구조의 표현? 이미지 맵(3)테이블을 이용한 페이지 레이아웃? 기본적인 html 문서는 구성요소를 왼쪽 뒤로부터 차례로 표시? 테이블을 이용하면 어느 정도 원하는 위치에 구성요소를 배치할수 있음(4)열거목록(리스트)? 웹페이지의 글은 서술형으로 길게 늘여 쓰는 것 보다는 간결하고 짧게 하는 것이 내용 전 달에 효과적? HTML 문서의 열거목록의 종류:무순서목록,순서목록, 정의 목로(5)프레임의 이용? 웹 브라우저의 화면을 분할해 주는 기능?일반적으로 메뉴 등 바뀌지 않는 부분과 선택에 따라 바뀌는 내용부분을 나누는 일에 사용? 너무 많은 프레임은 사용자에게 혼란을 가져옴2.3웹페이지의 시각적요소(1)일관성 있는 디자인? 배경과 레이아웃의 통일? 공통된 마크.아이콘.헤더등 특정한 그래픽스의 사용? 통일된 색채계획(2)텍스트의 사용? 내용에 어울리는 폰트와 스타일 선택? 모니터의 해상도와 사이즈를 고려하여 전체 문장량과 문장 길이를 정한다.? 여백의 적절한 사용(3)색상? 융합.대조,조화를 얻기 위해 사용? 색이 주는 느낌을 고려? 웹 페이지의 분위기를 결정(4)여러가지 색이 지닌뜻? 빨간색:뜨거움,정렬,멈춤? 초록색:선망,자연,진행? 파란색:차가움.슬픔,하늘? 노란색:따뜻함,소심함,주의? 검은색:사악함,공포,죽음(4)메타포? 사용자의 연상이나 경험과 관련된 시각기호와 청각기호로 조작성과 이해도를 높인다.? 아이콘:인터페이스 향상,조작성,사용자의 속성,내비게이션 구조를 고려하여 디자인한다.? SYMBOL:사용자,목적,조작성,사용자의 속성을 고려2.4웹페이지 디자인의 원칙? 웹페이지를 만들기 전에 철저한 기획단계를 거친다.? 웹페이지 로드 시간이 10초 이상이 되어서는 안된다.? 길게 스크롤되는 문서를 만들지 않는다.? 방문객이 웹 사이트의 구조를 쉽게 파악할 수 있도록 구성하고 웹 페이지간의 이동이 용 이하게 만든다.? 웹 페이지에 의미있는 제목을 붙인다.3.이미지의 활용3.1웹 페이지의 이미지? 일반적으로 크기가 작은 그림이나 버튼,메뉴 등에 사용하는 이미지는 GIF형식을 미묘한 색의 변화가 많은 사진에는 JPEGGUDTLR을 사용한다.3.2이미지에 링크달기? 이미지에 다른 페이지로 이동할수 있는링크를 넣을 수 있다.그림에 링크를 넣으면 자동으로 파란색 테두리가 생긴다. 이 테두리를 없애기 위해서는 태그의 BORDER속성을 0으로 한다.3.3애니메이션의 활용?animated gif?shockwave flash?dynamic html과 java script?java applet4.사운드와 비디오의 활용4.1웹에서 지원하는 사운드와 비디오 파일(1)사운드 파일의 종류?wave 파일?real audio파일?midi 파일(2)비디오파일의 종류?avi파일?real video파일?mov파일?mpeg파일4.2사운드와 비디오를 활용한 웹사이트(1)사운드를 제공하는 웹사이트?팝 가수의 홈페이지(2)비디오를 제공하는 웹사이트?tv 프로그램의 예고편을 보여주는 사이트5.고급 웹기술의 활용5.1cgi의 활용?사용자로부터 입력받은 정보를 서버의 데이터베이스에 저장하거나 더 나아가 사용자가 원하는 정보만을 보여 줄 수도 있다.?cgi의 작동과정-사용자가 클라이언트의 웹 브라우저를 통해 정보를 입력-서버는 입력된 정보를 cgi 응용 프로그램에 전달-프로그램은 파일 시스템이나 데이터베이스에 접근하여 이 정보를 처리하고 그 결과를 서 버를 통해 사용자의 브라우저로 전달-사용자의 웹 브라우저는 전송받은 결과를 사용자에게 html 문서로 보여줌5.2자바의 활용(1)자바의 역사? 1991년 sun microsystem 사의 제임스 고슬링이 가전제품에서 사용될수 있는 단순하고 버그 없는 언어제작을 목적으로 프로젝트시작? 이를 위해 특정한 컴퓨터 칩에 의존하지 않는 언어인 자바를 구상(2)자바의 활용 분야?웹,네트워크,멀티미디어 분야?인트라넷 분야?주식,증권분야?인터넷 제어(3)자바의 컴파일과 실행환경? 자바 프로그램 개발 환경은 컴파일과 실행환경으로 구성? 자바 소스코드를 만들고,이를 바이트코드로 컴파일? 생성된 바이트코드는 자신의 컴퓨터에서 자체적으로 이용되거나 네트워크를 통해 다른곳 으로 전송(4)자바 애플릿?인터넷 브라우저 상에서 실행되는 자바 어플리케이션?html로만 구성된 정적 웹페이지에 동적 효과와 여러 가지 특수효과를 지원?미리 만들어져 있는 자바 애플릿 클래스 파일을 다운로드받아 쉽게 사용가능
..PAGE:1보고서학과:학번:성명:..PAGE:2eXtreme Programming..PAGE:3XPXP 란?XP는 단순성, 의사소통, 피드백, 용기 이 네 가지 가치를 매우 중요하게 생각하는 소프트웨어 개발 방법이다XP의 주체XP는 고객, 관리자, 프로그래머 각각의 역할에 초점을 맞춰 각 역할에 적절한 권리와 의무를 부여한다용기, 진실에 대하여, 시스템에 대하여, 팀원에 대하여, 고객에 대하여XP는 참여하는 팀원의 즐거움과 건강에 대해서도 생각한다 (일에 대한 유쾌한 피드백이야 말로 품질을 향상시킨다)..PAGE:4고객의 역할과 스토리고객의 역할스토리를 작성한다소프트웨어의 가치를 선택한다배포에 대한 결정을 내린다테스트를 정의한다스토리시스템이 해야 하는 일 한 가지를 설명한다고객이 작성하며, Use-Case 와 비슷하지만, 더 추상적이고 비격식적이며, 훨씬 간략하다..PAGE:5프로그래머의 역할프로그래머시스템을 분석하고, 설계하고, 검사하고, 작성하고, 통합한다.모든 스토리의 난이도를 추정하고, 고객에게 스토리를 제때 전달할 수 있는지 파악하기 위해 진행 상황을 확인한다...PAGE:6관리자의 역할관리자고객과 개발자를 한데 모으고 서로 융화 시켜, 팀이 순조롭게 운영되도록 도와준다프로세스를 수행하는 것이 아니라 단지 프로세스가 원활하게 진행되도록 하는 것이다..PAGE:7XP 프로젝트의 Life Cycle고객고객프로그래머프로그래머가치구축가치선택비용추정가치정의..PAGE:8XP 의 실천사항 (Practice) #1현장고객(On-Site Customer)XP 전체 팀은 한방에서 일해야 하며 고객(혹은 고객 팀) 역시 XP 전체 팀과 같은 공간에 있어야 한다실질적 ‘현존’이 불가능할 경우에도 고객과 개발자들이 한 팀을 이룬다는 것을 인식하는 것이 매우 중요하다..PAGE:9XP 의 실천사항 (Practice) #2계획 게임(Planning Game)배포계획(Release Planning)에서는 고객에게 스토리를 설명하게 하고 프로그래머들이 그 스토리의 난이도를 추정한다반복계획(Iteration Planning)에서는 스토리를 작업(Task)로 계획(이 자체가 중요한 설계 단계가 된다)한다..PAGE:10XP 의 실천사항 (Practice) #3작은 배포(Small Release)격주에 한번씩 실제로 돌아가는 소프트웨어를 고객에게 줄 수 있어야 한다심지어는 프로젝트의 첫 두 주간에도 배포 되어야 하며 이것은 가능한 일이다..PAGE:11XP 의 실천사항 (Practice) #4단순한 설계(Simple Design)Do The Simplest Thing That Could Possibly Work작동할 수 있는 가장 단순한 것을 해라YAGNI (You Aren’t Gonna Need It)그건 필요 없게 될 거요* 수행되는 가장 단순한 설계를 하고 정의된 테스트를 힘으로 용감하게 리팩토링 한다. (TDD and Refactoring)..PAGE:12XP 의 실천사항 (Practice) #5짝 프로그래밍(Pair Programming)모든 코드를 두 명의 프로그래머가 함께 작업하도록 한다테스트 주도 개발(Test Driven Development)(분석)(설계)(코딩)(테스트)? VS (분석)(테스트)(코딩)(설계)TDD는 정확한 테스트를 만들어 내며, 필요한 경우 프로그램을 변경하는 것을 두렵지 않게 만든다TDD로 짠 프로그램은 명확히 정의된 테스트를 통과하는 가장 단순한 설계의 코드를 지향한다,고로 복잡성이 발견되었을 때 용감하게 변경할 수 있으며, 새로운 내용을 추가하는 일도 쉬운 일이 된다..PAGE:13XP 의 실천사항 (Practice) #6설계 개선(Refactoring)XP는 한번에 디자인 하는 것이 아니라, 언제든지 적극적으로 디자인 한다, 그리고 항상 단순한 상태를 유지하기 위해 노력한다..PAGE:14XP 의 실천사항 (Practice) #7팀 코드 소유(Collective Code Ownership)테스트를 포함하여 팀의 모든 사람은 어느 때이건, 어느 코드이건 개선할 권한을 가진다지속적인 통합(Continuous Integration)모든 코드는 프로젝트 속에 보관한다, 작업하기 위해서는 Check out 하고 작업 후에 Check in 한다 XP 팀은 하루에도 여러 번 통합한다
제목:FIRMWARE과목:교수님:학과:학번:성명:펌웨어(Firmware)대부분의 컴퓨터 주변기기에는 하드웨어와 소프트웨어 사이를 궁합이 잘 맞도록 조정해주는 부분이 있는데 그것은 소프트웨어를 하드웨어화 시킨 것으로서 소프트웨어와 하드웨어의 중간에 해당하는 것을 말한다. 보통 이를 펌웨어(Firmware)라고 하는데, 이것은 시스템의 효율을 올리기 위해 롬(ROM)에 들어 있는 기본적인 일종의 프로그램이다. 다만 지워지거나 변경하기 힘들도록 제작 당시부터 하드웨어에 포함되어 만들어지기 때문에 프로그램도 기기도 아닌 펌웨어라고 부른다. 펌웨어는 하드웨어 내부에 설치되어 기기 운용에 필수적인 정보를 담고 있거나 기본 동작을 수행하는데 필요한 프로그램을 처리한다. 펌웨어를 쉽게 이해하려면 메인보드나 그래픽카드, 모뎀의 롬 바이오스를 떠올리면 된다. 마이크로 프로그램의 집단으로 소프트웨어의 특성을 지니는 롬에 고정되어 있기 때문에 하드웨어의 특성도 지니고 있다. 또한 펌웨어는 속도가 빠른 제어 기억장치에 있는 마이크로 명령문으로 이루어져 있다.소프트웨어의 기능을 펌웨어로 바꾸면 바꾸기 어렵다는 단점이 있으나 속도가 빨라지기 때문에 고속처리가 필요한 프로그램은 펌웨어로 대체되고 있다. 시스템의 효율을 올리기 위해 롬에 들어 있는 기본적인 프로그램이다. 전형적인 처리 루틴, 고속 처리, 비휘발성, 변경불가 등이 특징이다. 보통 펌웨어를 IBM에서는 마이크로 코드(micro code)라고 부른다.펌웨어는 예전에는 어셈블리 코드로 작성했다. 하지만 마이크로 명령문이 어셈블리어 명령문을 대신하면서 오늘날 컴퓨터 구조에 있어 중요한 영향을 미쳤으며 특히 운영체제의 효율과 보안에 중요한 영향을 미치게 되었다.이러한 마이크로 코드에는 수직 마이크로 코드와 수평 마이크로 코드가 있다. 수직 마이크로 코드는 기계어 명령문을 실행하는 것과 아주 비슷하여 전형적인 한 개의 수직 마이크로 코드로 빠른 속도로 적은 량의 데이터를 처리한다. 이러한 예로 레지스터간의 데이터 이동을 들 수 있다. 수평 마이크로 코드는 수직 마이크로 코드보다 조금 더 많은 비트를 필요로 한다. 이것은 더 많은 데이터를 이동하게 설계되어있기 때문이다. 수평 마이크로 코드가 수직 마이크로 코드보다 좀더 많은 일을 할 수는 있지만 설계가 더 힘들고 에러 찾기가 어렵다는 단점이 있다.또한 컴퓨터 시스템의 많은 기능을 모두 이 마이크로 코드화하는 것보다는 자주 실행되는 명령문들을 소프트웨어 대신 펌웨어화 하면 효율성의 엄청난 증가를 가져온다. 그렇기 때문에 어떠한 기능들을 마이크로화 시킬 것인지를 잘 생각하여야 한다.그럼 마이크로 코드를 사용한 마이크로 프로그래밍은 어디에 사용될 것인가. 우선 에뮬레이션에 사용되고 있다. 에뮬레이션은 어떤 컴퓨터가 마치 다른 컴퓨터처럼 기능을 갖게 할 수 있게 하는 기술을 말한다. 에뮬레이트 될 컴퓨터의 기계어가 새 컴퓨터에 마이크로 프로그램화되어 있어야 그전에 컴퓨터의 기계어가 바로 새 컴퓨터에서 실행될 수 있게 된다. 컴퓨터 회사에서는 계속해서 컴퓨터를 생산할 때 이런 기법을 사용하는데 이렇게 해야만 전 컴퓨터 사용자가 컴퓨터를 전과 같이 사용할 수 있다.다음으로 마이크로 다이아그노스틱스(Micro diagnostics)가 있다. 기계어로 된 프로그램이 하드웨어를 엑세스하는 것보다 마이크로 프로그램이 더 많은 하드웨어를 엑세스할 수 있다. 그래서 에러발견 및 수정을 보다 폭넓게 또 보다 나은 방법으로 할 수 있다. 어떤 컴퓨터는 마이크로 다아아그노스틱스를 추가하여 찾기 어려운 에러를 찾기도 하며 오퍼레이션 수행을 융통성 있게 하고 있다.개인용 변형 컴퓨터(Personalized Computer)는 개인용 컴퓨터를 사용하는 사용자가 자신의 필요에 맞게 컴퓨터를 변형하여 사용하는 것이다. 일반적인 컴퓨터 생산 회사에서는 범용 컴퓨터 생산에 주력하여 대량생산에 주목적을 두고 있다. 그렇기에 특수목적을 위한 컴퓨터는 꺼려하게 된다. 그래서 컴퓨터 사용자들은 자신에게 맞게 변형을 하여야 한다. 이러한 작업을 소프트웨어에서 실행하게 된다. 하드웨어는 일반 소프트웨어를 실행시키는 기본적 장비를 갖추는 것이고 여기에 사용자들은 회사에서 제공하는 마이크로 코드나 자신이 직접 작성한 마이크로 코드를 사용 가능하게 하는 것이다.이러한 마이크로 코드를 사용하는 운영체제의 기능을 알아보면 우선 인터럽트를 처리할 수 있고 여러 가지 자료구조의 유지를 들 수 있다. 또한, 공유데이터의 다른 자원을 엑세스하는 것을 제어하는 동기화 프리미티브(synchronization primitives)가 있다. 그리고, 비트조작 오퍼레이션(bit manipulation operation)이 효율적으로 다루어지도록 하는 부분 단어 오퍼레이션(partial word operation)이 있고 문맥교환(context switching), 즉 다중 사용자 시스템에서 프로세스를 사용자간에 신속히 교환(switching)할 수 있는 기능을 가지고 있다. 마지막으로 프로시듀어 호출(procedure call)과 복귀순서(return sequence)가 있다. 이러한 운영체제의 여러 가지 기능을 마이크로 코드화한다는 것은 여러 기능들의 수행속도가 빠르고 보다 안전하고 각각의 사용자에게 맞추어 사용할 수 있기에 바로 프로그램 개발비용의 절감과 시스템의 보안(security)을 보장하는 것과 같은 것이다.
제목 :hanoi tower과목 :자료구조론교수님 :학과 :학번 :성명 :제출일 :목차하노이 타워 소스프로그램------------------2하노이 타워 실행모습----------------------3하노이타워 소스프로그램#include hanoi(int n, int start, int end, int temp){if(n==1)printf("Move %d from %c to %c n",1,start,end);else{hanoi(n-1, start, temp, end);printf("Move %d from %c to %c n",n,start,end);hanoi(n-1,temp,end,start);}return 0;}main(){int n;printf("input data number of disk ");scanf("%d",&n);printf("n");if(nreportinput data number of disk 3Move 1 from A to BMove 2 from A to CMove 1 from B to CMove 3 from A to BMove 1 from C to AMove 2 from C to BMove 1 from A to B★5개일 경우보이지 않는 부분은 위와 동일함.Move 1 from B to CMove 2 from B to AMove 1 from C to AMove 3 from B to CMove 1 from A to BMove 2 from A to CMove 1 from B to CMove 5 from A to BMove 1 from C to AMove 2 from C to BMove 1 from A to BMove 3 from C to AMove 1 from B to CMove 2 from B to AMove 1 from C to AMove 4 from C to BMove 1 from A to BMove 2 from A to CMove 1 from B to CMove 3 from A to BMove 1 from C to AMove 2 from C to BMove 1 from A to B