정보의 표현과 저장(컴퓨터가 데이터를 어떻게 처리하는지?) 


1. 정보의 표현과 저장(보통 0,1로 저장한다는대 어떻게 처리되는지?)


1) 컴퓨터에서의 정보 : 2진수 비트들로 표현된 프로그램 코드와 데이터의 집합 ( 1bit=0,1 비트당 2의n제곱만큼 표현 )


2) 프로그램 코드

    • 기계어 <- 어셈블리어 -> 고급언어 
3) 언어 번역 소프트웨어

- 컴파일러 : 고급언어 프로그램 > 기계어 프로그램
- 어셈블러 : 어셈블리 프로그램 > 기계어 프로그램 ( 니모닉스 'LOAD', 'ADD', 'STOR' )
- 인터프리터 : 소스 전체를 변환하는 컴파일러와 달리 라인단위로 변환하는 언어  

2. 진법 변환


- 비트당 사용 가능한 2진수의 조합 : 2의 n제곱

- 컴퓨터에서 정보를 표현하는 기본 단위 bit

- 컴퓨터에서 정보를 처리하는 최소단위 8byte? word? 

- 비트(2¹) 바이트(2의8제곱) 키로바이트(2의10제곱) 메가바이트(2의20제곱) 기가바이트(2의30제곱) 테라바이트(2의40승) 



3. 보수로음수표현, 소수표현


4. 문자데이터의 표현


- 영숫자코드

- 표준DCD(Binary Coded Decimal)

- ASCII코드

- 그레이코드 

- 패리티검사코드

- 해밍코드

 



고요하고 텅 빈 마음



고요하고 텅 빈 마음은 이 순간에 어떤 감정을 느끼고 있든지 그것에 흔들리지 않는 확고한 만족감 또는 충족감, 즉 그 표면적인 감정의 밑에 존재하는 평화로움을 표현하는 말이다. 이것은 표면적 감정에 따라 변하는 마음 상태가 아니다. 어떤 생각을 갖고 어떤 감정을 느끼든지 그 모든 생각과 감정을 '있는 그대로 받아들이는' 것을 의미한다. 그러므로 명상을 하면 그 흔들림 없는 만족감과 평화로움을 경험 하고는 바로 그 순간에 당신은 모든 게 괜찮다는 것을 그냥 알게 된다.


 공하고 텅 빈 마음과 행복한 감정을 구별하는 것은 중요하다. 어떤 이유에서 인지 우리는 삶에서 행복은 기본이자 필수라고 믿으며, 따라서 그 조건을 완벽하게 갖추지 않으면 문제가 있다고 믿는다. 이런 믿음 때문에 우리는 육체적, 정서적, 정신적 불행의 원인에 대체로 저항한다. 보통 이 단계에서 만사가 꼬여버린다. 삶이 지긋지긋한 고역처럼 행복을 얻고 지키려는 끊임없는 악전고투처럼 느껴지기 시작한다. 우리는 일시적인 쾌락이나 색다른 경험이 주는 희열에 빠져들고, 한 번 그렇게 빠져들면 언제나 그 감정을 자극해야 한다. 음식이든 옷이든 약이든 연애든 일이든 심지어! 목가적인 시골 풍경으로 자극하는지는 중요하지 않다. 그런 것에 의지해서 행복을 얻으면 우리는 결국 함정에 빠진다. 그것을 더 이상 가질 수 없다면 어떻게 될까? 쾌락과 희열이 사라지고 나면 무슨 일이 일어날까? 끝없이 무엇인가를 쫓아다니며 사는 이 방식이 고요하고 텅 빈 마음을 얻는 데 효과가 있는가? 


나는 언제나 모든 일이 정확히 내가 원한 대로 되기를 바랐고, 내 맘대로 되지 않으면 절대 만족하지 않았다. 그 모두가 너무 부끄러웠다. 전철이 늦어도 친구가 내 말에 맞장구치지 않아도, 한밤중에 잠에서 깨어나도 나는 화가 치밀었다. 그렇게 사소한 일에 어떻게 그렇게 화를 낼 수 있었을까?


감정이 바뀌지는 않았지만 그 감정을 바라보는 방식이 바뀌었다고 대답했다.  그러한 생각과 감정 저 밑에는 고요하고 평온하고 평화로운 장소가 있는데 그 장소는 그에게서 결코 앗아갈 수 없는 유일한 것이며, 그의 삶에 어떤 일이 일어나든지 그의 내면에는 그가 언제든 돌아갈 수 있는 고요하고 평화로운 그곳이 언제나 존재할 거라고 했다.


모두에게는 반드시 역경을 들이민다. 때때로 변화가 있어야 하는, 심지어 변화를 촉구하는 상황이 올 것이다. 그러면 당신은 그 상황을 깨어 있는 마음으로 능숙하게 다루어야 한다. 하지만 그전에 할 일은 당신이 그 상황을 어떤 식으로 생각하고 느끼는지, 즉 당신의 경험을 규정하는 것은 바로 당신의 마음이라는 점을 인정하는 것이 우선이다. 그래서 마음수행이 무엇보다 중요하다. 세상을 바라보는 방식을 바꿈으로써 당신은 사실상 당신을 둘러싼 세상을 바꾸는 것이다. 


마음수행의세가지요소: 접근 수행 통합 


헤드 스페이스 - 앤디퍼디컴


게임의 재미와 몰입


1. 게임의 재미요소


1) 라프코스터의 재미이론 (패턴의 분석)


    • 게임이란 인식에 대한 것이며, 패턴을 분석하는 것을 배우는 것이다. 


2) 재미의 단계별 요소

    • 숙달과 변수
    • 도전 목표와 학습
    • 게임의 단계별 요소에 따른 분석
- 도전 과제의 구성과 학습
- 숙달 과정과 변수
- 패턴과 훈련 

* 단계별 재미요소는 패턴과 훈련, 숙달과 변수, 도전목표 단계를 갖는다. 


3) 칙센트미하이의 몰입이론 (게임의 몰입 요소) 


2. 재미의 유형


- PLEX모델(재미의 분류 체계)에 따른 게임에서 기대하는 재미의 유형

    • 매혹, 도전, 경쟁, 완성, 통제, 발견, 에로티시즘, 탐험, 자기표현, 판타지, 동료의식, 양육, 휴식, 가학, 감각, 시뮬레이션, 전복, 고난, 공감, 전율 


3. 게임의 재미와 몰입성 


1) 몰입과 재미의 관계


- 재미와 즐거움의 차이 


- 재미 : 보상없는 감정상태

- 즐거움: 보상이 있는 경우 


- 재미를 만드는 활동과 경험의 분류

- 몰입을 위한 게임요소 적용 


- 게임화의 외부적 동기 요인으로 인한 몰입 유도 ( 게임화된 목표와 규칙을 제시하여 불안방지)

- 게임형태의 피드백과 메커니즘으로 권태감 방지 


2) 중독과 과몰입


3) 가믿음


JSP 페이지 이동 url 경로 


( url-pattern .do )

 WEB.INF

    - VIEW

       - index.jsp

 - notice

 - noticeList.jsp 

 - noticeInsert.jsp


- index.jsp 에서 


<a href="notice/noticeList.do">NOTICE</a>  http://localhost:8082/mogaco/notice/noticeList.do

<a href="/notice/noticeList.do">NOTICE</a>   http://localhost:8082/notice/noticeList.do

<a href="../notice/noticeList.do">NOTICE</a>  http://localhost:8082/notice/noticeList.do


- noticeList.jsp 에서 


<a href="notice/noticeList.do">NOTICE1</a> http://localhost:8082/mogaco/info/notice/notice.do

<a href="/notice/noticeList.do">NOTICE2</a>  http://localhost:8082/notice/noticeList.do

<a href="../notice/noticeList.do">NOTICE3</a> http://localhost:8082/mogaco/notice/noticeList.do 


- noticeInsert.jsp


<a href="../notice/noticeInsert.do">공지사항 인서트1</a>

<a href="noticeInsert.do">공지사항 인서트2 </a>

<a href="/notice/noticeInsert.do">공지사항 인서트3</a> http://localhost:8082/notice/noticeInsert.do  

<a href="notice/noticeInsert.do">공지사항 인서트4 </a> http://localhost:8082/mogaco/notice/notice/noticeInsert.do


※  아무것도 없으면 프로젝트부터 현재까지 내려옴 

※   / : 현재위치 부터,    ../ : 현재한칸위로 


<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

${pageContext.request.contextPath}

절대경로 활용 


당최 서블릿 페이지 이동 에 대한 정리를 찾기 힘들어 

내가 직접 테스트 해보고 정리했다. ㅎㅎ 그래서 정확성은 보장 못함.



포워딩 방식 (return "viewname"; )


※ 주소는 viewResolver에서 /WEB-INF/view/ + " ~~~ " + .jsp  이런식으로 만들어짐.

※ 앞에 / 가 붙든 안붙든 상관없이 view/ 다음으로 간다 

※ view 밑으로 폴더 명부터 다 써주기 

※ jsp붙으니 .do아니다. 


return "notice/noticeList";  , return "/notice/noticeList";

컨테이너가 찾는 주소      /mogaco/WEB-INF/view/notice/noticeList.jsp

브라우저에 표시되는 주소 http://localhost:8082/mogaco/notice/noticeList.do


- URL 주소 유지, 즉 브라우저 모르게 컨테이너 내부에서 이동

request/response 객체 유지 

- 같은 웹 서버 내에 있는 파일들로만 이동 가능 

- 클라이언트 정보를 갖고 이동 

- 클라이언트와의 통신없이 서버에서만 처리되므로 효율이 더 좋다고함



리다이렉트 방식 ( return "redirect:/"; )


※ 주소는 컨트롤러에 재 요청하는 주소다.

※ / 가 안붙으면 안된다. 

※ 컨트롤러로 재요청하므로 url pattern 지켜줘야함 ".do"


return "redirect:/notice/noticeList.do";  

브라우저 주소  http://localhost:8082/mogaco/notice/noticeList.do  

return "redirect:/";   
브라우저 주소http://localhost:8082/mogaco/ 



- URL 주소 바뀜, 컨테이너로 재 요청(단순한 이동)

- request/response 객체 소멸 

- 같은 서버, 다른 서버 에 있는 페이지로 이동 가능 

- 잘못된 예시 


1. R 대문자 쓰면 안된다. 되돌아오면서 오류 
"Redirect:/";      

"Redirect:/notice/noticeList.do";  (http://localhost:8082/mogaco/notice/notice/noticeInsert.do ) 

2. /안붙였을때 > 폴더명 3번 붙여 찾는다. 왜지. 
"redirect:notice/noticeList.do"; ( /mogaco/WEB-INF/view/notice/notice/notice/noticeList.jsp )



ModelAndView
ModelAndView는 포워드냐 리다이렉트냐 가 아니라 
ModelAndView를 이용하여 포워드로도 리다이렉트로도 보낼 수 있는거다. 

포워드 
ModelAndView mv = new ModelAndView();
vm.setViewName("/notice/noticeList");
vm.addAttribute("message", msgService.getMessage());
return vm;
or 
req.setAttrebute("message", msgService.getMessage());
return new ModelAndView("/notice/noticeList");

리다이렉트
ModelAndView mv = new ModelAndView();
vm.setViewName("redirect:/notice/noticeList.do?noticeNumber=2");
return vm;
or
ModelAndView mv = new ModelAndView();
vm.setView(new RedirectView("/notice/noticeList.do?noticeNumber=2",true));
return vm;
 

테스트 하고 정리하느라 시간이 다 갔다. 
뭘 쓸지 여부는 response, request 유지 여부에 따라 나뉠까.? 
* 브라우저 표시되는 주소는 get,post 와 연결지어 봐서 정리해 줘야겠다.
왜냐!! 
그런데 여기서 브라우저 표시되는 주소가 현재 주소가 되니
링크가 꼬인다. 꼬리에 꼬리를 물고 모르는게 생긴다 ㅎㅎ

+redirect로 새로 요청해주어야 재 요청시 꼬이지 않는다.

그럼 리다이렉트를 쓰고, 파티쉐님께 배운 주소 지우는것도 적용해보자 

+ Recent posts