반응형


이번에 소개할 제품은 의자 입니다. 저는 일체 이 회사와 관련이 없으며 돈도 땡전 한푼 안받았어요. 오히려 내가 돈 줬으면 줬지 ...

당장 대한민국에만 하더라도 셀수 없을 만큼 수많은 의자들이 존재하지만 그중에서 가성비가 뛰어난 의자를 찾는것이란 쉽지가 않습니다.

그래서 블루밍홈 의자를 구매했습니다.

이름은 블루밍홈 시스템메쉬체어 입니다.





 

 

 

소개는 이렇게 되어있습니다. 가격도 별로 비싸지 않은 32500원(무료배송)에 온갖 기능이 다 들어있고 심지어 요추보조기능까지 있습니다. 제가 요즘 허리가 아파서 이런 기능이 꼭 필요했는데 고민도 안하고 구입을 했습니다. 참고로 이 제품은 DIY 제품이기 때문에 직접 조립하셔야 합니다.

 

나사하고 드라이버 입니다. 시스템 메쉬체어에 쓰이는 나사는 십자나사가 아니라 오각형 모양의

특수나사이기 때문에 특수 드라이버가 필요한데 저렇게 제공을 해주네요.

 

드라이버 입니다만... 의외로 조악한것 같지만 의외로 조이기 편해요


 

나사는 큰나사 작은나사로 구분되어 있습니다


 

가장 먼저 오각의자다리에 바퀴를 설치해줍시다.

바퀴 설치하는건 그냥 바퀴를 홈에 맞춰서 힘좀 주면 들어갑니다.

절대 안부러지고 기분 좋은 느낌으로 딱! 맞게 들어갑니다.


 

실린더를 보호할 보호덮개 인데요. 이것도 안봐도 설치 할수 있습니다.




 

실린더 자체는 통짜로 나오니까 실린더도 조립해야 하나 고민하실 필요없습니다.

 

실린더라는건 의자기둥이라 생각하시면 편해요.

 왜 실린더라고 하면 거기에 가스실린더가 있어서 의자 높이를 설정해줄수 있기 때문이죠.


 

다음으로 이 의자 조립에서 가장 중추적인 의자 몸통 조립입니다. 위와 같이 나사 4개를 조여놓으면

 

절대로 안됩니다!!!! ㅠㅠ


 

위와 같이 밑에 나사 두개는 풀어주셔야 합니다. 왜냐하면 기둥과 몸통 연결대를 이어줘야 하거든요.


 

이렇게 말이죠. 보이시나요?

 

기둥과 몸통 연결대 아래부분 보시면 풀어놨던 나사구멍 자리에 같이 끼워들어가는걸 보실수 있어요.


 

이렇게 말이죠.


 

여튼 다시 돌아와서 이번에는 팔받침대를 조립해줍시다.

 

 

그럼 완성이에요. 너무 쉽지 않냐구요?

 

생각보다 시간 오래걸리더라구요 ^^:;

 

어쨌든 나사만 잘 조여주기만 하면 의자 완성입니다.

 

---------------------------------------------------------------------------------------------------------------------------

 

다음은 실 사용기 올립니다.

 

1.  32500원 짜리 치고 생각보다 푹신함.

 

2. 32500원 짜리라 해서 의자가 내 몸무게를 못견디고 부러지나 했지만 생각보다 잘 버텨줍니다. 

​   (참고로 제 몸무게는 87KG 입니다... ;;)

 

3. 요추 받침대 엄청 기대했는데 다른 의자처럼 단단하게 받쳐주는게 아니고 걍 스펀지 들어가있어요.

   ​그래서 요추 받침 목적으로 구매하시는건 절대 비추천합니다.

 

4. 전 이걸 누구보다 자취생에게 추천하고 싶습니다. 한푼이라도 아까워서 옵션도 기껏해야 TV나

   가스레인지 정도 밖에 없는 방 계약한것도 서러운데 책상 의자 사기도 아까워서 밥상으로

   책상쓰고 그러면 좌식이다보니 허리도 아프고 난리나죠.

​   비록 고급스럽진 않아도 가격이 3만원 정도에 불과해 저렴한 가격으로 입식의자를 쓸 수 있습니다.

 

5. 틸트 기능이 있어서 몸을 뒤로 젖히면 의자도 같이 젖히는데 이게 생각보다 안락합니다.

    그렇지만 너무 무리하게 젖히면 의자다리가 부러질 가능성이 크니 조심하세요

6. 저렴한 의자이기 때문에 의자 면적은 좁지 않을까 걱정했는데 제가 덩치가 상당히 큰편임에도

   불구하고 의자 면적이 제 엉덩이를 다 커버하고도 조금 남습니다. 꽤 넓습니다 면적이

7. 이 의자의 단점은 요추받침대, 그리고 목받침이 없다는점? 그거 외에는 다 만족합니다.

8. 아 참고로 이거 중국에서 생산하는건지 아예 OEM으로 들여오는거라서 그런지 모르겠는데

   초기불량이 있다는 보고가 미미하게 들려옵니다. 어차피 초기불량이면 환불돼요.

9. 싸구려 같아 보이네~ 고급스럽지가 않네~ 하는건 이 가격앞에서 정말 배부른 소리입니다.

10. 의자가 생각보다 그렇게 높이 올라가진 않습니다. 걍 적정량 올라간다고 보시면 됩니다.

11. 블루밍홈이 가격이 다른 회사와 비교해서 타의추종을 불허할정도로 상당히 저렴한 편이다보니

    입식책상 같이 쓰면 더이상 책상 의자는 고민할필요가 없습니다.

    책상도 차후 리뷰 쓸게요.

이상 실사용기 끝.

블루밍홈 시스템메쉬체어 리뷰였습니다.



반응형

넥서스7 1세대의 성능에 대해 파헤쳐보도록 하겠습니다.

 

당시 가격대비 성능이 굉장히 뛰어났던 물건인 만큼 성능도 그렇게 딸리지 않을거라

 

예상이 되는데요. 정말 인지 하나하나 보도록 하죠.

 

 

 

1. 사양

 

AP 

 테그라3 쿼드코어 1.2Ghz

DISPLAY

 7 inch(1280x800, IPS)

OS

 안드로이드 4.2 젤리빈(현재 4.4 킷캣 업그레이드)

RAM 

 1GB

내부 용량 

 8GB/16GB/32GB

카메라 

 전면 120만화소

배터리 용량 

 4325mAh

두께 

 10.45mm

무게 

 340g

 

사양은 이렇게 되어 있는데요. 테그라이긴 하지만 나름 쿼드코어이고 HD급 화질에 램이 1GB 인것

빼고는 그리 나쁠것 없어보이는 사양입니다.

 

 

2. 앱 개수

 

갑자기 뜬금없이 왜 앱 갯수냐고 하면 앱 갯수가 적으면 쓸데 없이 백그라운드에서 램 먹는 일이

 

적기 때문에 그만큼 최적화도 잘 되있으며 속도도 쾌적합니다. 그래서 통신사 어플 이런게

 

깔려있으면 짜증나는게 그 이유죠.

 

넥서스7은 구글이 지정한 레퍼런스 태블릿답게 앱 갯수가 정말 적습니다.

 

 

좀 웃기긴 하지만 위의 앱이 전부입니다.심지어 저기서 제가 이것저것 깔았음에도 불구하고

 

저거 제외하면 뒤에는 앱 10개 정도만 더 있을 뿐입니다. 정말 자잘한 앱 다 합쳐서 40개 밖에

 

안됩니다.

 

뉴스를 봤는데 통신사에 따라 기본으로 깔려나오는 앱만 80개라고 합니다.

 

그런데 그것에 비해 넥서스7은 원래 있던 앱 + 제가 임의로 설치한 어플 = 40개 입니다.

 

그만큼 앱이 적어 자신의 입맛대로 앱을 설치하여 꾸미기가 가능하다는 것이지만 앱이 정말로 너무

 

적다보니 의외로 필요하다 싶은것이 없어 구글 플레이 스토어 찾는 경우가 조금 있습니다

 

앱 갯수가 적은건 너무 좋습니다.

 

 

 

3. 영상 재생 능력

 

요즘 스마트폰과 태블릿들은 1080P 영상도 부리없이 돌린다죠?

 

옛날의 아이패드 1처럼 720p도 못돌려서 버벅이고 인코딩 해야 하고 그럴 시기는 아니라는 겁니다.

 

그래도 혹시나 모르니 720p 영상으로 한번 테스트 해보겠습니다.

 

이번에는 직접 영상을 올려보도록 할게요.

 

 

 

실행결과 720p 정도야.. 아주 껌으로 돌립니다. 하긴 그 옛날 넷북으로도 잘 하면 720p를 무리없이

 

돌렸는데 고도로 발달한 모바일 쪽에서 720p를 못돌릴리는 없겠죠.

 

영상과 음성이 싱크가 안맞아 벌어지는 그런 현상도 없습니다. 매우 깔끔합니다.

 

1080p도 찍지는 못했지만 테스트 결과 무리 없이 잘 돌려줍니다. 영상 재생능력은 끝났습니다!

 

 

 

 

4. AnTuTu 벤치마크를 이용한 3D 성능 테스트

 

사실 저는 이런 벤치마크로 성능 테스트하는것을 결과랍시고 내놓는건 별로 안좋아합니다.

 

물론 저도 벤치마크 프로그램을 많이 사용합니다만 실 사용시 어떤지도 모른채

 

벤치마크 결과 툭 던지면서 이러니까 결과가 이럴거다라고 무책임 하게 말하는 것 자체를 혐오하죠.

 

그렇지만 3D를 테스트 할려니 뭐 마땅히 테스트 할것도 없고...

 

그래서 AnTuTu를 이용해서 3D 테스트를 해보았습니다.

 

 

 

 


 

 등수를 보자면 넥서스4 보다 아래 등급입니다. 똑같은 쿼드코어임에도 이런 현상이 발생하는 것은

 

일단 넥서스7의 클럭이 1.2Ghz 밖에 안되는문제도 있지만

 

테그라3의 자체 성능 자체가 낮은 편이기도 하구요. 넥서스4에 쓰인 스냅드래곤 s4 프로와 차이가

 

나는 편이기 때문에 저런 현상이 발생합니다.

 

벤치마크 프로그램 구동중 3D 테스트 하는 과정을 보았는데

 

프레임이 겨우 10프레임 안팎에 머무는등 뭔가 굉장히 힘들어 하는 모습을 보였습니다.

 

3D 성능도 그리 좋지 못한 것 같은 느낌을 받았습니다.

 

결국 넥서스7의 성능 자체는 요즘 것에 비하면 그렇게 많이 썩 좋은것은 아니다라는 건 당연하겠죠?

 

그 당시라 해도 테그라의 뻥 성능은 워낙에 잘 알려지다 보니;;

 

그래서 그런지 넥서스7 2세대는 퀄컴의 스냅드래곤 s4 pro(사실상 스냅드래곤 600이 다운클럭된 모델)이 들어갔습니다.

 

 

5. 웹서핑 구동 능력

 

웹서핑 구동 능력은 다른것보다 AP와 램의 영향이 절대적입니다. 램이 적고 AP의 성능이 안좋으면

 

페이지 이동시나 로딩시 버벅일수 밖에 없을 것입니다.

 

인터넷 속도가 느려서 천천히 뜨는것과는 별개의 문제입니다.

 

이것도 영상을 통해서 한번 테스트 해보도록 할게요.

 


 

테스트 결과 웹서핑 시 그렇게 버벅이거나 하는 느낌을 받지는 않았습니다.

 

하지만 글이 상당히 많거나 그림의 용량이 큰 페이지의 경우에는 스크롤을 빨리 내리면

 

원활하게 로딩이 안되거나 조금 버벅이는 경우도 생겼습니다.

 

하지만 이정도라면 램 1GB 짜리 치고는 양호하단 생각이 듭니다. 여기서 쿼드코어의 실력이 

 

발휘 되는것 같습니다.

 

그리고 킷캣의 영향이 큰가요? 킷캣이 이번에 가용램을 늘리기 위해 많이 노력했다던데

 

실제로 1GB 중에 600MB 정도는 남아서 웹서핑 하는데 더 쾌적한 환경을

 

제공해주지 않았나 싶습니다.

 

 

 

 

6. 배터리 성능 테스트

 

넥서스7의 배터리는 약 4300mAh 입니다. 스마트폰에 비해서 많지만 7인치 짜리 화면을

 

유지하는데 과연 많은 양일까 생각을 해보았지만 테스트 부터 해보았습니다.

 


 

이렇게 엉망으로 사진 찍은거 양해 바랍니다;;

 

넥서스7이 어느것 하나 연동되있는게 없어서;; 너무 귀찮아서 폰으로 사진을 찍어버렸습니다.

 

스크린샷을 봐주시면 97%에 16분입니다.

 

사실 제가 배터리 시간 얼마나 가나 테스트를 한번 해볼려고 했는데

 

영상을 계속 돌려도 100%에서 잘 안떨어지려 하다보니;; 좀 당황했습니다.

 

그래서 720p 짜리 영상 15분 동안 재생시켰더니 저런 결과가 나왔습니다.

 

밝기 최대 / 720p 영상 15분 돌리는것에 /와이파이도 켜놨습니다.

 

그럼 저대로 가면 1시간에 12퍼가 닳는 것이고 약 8시간 정도 간다는 결론이 나옵니다.

 

물론 8시간 쭉 가지는 않을것입니다. 중간에 변수가 있다면 대략 7~9시간이 간다고 보면 되는데

 

상당한 수치죠? 배터리가 그렇게 썩 조루 배터리라는 느낌을 못받았습니다.

 

이것은 제가 추측하기로는 백그라운드에 실행하는 어플이 일반 통신사 약정 폰에 비해

 

상당히 적은 레퍼런스이기 때문이 아닐까 생각이 듭니다.

 

제 폰은 꺼놔도 자고 일어나면 10퍼 정도가 닳아있는데 대기전력이 상당하단 뜻이죠.

 

그런데 이건 동영상 프로그램 외에 다른 게 딱히 돌아가는게 없어서 그럴지도 모른다 라는 생각이

 

드네요.

 

 

 

 

-------------------------------------------------------------------------------------------

이것으로 테스트 해볼것을 모두 마쳤습니다.

 

넥서스7 2세대 일명 뉴넥7 이라 불리는 물건이 나와서 현재 이 넥서스7 1세대는 16기가 기준

 

거의 10만원 초반에 풀리고 있습니다. 중반에도 파는 경우가 있지만 잘 사가는 경우는 없더군요.

 

7인치 짜리 제품 중에서 성능도 괜찮으면서 브랜드 네이밍도 있고 가격도 저렴한건

 

넥서스 시리즈가 거의 유일하다 시피 합니다.

 

혹여나 넥서스7 1세대를 갖고 싶다. 가격도 좋고 너무 땡기지만


뉴넥7과 비교해서 너무 뒤떨어지는것이 아닌가? 라고 생각 하신다면


영상이나 웹서핑 목적으로 전혀 무리가 없다라고 말씀 드리고 싶습니다.


물론 빠릿빠릿함은 뉴넥7에 비할바가 안되지만 버벅인다는 느낌은 거의 없었으니까요.


단 화질에 굉장히 민감하시면 해상도가 높은 뉴넥7으로 가시는게 현명합니다.


이상으로 넥서스7 1세대 리뷰를 모두 마쳐보겠습니다.


읽어주셔서 감사합니다.




반응형


 

 


 

박스 모습입니다. 넥서스 7이 처음 발매됐을때 많은 사람들이 구매를 하고 개봉기를 올렸죠. 

 

특히 박스 디자인을 보면 태블릿의 검은 테두리를 이용해 '7'을 표현했다고 구글이 참 대단하다 

 

그랬었는데요. 저게 정말로 7을 의미하는건 맞죠?   






 

넥서스 7의 겉 박스를 벗기면 또 이렇게 속 박스가 나옵니다. 그때 당시 199달러 물건 치고는 

 

박스 디자인도 신경 잘 쓴편인것 같아요. 종이도 싸구려 코팅 종이가 아닌듯....




 

 



 

개봉 장면 입니다. 이거 깨진거 아니에요;; 사진 찍고 비닐 찌그러져서 깨진것 처럼 보이지만

 

번쩍 번쩍한게 멀쩡한겁니다.

 





 

태블릿을 까면 밑에 박스가 나오는데요. 중간에 끼워져 있는 저 조그만 박스에는 충전기와 USB 선이  

들어있습니다. 사용설명서도 있구요. 

 

199달러 짜리다 보니 뭐 구성품이 그렇게 푸짐하게 되어 있진 않습니다.






 

넥서스 7을 켜자마자 킷캣으로 업그레이드 하라는 말이 ㄷㄷㄷ;; 내 옵지프로도 킷캣은 커녕

 

4.1.2 젤리빈 밖에 안되서 빡치는데 내 폰보다 성능이 딸리는 넥서스 7이 킷캣 먼저 먹다니...

 

이래서 레퍼런스가 좋은겁니다. 갑자기 넥서스 5가 확 끌리네요. 옵지프로 없애고 넥서스 5 갈까... 






 

앞 모습은 이렇습니다. 화면이 5.5인치인 제 것과 7인치인 넥서스가 기껏해야 1.5라서 차이 많이

 

안날줄 알았는데 정말 어마어마하게 차이납니다. 7인치라고 뭐 작네 이렇게 생각하지는 못해요.

 

역시 태블릿 PC는 태블릿 PC 인가 봅니다. 한손으로 잡을수 있지만 크기는 꽤 크다는 느낌 받습니다.






 

뒷면입니다. 에이수스에서 제작하였지만 우리는 구글 넥서스7이라 부르죠 

 

에이수스는 위탁 생산업체일 뿐이라... 저렇게 마크를 새기는것으로 자신이 이걸 만들었다고

 

존재를 알리는듯 합니다. 뒷면이 저렇게 생겼는데 에이수스 마크 밑에가 스피커입니다.

 

그리고 잘 미끄러지지 않게 처리를 해놓아서 미끄러져 떨어질 일은 크게 없을듯 합니다.

 



 

아랫 면입니다. 전 좀 이상하게 생각하는게 왜 이어폰 잭이 아래에 있죠? 보통 위에 있지 않나요.

 

마이크로 5핀 하고 저렇게 같이 있으면;; 굉장히 불편하고 짜증날텐데요.

 

저렴한건 좋지만 3.5파이 이어폰 잭이 아래에 있어야 원가절감이 되나요...

 

만약 그렇다면 충분히 이해합니다!

 

 

오른쪽 면입니다. 앞면 기준으로 오른쪽입니다. 뒷면 기준으로 하면 왼쪽이구요 

 

저기에 버튼 딱 두개 있어요. 전원키와 볼륨키요.

 

그 외에 볼건 없습니다. 더 이상 리뷰할 거리 찾아볼것도 없고... 

 

이것으로 포스팅을 슬슬 마무리 해야 할것 같습니다. 

 

다음 에는 여느때와 마찬가지로 성능 리뷰를 해볼것입니다. 과연 넥서스7의 성능이 얼마나 좋을지 


한번 테스트도 해보겠습니다. 






반응형

리미트 버스트(Limit Burst). 직역하면 한계를 터뜨린다 라는 것인데 쉽게 말해서 필살기 같은 것이다.


약간 재플리쉬 비슷한 이 단어는 파이널 판타지 브레이브 엑스비어스에 또다른 중요함과 변수를 담당하고 있다.






리미트 버스트 수치는 트러스트 수치와 마찬가지로 유닛의 정보를 보면 나와 있다.

트러스트 마스터 수치는 비교적 크게 잘 보이지만 리미트 버스트는 좀 조그맣게 표시가 되어 있다.


현재 내가 가지고 있는 세실의 리미트 버스트 레벨은 15인 것이며 앞으로 1150의 리미트 경험치를 쌓으면 레벨 업을 할수 있다. 참고로 리미트 경험치는 전투에서 리미트 버스트를 사용하면 1씩 찬다.


앞으로 1150번의 리미트 버스트를 사용(....) 해야 한다는 무시무시한 결론에 도달한다.


그렇기 때문에 대부분의 유저들은 트러스트 마스터에는 신경을 많이 써도 리미트 버스트는 제대로 신경조차 쓰지 않는 경우가 많다.







리미트 버스트를 사용하기 위해서는 우선적으로 전투를 시작하여 몬스터를 공격할시 나오는 붉은보석을 획득해야 한다. 일반공격을 하면 많이 나오며 몬스터가 붉은 보석을 주는 양은 한정되어 있다.


이것을 계속 모으다보면(그래봤자 일반공격으로 몹 3번 정도 공격하면 리미트 수치를 꽉 채운다)







각 캐릭의 리미트 바가 반짝반짝 거리는데 리미트 버스트를 사용할 준비가 되었다는 뜻이다.





 스킬 파트로 가면 리미트 기술을 사용할수 있다. 리미트 기술은 각 캐릭마다 모두 고유하게 다른 스킬을 지니고 있으며 위의 스샷에 나와있듯이 지탄의 경우 '적 전체에 피해'를 주는 광역스킬을 지니고 있다








리미트 기술을 사용하면 각 캐릭의 고유한 이펙트가 나오면서 강력한 스킬을 1번 구사하고 리미트 수치는 다시 0으로 되돌아오게 된다.


리미트 버스트 레벨은 이 리미트 기술의 위력을 향상시켜주는데 그 목적이 있는 것이다.






* 리미트 버스트 레벨업은 반드시 필요한가?


리미트 버스트 레벨업을 시키면 리미트 기술의 위력이 그만큼 강력해지는 것이니 당연히 올려야 하지 않겠느냐? 라는 의견이 있을수 있다. 물론 그 말은 정답이다.


하지만 리미트 버스트 레벨업을 시키기 위해 들이는 노력대비 효율이 트러스트나 환수 등에 비해 좀 떨어지는 편이기 때문에 대체로 리미트 버스트 레벨업은 등한시 하는 경우가 있기도 하다. 실제로 노력에 비해 효과가 미미한 캐릭도 상당수 존재 한다.


하지만 그 리미트 버스트 레벨업에 따라 효과가 눈에 띄게 달라지는 캐릭이 있는데 대표적으로 '세실' 이 있다.



세실이 3성일 경우 방어력과 정신력을 3턴동안 아군 모두를 20% 상승 시켜준다.

3성에서 올릴수 있는 리미트 버스트 레벨 최대치인 10까지 올리면 29% 상승 시켜준다.


세실이 4성일 경우 똑같이 방어력과 정신력을 3턴동안 30%에서 최대레벨이면 44% 상승 시켜준다.


세실이 5성일 경우 방어력과 정신력을 3턴동안 40%에서 최대레벨이면 59% 상승 시켜준다.


세실이 6성일 경우 공격력과 방어력, 정신력을 3턴동안 50%에서 최대레벨이면 74% 상승 시켜준다.


여기서 주목해야 할 점은 세실이 6성일 경우이다.


세실의 리미트버스트는 공격스킬이 아닌 버프 스킬인데 6성이 되었을때 공격력,방어력,정신력을 50% 올려주는것도 사실 대단한 수치이다. 하지만 리미트 버스트 레벨을 최대까지 올렸을 경우 24%나 더 줘서 74%를 올려주게 되는데 아이템이나 어빌리티로도 24%라는 수치는 얻기가 힘든데 사실상 리미트 버스트 레벨업만 잘시켜놓으면 꽁으로 얻을수 있는 것이다.


그렇기 때문에 많은 유저들이 세실의 경우 따로 리밋작이라는 리미트버스트 작업을 실시하여 올릴만큼 최대한 끌어올려가며 세실을 키우고 있다.


리미트버스트 작(=리밋작)에 대해서는 다음편에 다뤄볼 계획이다.



리미트 버스트에 대한 이야기는 이정도면 충분하지 않을까 싶다. 사실 주저리주저리 두서 없이 썼지만 필살기 쓰는거 하고 필살기 레벨 올리는 거다. 그게 전부다. 


리미트 버스트 레벨을 적절히 신경을 써서 효율적인 캐릭을 키우길 바란다.



반응형

플레이스테이션2가 발매되어 한창 인기를 끌 당시 플레이스테이션1 모델이 또 하나 출시 되었는데 이름이 PS ONE입니다.


보통 우리나라 사람들은 플스라고 줄여 말하듯이 해외도 그런것 같습니다만 여튼 PS ONE은 이전에 출시된 PS1 과는 조금 생김새가 달랐습니다.


기능을 축약하고 크기를 줄여 미니플스를 출시 한것이죠. 


그런데 플레이스테이션2가 나온 시점에서 굳이 미니지만 플레이스테이션1을 출시한 이유는 당시까지 PS1 게임이 아주 활발하게 출시가 되었기 때문입니다.


이 PS ONE이 나온 2000년에 그 유명한 파이널 판타지 9이 출시가 되었구요. 불과 1999년만 해도 PS1의 게임은 엄청난 양으로 출시가 되고 있었습니다.


그렇기에 플레이스테이션1 만으로도 할 게임이 너무 많은 상황이었기 때문에 아직까지 플레이스테이션1에 대한 수요는 충분했고, 그 때문에 소니가 출시를 하였던 것이죠.






각진 모양의 PS1과는 달리 둥글둥글한 생김새를 지니고 있구요.





지원 단자라고는 영상 출력 단자, 전원 단자 두개 뿐입니다. 




그 외에 나머지 부분은 기존의 PS1과 똑같습니다. 사실 여기서 더 빠지면 게임을 즐기기에는 좀 부적절해지죠.




가지고 있는 모델을 찍은건데 오랫동안 사용안했더니 좀 꾀죄죄 합니다. 듀얼쇼크도 PS ONE은 다릅니다.


기존의 PS1은 PlayStation이라 적힌 반면 PS ONE은 PS ONE이라 적혔죠. 사실 차이는 없어요. 그냥 저 글자 차이가 전부...




비록 4000원 주고 산 짭이지만 단 한번도 문제 없이 잘 사용해온 기특한 PS1 전용 메모리카드입니다.


이렇게 갖추면 게임을 돌릴 준비는 다 갖춰진거죠.


이 PS ONE은 대략 2800만대 정도가 팔렸다는데 단순히 크기만 줄인것이라면 이런 판매량이 나올수가 없습니다.


PS ONE은 기존 각진형태의 PS1은 절대 가질수 없는 아주 큰 특징이자 강력한 무기를 가지고 있었습니다.








바로 위에 보듯이 전용 모니터입니다. 오로지 PS ONE에만 호환되는 이 모니터는 디자인 자체도 PS ONE가 아주 잘 어울려서 깔끔함을

자랑했으며 5인치라는 당시로서는 대화면을 자랑했으며 화질도 그리 나쁘지 않았습니다.


어쩌고보면 PSP 이전의 플레이스테이션 휴대용 게임기였을지도 모릅니다. 전원케이블과 듀얼쇼크 패드만 들고 다니면 어디에서든 게임을 즐길수 있다는 점이 강점으로 작용했는지 나쁘지 않은 판매량을 보여줬습니다.


문제는 저 LCD 모니터가 요즘따라 보기가 조금씩 힘들어지기도 하고 가격도 엄청 비쌉니다. 저 모니터 하나가 중고로 대략 7~10만원에 거래가 되는데 가지고 있는 사람도 그리 많지 않다보니 점점 보기가 힘들어집니다.




이것으로 PS ONE에 관한 이야기는 모두 마치겠습니다. 




반응형





안녕하세요.

이번에는 저번에 썼던 사용기 1편에 이어 2편을 작성해볼 계획입니다.

이번에도 주로 소프트웨어보다는 하드웨어 측면으로 비교를 해볼생각입니다.

제가 아이폰을 써보고 느낀점을 그대로 쓸 생각입니다. 그러니 혹시 애플 팬보이 분이시라면 안보시는게 좋습니다.

단점도 가감없이 쓸거거든요.

리뷰 시작하겠습니다.

------------------------------------------------------------------------------------------------------------------


아이폰6s의 내구성을 말하기전에 아이폰6의 내구성을 논하지 않을수가 없습니다.

아이폰6는 일명 밴드게이트라는 사건을 통해 내구성이 너무나 약하다라는 논란이 생겼죠.


한 유투버가 아이폰6의 양쪽을 잡고 힘을 줬더니 아주 힘없이 휘어지는 동영상이 아주 화제가 되었는데요. 위의 사진처럼 사람이 힘을 좀 가하면 바로 구부러지게 되었습니다.

한 쪽에서는 그럼 저렇게 힘을 줘서 안휘어지는 폰이 어딨냐라고 할수도 있겠지만 뒷주머니에 넣고 돌아다니다보면 구부러져있는 아주 웃지못할 상황이 벌어지기도 하죠.

이로 인해 애플이 상당히 굴욕을 많이 당했구요. 경쟁사들은 이틈을 놓치지 않고 애플 디스광고를 무수히 많이 보내며 신랄하게 애플을 깠습니다.

아이폰6에 쓰이던 소재는 알루미늄6000인데 이게 강성이 좀 약하다는게 결론이 난거죠.

가볍게 만들기 위해서라는 목적은 있을수 있지만 그렇다고 해도 적어도 실사용환경에서는 구부러지게 만들면 안되죠.

갤럭시s6는 이번 파리 테러사건때 총알도 막았다고 하는데... 그 정도까지는 아니더라도 강성이 좀 높을 필요는 있었습니다.​

그래서 이번에 애플이 아주 이를 갈아서 소재의 강성을 대폭 강화시킨 알루미늄7000을 아이폰6s에 적용시켜 버립니다!

그래서 이번에도 그 유투버가 아이폰6s를 가지고 와 아이폰6s가 얼마나 잘휘어지는가해서 실험을 해봤는데 놀랍게도 30파운드의 힘만 줘도 구부러지던 아이폰6의 알루미늄과 달리 70파운드(약 31.75kg) 이상의 힘을 줘도 잘 구부러지지 않는 모습을 보여줬죠.

여하튼 아이폰6s의 몸체는 아이폰6 보다 내구성이 뛰어난걸로 밝혀졌습니다. 적어도 실생활에서 아이폰6s가 구부러져있는 모습을 보기는 힘들겠다라는 것이죠. 하지만 몸체 말고 디스플레이는 어떨까요?

솔직히 말씀드려서 폰의 내구성 문제는 거의 대부분 액정 아닐까요? 몸체가 부서지는 일은 거의 본적이 없지만 액정은 상당히 자주 깨먹습니다.

특히 폰을 잘 떨구는 분들은 뻑하면 액정이 박살이 나서 비싼돈을 물고 수리를 하거나 그꼴이 싫어서 엄청 두꺼운 케이스를 착용하곤 하는데요.

아이폰6s의 옆면을 최대한 가까이 찍어봤습니다. 보시면 아시겠지만 사이드 알루미늄안에 액정이 있지 않고 액정이 돌출되어 있습니다.

이러한 형태는 애플이 액정 사이드 부분을 곡선으로 매끄럽게 깍아 디자인을 아름답게 만들려는 목적으로 하려다 보니 어쩔수 없었을겁니다.

저 또한 전면부분을 보고 아이폰이 참 이쁘긴 하구나 하고 느낄정도였죠. 물론 뒷면 보고 경악을 금치 못했지만...

그런데 이렇게 될경우 사이드 알루미늄 부분이 액정을 보호해주지 못합니다. 만약 옆으로 떨구면 어떻게 될까요?

액정 사이드 부분에 충격이 그대로 전해져서 보다 쉽게 박살이 날겁니다. 애플이 이번 아이폰6s에 액정에다가 무슨 짓을 해서 액정 내구성도 강화됐다고 뉴스에 뜬걸 본 기억이 나는것 같은데요.

무슨 방탄유리같은걸 쓰지 않는 이상 높은 곳에서 떨어진 유리는 깨지게 되어있습니다. 특히 얇은 유리라면 말이죠.

스마트폰에 쓰이는 유리들은 상당히 얇은 편인데 아이폰6s에 뭔짓을 했다 하더라도 떨구면 액정이 분명히 깨질것 같아 보이네요.

몸체의 내구성은 끌어올렸지만 액정의 내구성은 만족할만한 수준이 나온다고 생각하진 않습니다.

이런걸 생각하면 갤럭시 S2가 내구성으로 얼마나 깡패였으며 얼마나 명품이었는지 반증하는 사례가 되겠네요.

갤럭시 S2는 부서지지 않아서 오히려 삼성한테 피해가 갔다고 하죠? 농담하는 소리로 이것때문에 소비자들이 새폰을 안사서 삼성이 실적악화가 됐다는 말도 있던데 ....​


아이폰6s의 디스플레이는 레티나 HD 디스플레이입니다. 애플이 참 마케팅을 정말 잘하고 감탄이 나온다고 생각이 드는게 아이폰6s의 해상도는

겨우 1334 x 750으로 HD급 수준입니다.

요즘 왠만한 안드로이드 폰들은 기본 1920 x 1080의 풀HD 디스플레이를 장착하는건 예삿일이고 엑스페리아 Z5 프리미엄은 가변 해상도이긴 하지만 4K (3840x2160) 이라는 컴퓨터 모니터에서도 잘 보기 힘든 해상도를 가지기도 합니다.

그런데 애플은 HD급 디스플레이입니다. 그런데 이걸 레티나 디스플레이라고 마케팅을 해서 326ppi 수준으로 유지하고 있는데요.

이게 또 웃긴게 막상 제가 뚫어지게 아이폰6s를 보면 정말로 픽셀이 안보입니다. 이 글을 쓰면서도 보고 있는데도 픽셀이 거의 안보입니다.

레티나라는 말이 망막이라는걸 의미하고 레티나 디스플레이는 '사람의 망막으로 픽셀을 구분할수 없는 수준의 디스플레이' 라는건데요.

아이폰4가 처음 나왔을 당시만 해도 혁신에 가까운 초고해상도라서 의미가 남달랐지만 현재는 그 의미가 좀 퇴색되고 있긴 합니다.

하지만 단순히 LG 고해상도 IPS 디스플레이를 이런식으로 까지 의미부여를 하는걸 보면 괜히 마케팅 깡패 애플이 아닌것 같습니다.

이걸 좀 LG가 보고 배웠으면..... 제발.....................




이건 아이폰6s의 디스플레이를 찍어본건데요. 요렇게 찍어선 의미없는거 압니다만 사진한장 안찍으면 너무 성의 없어 보일까봐

그냥 찍어 봤어요. 디스플레이 품질 하나는 참 좋습니다. 지금 봐도 감탄이 나오긴 하는데요. 이게 다 엑스페리아 Z1의 조악한 디스플레이 때문에 도로 눈호강을 하는게 아닐까 하네요.

하이마트 가서 갤럭시 S6 엣지를 봤는데 디스플레이가 너무 뛰어나서 스티커인줄 알고 긁어볼려 했던건 함정... ㅎ

비록 아이폰6s의 해상도는 낮은 편이고 이걸 마케팅 빨로 메꾼다는 비판이 올수도 있으나 이 점은 오히려 다른 쪽에서는 상당한 이득이 됩니다.


​바로 배터리 성능입니다.

 

아이폰6s의 배터리는 아이폰6보다 100mAh가 오히려 더 줄어버린 1715mAh 입니다. 이 소식을 처음 접했을땐 애플이 드디어 돈에 완전히 미쳐서 영혼 까지 팔아버렸구나 했습니다.​ 줄일게 없어서 배터리를 줄여버리네 라고 생각했는데요.

 

막상 써보니 그렇게 배터리가 모자라진 않습니다. 해상도가 HD급 밖에 되지 않다 보니까 상대적으로 낮은 해상도로 인해 배터리 소모면에서는 상당한 이득으로 돌아온거죠.

게임을 하면서 좀 빡빡하게 돌리니까 5시간 30분 정도 갔구요. 평상시대로 돌리니까 10% 남기고 6시간 30분 정도의 사용시간을 보여줬습니다.​




하지만 이정도의 시간은 제가 엑스페리아 Z1을 처음 썼을때와 비교하면 그리 많은 편은 아닙니다.

엑스페리아 Z1은 풀HD 해상도였음에도 전력을 상당히 타이트하게 잘 관리해줘서 초반에 사용시간이 10시간이 넘었던걸 감안하면 그 당시만큼의 감동은 없었습니다. 다만 생각보다 아이폰6s의 배터리가 줄줄 녹아내린다는건 아니구요.

평상시대로 아침에 일어나 100%의 배터리를 지닌 아이폰6s를 들고 볼일 보고 저녁 7시쯤 귀가하게 되면 충분하다는 생각은 해보았습니다.

지금 제 아이폰이 새제품이라 이정도의 배터리를 보여주지 아마 시간이 지나 배터리의 수명이 줄어든다면 이것보다 훨씬 못나올것입니다.​

아 그리고 충전시간을 논하지 않을수가 없는데요.

배터리 용량이 적다보니까 충전속도가 무진장 빠른편입니다. 제가 저 10% 남았을때부터 2A의 출력을 내는 샤오미 배터리에 연결시켜 충전을 해봤는데요. 저때가 12시 28분이었는데 1시 30분 정도 되서 확인해보니 배터리가 98%까지 차있었습니다.

즉 1시간 정도 지나니까 거의 다 채웠다는 건데요. 퍼센테이지로만 보면 88%를 1시간만에 채웠다는 건데 엑스페리아 Z1도 충전속도가 꽤 빨라서 대단하다 했는데 애플은 아예 그 배터리 용량 자체가 적으니까 상당히 빠른속도로 충전을 하더라구요.​

이것도 따로 메뉴 만들어서 다룰까 했는데 이거 말고 쓸이야기가 없어서 이정도로만 하겠습니다.

충전속도는 짱짱맨!​

제가 아이폰6s를 구매하면서 가장 기대한건 음악입니다. 예전 아이팟 시절부터 음질이 상당히 좋아서 음악매니아들이 즐겨 찾았던 mp3 플레이어가 아이팟 시리즈였다는데요. 아이폰도 얼마나 좋은 음질을 들려줄까 기대했습니다.

그 기대를 톡톡히 해냈습니다. 들어본 결과로는 말이죠. 엑스페리아 Z1도 음질로는 두말할필요 없이 좋습니다. 그 엑스페리아 Z1과 비교해봐도 밀리지 않는 다는 생각을 했습니다.

엑스페리아 Z1은 자체 성능도 좋지만(아무리 소니가 망해가니 뭐니 해도 음향/영상기기로는 아직도 독보적인 위치입니다)

아이폰6s에다가 이어팟을 꽂아 청음해보니 대체로 깨끗하게 들려줍니다. 깨끗하게 못들려주는건 mp3 자체 품질이 딸려서 그런것 같구요.

특히 애플판 FLAC인 ALAC으로 포맷된 음악들은 엑스페리아보다 더 좋을수도 있겠다라는 생각은 해봤습니다.

물론 그 엑스페리아로 FLAC 음원을 들어본적은 없어서 확실히 엑스페리아보다 좋습니다 라고 말은 못합니다. 하지만 성능이 뛰어난편이 속하는건 확실한것 같습니다. 음악에는 꽤나 문외한이라서 그냥 잘 들리면 그만이긴 하지만 깨끗하냐 뭉개지냐 정도는 구분 할수 있잖아요.

아이폰을 사용하면서 아 869,000원의 값어치를 하는구나 하면서 느낀 몇 안되는 경험중 하나입니다.



음악 UI도 대체로 마음에 듭니다. 꽤나 직관적인 인터페이스라 원하는 기능 바로 찾아 실행시킬수도 있구요.

안드로이드에서 쓸수 있는 기능들 사용 가능합니다. 폐쇄적인 애플이라고 기능까지 완전히 폐쇄적이진 않나봐요.

그런데 이런 음악에도 불만인점이 있습니다.


왜 EQ 설정을 음악 앱 자체에서 못하고 설정을 들어가야 하는건지 이해가 가질 않습니다.

혹여나 제가 잘못 알고 있는거라면 댓글 부탁드릴게요. 그런데 EQ 설정을 이렇게 밖에 못한다면 잘하다가 왜 이런데서 삐끗한건지 이해가 가질 않네요. 그냥 음악 앱 안에다가 만들어놓으면 안되나?

그리고 한가지 더 있는데요. 이게 음악앱의 문제인지 iOS의 자체 문제인지 모르겠는데 음악 틀다가 다른 앱같은걸 실행하면 간혹 그 음악이 완전히 꺼지고 앱 자체의 배경음이나 효과음이 켜져 내가 틀어놨던 음악이 꺼지는 일이 발생합니다.

특히 제가 클래시 오브 킹이라는 게임을 좋아해서 즐겨하는데 이 게임만 실행하면 틀어놨던 음악이 꺼져요. 클래시 오브 킹 효과음과 배경음을 모두 꺼도 마찬가지에요. 그래서 아래에서 바를 끌어보면 음악 노티바가 제가 틀어놨던 음악 제목이 아니라 Clash of Kings라고 적혀 있어요

 


이렇게 말이죠. 이거 뭐 해결방법 같은건 없나요? 만약 해결방법이 없는 문제라면 이것도 문제가 될수 있어 보입니다.

 ​

 

-----------------------------------------------------------------------------------------------------------------

이것으로 2편 끝났습니다. 다음 3편에서는 하드웨어 보다 소프트웨어 측면으로 아이폰6s를 다뤄보는 리뷰를 쓸까 합니다.

아이폰6s로 와서 강화된 기능, 추가된 기능들을 사용해보면서 효용성이나 성능에 대해​ 따져보겠습니다.

익스플로러로 쓰니까 렉이 너무 걸려서 글자를 쓰면 한참있다 글자 썼다고 적용이 되는데 크롬으로 갈아탈까봐요...

이것으로 사용기 2편 모두 마치겠습니다.​

반응형


몇 편에 나누어 쓸지는 모르겠으나 이번 편에서는 스펙, 크기 비교, Antutu 비교, 게임성능에 대해 알아보고자 합니다.

아이폰6s 스펙은 다음과 같습니다. 전작 대비 CPU는 70% GPU는 90% 정도 향상됐다고 하는데 특히 그래픽을 담당하는 GPU가 90%나 상승해서 게임성능이나 3D 성능에 얼마나 폭발적인 성능을 미칠지 기대가 되구요.

애플이 램을 2기가를 장착시킨 최초의 아이폰입니다. 

램 1기가 가지고는 좀 부족한 감이 많이 있습니다.

저 또한 램 1기가 짜리인 뉴 아이패드를 처음 구매해서 사용할시에는 꽤 쓸만한 성능을 보였으나 지금은 엄청 버벅여서 쓸만한 물건이 못되서 팔까 말까 고민하고 있는 상황인데 태블릿도 그런데 하물며 스마트폰이 램 1기가라니... AP로만 땜빵하기에는 한계가 있었죠.

램 2기가는 제가 아이폰6s를 구입하기로​ 마음먹었던 결정적 이유 입니다. 

디스플레이는 ​여전히 레티나 디스플레이라고 우기는 저해상도의 디스플레이입니다. 사실 저해상도라고 하기도 좀 웃기긴 하지만( 특히 같은 인치수인 엑스페리아 컴팩트 시리즈도 1280 x 720 밖에 안되는걸 보면 그리 낮은 해상도는 아닙니다) 다른 플래그쉽 기종들에 비하면 턱없이 모자란건 맞죠. 

덕분에 배터리를 좀 덜먹고 빠릿하다는 장점은 있지만 남들 1080p 영상을 볼때 아이폰6s 이용자들은 720p 영상을 봐야 하는 상황이 오죠. 

카메라가 이번 6s로 오면서 후면이 1200만화소로 늘었습니다.​ 전면, 후면 어마어마하게 올라갔습니다. 카메라 테스트는 나중에 다뤄보겠습니다.

배터리가 도로 줄었습니다.​ 아이폰6는 1810mAh인데 이것도 작다고 욕먹었는데 아이폰6s와서 거의 100mAh나 줄어버렸죠. 애플은 프로세서의 공정이 개선되면서 전력소모가 줄었기 때문에 배터리를 줄여도 된다고 하는데 소위 말해서 개x랄 이죠. 최적화를 잘하고 전력 소모량 개선한거는 다 좋은데 있는거 좀 도로 빼지 맙시다. 

색깔은​ 이번에 로즈 골드가 추가됐습니다. 핑크색 때문에 여성 구매자들이 많이 로즈골드로 사가는등 로즈골드의 인기가 많은것으로 압니다. 그렇지만 제 기준으로 뒷면의 이상한 절연띠의 이질감을 없애는데는 그나마 스페이스 그레이 같은 어두운색 계열이 나은것 같습니다.

​아이폰6s로 판올림되면서 특수한 기능들이 많이 생겼는데 시리야!, 3d touch, 향상된 touch ID, LIVE photo, 레티나 플래쉬, 4k video 등이 그것 입니다. 모두 다뤄볼 생각이니 뒤에 기술하겠습니다.

출고가가 꽤 고가 입니다. 아이폰6 같은 경우 16기가 기준 출고가가 78만 9800원입니다. 그런데 아이폰6s는 16기가 기준 출고가가 86만 9000원으로 거의 8만원 가까이 올라갔는데요. 이는 애플코리아가 아이폰6s를 한국에 출시하면서 6보다 가격을 올려버렸기 때문입니다. 때문에 가격이 좀 더 비싸졌습니다. 환율, 물류비용, 전파인증 비용 등등이 있다고 하지만 여튼간에 가격이 올라간건 소비자입장에서 전혀 반갑지는 않습니다. 만약 아이폰6와 동일한 가격으로 나와줬으면 저도 좀 더 싸게 구매했을텐데요

​스펙에 대해서는 여기까지 다루어 보겠습니다.

아이폰6s의 디스플레이 크기는 4.7인치 입니다. 갤럭시 S3, 옵티머스 LTE2 시절의 프리미엄 스마트폰 사이즈들이 대부분 4.5~5인치 정도의 사이즈를 지녔습니다.

하지만 현재 대부분의 프리미엄 스마트폰들의 디스플레이는 5인치 이상은 기본으로 장착하고 있어 아이폰6s의 디스플레이가 상대적으로 작지 않을까 걱정이신분들도 많을겁니다. 커다란 화면에서 실감나는 영상을 감상하고 싶은데 조그만 영상으로는 감질나서 좀 그렇기도 하거든요.

그래서 제가 크기 비교를 해봤는데요.

왼쪽은 갤럭시 s3 케이스, 중간은 아이폰6s, 오른쪽은 엑스페리아 Z1 입니다.

왜 갤럭시 S3는 케이스 밖에 없냐면 갤럭시 S3를 예전에 팔아버리고 남은 껍데기 뿐이라 비교대상이 없습니다.

하지만 갤럭시 S3와 크기가 유사하다는걸 감안해주시고 비교를 봐주시기 바랍니다.

갤럭시 S3는 4.8인치 , 아이폰6s는 4.7인치, 엑스페리아 Z1은 5인치 입니다.

엑스페리아 Z1보다는 당연히 아이폰6S가 작지만 의외로 갤럭시 S3하고 크기 비교해서 좀 더 커보입니다.

갤럭시 S3 케이스에 아이폰6s를 장착한다 생각하고 맞추어봤더니 케이스를 넘어버리네요.

케이스라는게 본체보다 조금 크게 나온다는걸 감안할때(당연히 좀더 크게 나와야 본체를 감싸겠죠.) 아이폰6s는 갤럭시s3보다 큽니다.

엑스페리아 Z1과 비교했을때 이정도 차이가 납니다. 당연히 상하좌우로 약간씩 아이폰6s가 더 작습니다.

이번에는 디스플레이 크기를 비교해보겠습니다. 당연히 디스플레이 자체 크기는 엑스페리아 Z1이 훨씬 큽니다. 게다가 같이 비교해보니까 엑스페리아 Z1 쪽이 좀 더 시원시원해 보이기도 하는데요.

하지만 문제는 소프트키가 존재한다는 겁니다. 소프트키는 가로로 폰을 쓰든 세로로 폰을 쓰든 키가 그에 맞게 위치가 변경된다는 편리함은 있지만 그만큼 실사용면적을 까먹어버리기 때문에 전 개인적으로 소프트키 별로 선호하지 않습니다.

소프트키는 10인치 이상의 안드로이드 태블릿에 어울린다 생각하지 5인치 밖에 안하는 폰에는 없는게 차라리 낫다고 생각하는데요.

소프트키를 빼고 실제로 보여주는 디스플레이 면적은 어떤지 비교해보았는데요. 오히려 상하의 길이는 아이폰6s가 좀더 깁니다.

사진 각도가 이상해서 동일한 위치선상에 찍지 못한것 같으니 동일한 위치선상인거 몇번이나 확인하고 찍어본거구요.

소프트키를 뺀 면적만 보자면 4.7인치인 아이폰6s가 5인치인 엑스페리아 z1보다 더 큰 면적을 보여주고 있습니다.

이 말인 즉슨 소프트키가 거의 0.3~0.4인치는 잡아 먹고 있다는 뜻이며 5~5.2인치 소프트키가 장착된 안드로이드폰과 아이폰6s의 실 디스플레이 면적은 비슷하다는 이야기입니다.

물론 영상을 볼때는 소프트키가 숨어들어가기 때문에 아이폰6s가 낫다고 말할수는 없습니다. 하지만 웹서핑과 같은 영상과 게임 외의 환경에서는 5인치 초반 소프트키 안드로이드 스마트폰과 아이폰6s와 비슷비슷하다고 말씀드리고 싶습니다.

그러니 제가 하고 싶은 말은 4.7인치가 너무 작지 않을까 걱정하지 말라는 겁니다. 물론 난 갤럭시 노트 시리즈 급 정도 아니면 만족 못해!라고 하시면 아이폰6s 말고 아이폰6s 플러스를 보셔야 하겠죠?

아이폰6s의 안투투 점수와 엑스페리아 Z1 안투투 점수를 비교해서 올려보도록 하겠습니다.

아이폰과 엑스페리아 Z1은 다른점이 달라도 너무 많은데요. AP부터 시작해서 내부 OS까지 몽땅 다르기 때문에 비교한다고 정확한 지표는 되지 못하고 벤치마크 점수 자체를 신뢰할수는 없으나 그냥 참고용으로 알아두시기 바란다는 뜻으로 올려봅니다.

 

위쪽은 아이폰6s이고 아래쪽은 엑스페리아 Z1 입니다. 아이폰6s는 58500점 정도가 나오고 엑스페리아 Z1은 40350점 정도가 나왔는데요.

특히 램 속도(Ram Speed)와 3D 그래픽(3D Graphics)에서 엄청난 점수 차이가 났습니다.

아이폰6s는 램 속도가 5081점이 나온거에 비해 엑스페리아 Z1은 1914점 / 3D 그래픽 점수는 24336점과 12393점으로 거의 2배 차이 났습니다.

램 속도 같은 경우 아이폰6S는 DDR4 램을 사용하여 DDR3 램을 사용한 Z1에 비해 우수했구요. 3D 그래픽점수는 워낙에 AP 차이가 많이 나다보니 3D 그래픽점수에서 밀릴수도 있겠고 해상도도 아이폰6s가 더 낮다 보니 상대적으로 그래픽처리하기는 아이폰6s가 더 용이하겠죠.

이러한 이유로 점수가 많이 벌어진것 같습니다. 이 차이는 게임에서도 나오게 되는데 게임성능에서 다뤄 보도록 하겠습니다.

아이폰은 항상 사람들이 이야기하곤 합니다 3D 성능이 아주 죽인다고 말이죠. 매번 아이폰이나 아이패드를 발표 할때 보면 발표자는 전작에 비해 GPU가 기본 2배는 상승했다고 말하곤 합니다. 

사실 어떠한 기계의 성능을 끌어올린다는건 상당히 어려운 일인데 90% 상승이라는 수치도 굉장하죠.


제가 계속 게임을 한답시고 만져보면 참 감탄이 나올정도로 빠릿빠릿하고 부드럽게 작동합니다.

비교 대상 게임은 Clash of Kings라는 중세시대를 배경으로 하여 각자 플레이가 영주가 되어 도시를 발전시키고 전쟁도 하는 게임인데요.

이렇게 많은 사람들이 동시에 접속하는 게임이야 말로 그래픽 성능을 판가름 내줄수 있는 제대로된 비교기라고 생각하는데요.

많은 텍스쳐를 동시에 처리해야 하는게 GPU의 미덕인 만큼 많은 텍스쳐가 몰려있는 COK와 같은 게임들을 아이폰6S 그래픽코어가 얼마나 빨리빨리 처리해주는​지 한번 보도록 할게요

동일한 와이파이 상에서 실행했다는 점 알려드립니다.​

엑스페리아 Z1으로 돌려본 COK 영상입니다. 엑스페리아 Z1도 스냅드래곤 800이라는 나름 굉장히 준수한 CPU를 사용하고 그 안에 들어있는 Adreno GPU도 안드로이드에 쓰이는 AP 중에서는 수준급의 GPU라고 불리고 있음에도 불구하고 텍스쳐를 불러들이는데 시간이 좀 소요됩니다.

특히 영상 끝에 어떠한 곳을 지나가는데 성 여러개가 갑자기 뜬다는 것은 그만큼 그 쪽 텍스쳐를 로딩하는데 시간이 좀 걸렸다는 이야기입니다.​

​아이폰6s로 돌려본 COK입니다. 로딩속도를 보여드리진 못했지만 로딩속도부터 아이폰6s가 상당히 빨랐습니다.

로딩속도가 네트워크 속도에 비례하는지 GPU의 성능에 비례하는지 모르겠으나 텍스쳐를 불러오는것도 로딩에 포함되는 만큼 GPU의 성능도 무시할수는 없습니다.

그리고 영상 전체적으로 지나갈때마다 성과 같은 건물들이 제때제때 불러와지는데 Z1의 Adreno GPU보다 성능이 더 낫다는 이야기가 됩니다.

물론 해상도의 차이는 존재하지만 그것을 제쳐두고서라도 둘의 차이가 눈으로 구별이 갈정도이기 때문에 게임성능으로도 아이폰6s가 꽤 괜찮다는 것을 보여줍니다.

다만 갤럭시 노트5와 같은 동일선상의 안드로이드 폰과 비교해드리지 못한점은 너무 아쉽고 엑스페리아 Z1이 언제적 물건인데 아이폰6s하고 비교하고 있냐라고 묻는다면 제 입장에서는 할말이 없긴 없습니다

하지만 이를 통해 제가 하고 싶은 말은 게임 성능은 아이폰6s가 상당히 괜찮은 편이다라는 것을 알려드리고 싶을 뿐입니다.

실제로 이것외에 다른 게임들을 구동했을때 딱히 버벅이거나 렉이 걸리는 현상 같은건 찾아볼수가 없었습니다.


------------------------------------------------------------------------------------------------------------------

지금까지 아이폰6s의 사용기 1편을 다루어봤습니다.

아이폰6s 사용기 2편에서는 좀더 사용자들이 원하는 부분에 대해 리뷰할생각입니다. 예를들어 음질이나 영상화질 등 말이죠.

이번에는 퍼포먼스가 어느정도인가 그런것을 알아봤었는데요.

AP 자체는 듀얼코어 밖에 안돼 옥타코어 데카코어까지 나온 안드로이드에 비해 너무 딸리는것이 아니냐고 의문을 제시할순 있지만

애플의 A 시리즈는 애플에서 독자적으로 설계해서 iOS에 가장 맞게 최적화가 된 AP 이기 때문에 실 사용을 해보면 안드로이드의 왠만한 쿼드코어나 옥타코어와 견주어도 모자라지 않을정도로 빠릿한 성능을 보여주고 있습니다.

저 또한 처음에는 듀얼코어라고 별 기대를 안하고 웹서핑 같은것을 해보았는데 생각보다 엄청 빠르게 로딩되는걸 보고 약간 놀란적이 있었습니다.

여튼 사용기 1편은 마치겠구요. 조만간 2편으로 찾아뵙도록 하겠습니다.


 



반응형


▲ 아이폰 6s 박스입니다. 

박스 구성은 좀 단촐한데 대신 박스 재질이 좀 고급스러워 보이긴 합니다.

▲ 뒷면입니다. 제품 용량과 색깔 정보를 알려줍니다. 

전 16기가에 스페이스 그레이니 그 정보가 표시되어 있겠죠.

▲ 박스 열고 메뉴얼을 꺼냈습니다. 메뉴얼은 낱장으로 되어있고 애플스티커 

그리고 유심트레이 뽑아내는 핀 외에는 특별한거 없습니다.

▲ 왼쪽부터 음질 짱짱하게 잘 전해주기로 유명한 이어팟, 애플 정품 충전기 

그리고 잘 찢어지기로 유명한 애플 정품 라이트닝 케이블입니다.

애플 정품 충전기가 모양이 바뀌었는데요. 제가 알던 충전기 모양은....

▲ 이거 였거든요. 그런데 얇게 바뀐거 보니 저건 마음에 듭니다. 

애초에 뚱뚱해도 별 쓸모도 없어요. 오히려 멀티탭 쓰는데 방해만 될뿐이죠.

▲ 아이폰 6s 전면입니다. 잘 안보이시겠지만 홈버튼이 있구요. 

통화용 스피커 그리고 500만 화소의 전면카메라가 있습니다.

전면으로 보면 참 이쁩니다. 여러모로 마음에 듭니다만... 

​▲ 뒷면으로 보면 그 아름다웠던 느낌이 죄다 도망가버립니다.

 내 폰이 됐음에도 불구하고 별로인거 보면 진짜 못생기긴 못생겼습니다.

아이폰5s가 차라리 이뻤지. 아무리 통화를 위해서라지만... 좀 안타깝습니다.

​후면에는 1200만 화소 카툭튀가 달린 카메라, 플래쉬, 애플 마크가 있구요.

혹시나 아이폰 6와 아이폰 6s를 구분하길 원한다면 뒷면 보시면 됩니다. 

iPhone6 밑에 조그맣게 s라 적혀 있습니다.

이걸 보고 구분하시면 되요. 나중에 중고거래 할때도 참고하세요. ​

▲ 아이폰6s의 우측모습입니다. 전원버튼과 유심슬롯이 있습니다. 

유심은 당연히 나노유심인거 아시죠?

그리고 휘어진것 같아 보이지만 휘어지지 않았습니다. 

저번 아이폰6 같은 경우 엄청 잘 휘어서 밴드게이트 사건이 일어났죠?

애플이 아예 작정하고 알루미늄 강성을 높여버려서 이번에는 테스트해보니 

남성 두명이 힘을 줘도 구부러지지 않았다고 합니다.

저는 처음 만져봐서 잘 모르겠지만 톡톡 두들겨 보면 뭔가 꽉찬 느낌은 받습니다.


p.s : 구부러지진 않는데 대신 겉면이 산화되는 현상이 발견돼 문제가 있었죠?

▲ 아이폰6s 좌측 모습입니다. 볼륨키하고 토글키가 존재합니다.

▲ 아이폰6s 아랫면입니다. 참고로 윗면에는 아무것도 없었습니다

8핀 라이트닝 포트와 스피커그릴, 3.5파이 이어폰잭이 존재합니다.

이어폰 단자가 아래에 있는데 생각보다 편하네요.

선이 걸리적 거리지도 않고 주머니에 넣어서 바로 빼기도 편하구요. 

그 뭐랄까 확실하게 말은 못하겠지만 편하긴 편합니다.​

▲ 애플 특유의 카툭튀... 삼성의 카툭튀가 그나마 자연스럽고 훨씬 이쁘죠.

이건 너무 뜬금없이 볼록 튀어나와있으니 좀 그렇네요. 케이스 쓰긴 하지만요.

-----------------------------------------------------------------------------------------------------------------

 

이것으로 아이폰6s 개봉기를 모두 마쳐보겠습니다.

다음에 사용기를 쓸건데요. 사용기를 몇파트 나눠서 작성해볼 생각입니다.

여튼 이것으로 포스팅 마치겠구요. 좀더 세세하게 다뤄서 사용기에 써볼 예정입니다.

못난 리뷰 봐주셔서 감사합니다.



반응형

CentOS 7으로 넘어오면서 상당히 많은 부분이 바뀌었다.


그래서 대체적으로 구글로 검색해서 나오는 "yum install mysql-server" 명령어로는 설치가 불가능하다.


CentOS 7부터는 MySQL대신 MariaDB를 지원하기 때문이다.


하지만 회사에서 MySQL을 사용하거나 대학교 교수님이 굳이 MySQL을 고집한다던가 하는 이유로 무조건 MySQL을 써야한다면 아래의 명령어를 순서대로 입력하면 된다.


1. yum install http://dev.mysql.com/get/mysql-community-release-e17-5.noarch.rpm


2. yum install mysql-community-server


3. systemctl start mysqld


4. mysql




4번의 과정까지 마치면 


프롬프트가 mysql>로 바뀐다. 이렇게 되면 MySQL의 설치는 끝나게 된다.


나중에 라이브러리 파일이 없어서 문제가 생기면 


http://lwk24.tistory.com/63


글을 참고하면 된다.



반응형

CentOS 7 기준으로 작성하였습니다. 그 외의 버전에서는 해결을 보증하지 않습니다.




말 그대로 헤더파일이 없기 때문이다.


이 말은 mysql 라이브러리가 없기 때문이다.


정말로 없는지 확인하기 위해서는 다음과 같은 명령어를 입력해본다.


find / -name mysql.h


라고 검색했을때 아무것도 뜨지 않는다면 라이브러리가 없어 생기는 문제이므로 설치만 하면 바로 해결되는 아주 간단한 문제이다.



yum install mysql-devel



을 입력하면 일련의 설치과정이 진행되고 모든 설치가 끝난다음 


다시 find / -name mysql.h를 검색하면 이번에는 /usr/include/mysql/mysql.h 라는 결과가 출력된다.


이것으로 더이상 컴파일시 mysql.h : No such file or directory 오류가 발생하지 않을 것이다.

반응형

트마작은 트러스트 마스터 작업의 줄임말입니다.


따라서 트러스트 마스터에 도달하기 위한 일종의 작업을 한다는 것이죠.


말이 좋아 작업이지 노가다 입니다. 다만 이 노가다는 흔히들 농담삼아 말하는 노가다가 아니라 정말로 정신적으로 상당히 고된 노가다가 될수도 있다는 것입니다.


앞에서 트러스트에 대해 설명해드렸습니다.


트러스트 수치는 10%의 확률로 0.1%가 올라갑니다.


0.1%가 100%로 되기 위해서는 1000번이 더해져야 합니다. 그런데 이건 무조건 0.1%씩 올랐을때의 이야기이고 트러스트 수치는 10%의 확률로 올라가는 것이니 단순히 따져만 봐도 10000번의 전투를 해야 합니다.


10000번의 전투 라는게 말이 좋아 10000번이지 파이널 판타지 브레이브 엑스비어스는 체력이라는 피로도 수치를 가지고 있기 때문에 무한정 할수도 없습니다.


그래서 트러스트 모그리라는 강화용 유닛이 그렇게 대접이 좋은 거구요.


트러스트 모그리도 파란별을 쥐고 있는 5% 짜리 모그리, 노란별을 쥐고 있는 10%짜리 모그리가 있습니다.



등급은 볼것도 없이 노란별이 가장 높습니다.


그렇다면 어쨌든 트마작은 해야 하는데 어떻게 트마작을 해야 가장 효율적일까요?



파이널 판타지 브레이브 엑스비어스는 한 던전에 여러개의 챕터 같은것이 있습니다.


한 챕터에는 여러번의 전투수를 거쳐야 하며 소비되는 체력도 각각 다릅니다.



그렇다면 체력 소모가 가장 낮으면서 전투수도 짧은 것  을 선택해야 하지 않을까요?


그런 곳이 있을까요? 예 딱 한군데 존재 합니다. 전투를 딱 2번만 치르면 되고 체력도 딱 1만 소모되는 곳이 있는데 가장 처음 발견하는 던전인 땅의 신전 입구 챕터입니다.



이곳에서 트마작을 하는 것이 가장 효율적입니다.


전투수가 많아질수록 그만큼 끝나고 경험치 및 트러스트 수치를 올릴 텀이 상당히 길어지게 됩니다. 그렇기 때문에 땅의신전 최심부는 추천하지 않습니다.


체력소모가 1이라 할지라도 전투를 3번 치러야 하니까요. 땅의신전 입구 만한곳이 없습니다.


대부분의 유저들이 이곳에서 시간이 나면 트마작을 하고 있습니다.



지금도 수많은 유저들이 트러스트 마스터를 통해 좋은 아이템과 어빌리티를 뽑아내기 위해 트마작을 열심히 하고 있습니다.


트마작을 통해 원하는 아이템 얻기를 기원합니다. 

반응형

안녕하세요. Lequiem 입니다.


파이널 판타지 브레이브 엑스비어스 글을 올릴때는 정보의 중요성, 빈도와 관계 없이 무작위로 작성합니다. 


이번에 다뤄 볼 것은 트러스트에 관한 것입니다.



트러스트란 각 캐릭터마다 가지고 있는 고유한 수치로써, 100%가 풀입니다.




위의 스샷처럼 전투가 끝나면 퍼센트가 상승하게 됩니다.


어떠한 전투든 한번 하여 경험치를 얻으면 0.1%가 오르게 되는데, 이 것도 10%의 확률로 오르게 됩니다.


무조건 전투를 치른다고 트러스트 수치가 오르는 것이 아닙니다.


따라서 트러스트 수치를 올린다는 것은 어마어마하게 힘듭니다.


이 트러스트 수치를 100% 올리는 것을 트러스트 마스터라고 하며 트러스트 마스터를 달성하게 되면 그 캐릭에게 설정된 아이템이나 어빌리티를 획득할수 있습니다.


모두 그런것은 아니지만 대체적으로 이 아이템이나 어빌리티의 능력들이 어마어마하기 때문에 말그대로 고생끝에 낙이 온다는 것이 이것입니다.



특히나 공격력 120에 달하는 최강무기 엑스칼리버, 무기를 2자루 장착할수 있으면서 동시에 공격도 한번에 2번할수 있게 해주는 최강의 어빌리티 이도류는 트러스트 마스터 외에 갖은 방법을 동원해도 얻을수 없으며, 저 것을 주는 캐릭 자체도 잘 소환되지도 않습니다.



제가 가지고 있는 샨토토라는 캐릭으로 트러스트 마스터를 시켜보겠습니다.



현재 샨토토는 트러스트 수치가 90% 정도 됩니다.




여기서 트러스트 모그리라는 강화용 유닛으로 트러스트 수치를 10% 올립니다.


트러스트 모그리는 트러스트 수치를 올려주는 유닛으로 이벤트마다 많아야 2개 정도 주는 귀한 유닛이기도 합니다. 


트러스트 수치를 직접 올려주기 때문에 트러스트 마스터에 도달하기에 좀 더 용이하기도 합니다.





트러스트 마스터가 완료되었습니다. 


샨토토는 마력 30%를 트러스트 보상으로 가지고 있습니다. 마력 30% 상승은 상당히 큰 폭의 상승에 속하기 때문에 


이런 보상이 짭짤한 캐릭들은 유저들이 대개 가지고 다니면서 가끔씩 트러스트 수치를 올리기도 합니다.





샨토토가 아닌 세실이지만... 트러스트 마스터가 되면 위와 같이 마스터라고 뜨며

 

더이상 어떠한 트러스트 수치도 올라가지 않고 제공되지도 않습니다.


원래 기본기가 탄탄한 쓸만한 캐릭들은 트러스트 마스터가 되고도 주력으로 쓰이지만 기본기는 부실하고 트러스트 보상품만 빵빵한 캐릭들은 


마스터에 도달하면 강화용 유닛으로 합성되서 없어지곤 합니다.


위에 언급된 샨토토가 기본기가 부실하고 트러스트 보상이 빵빵한 캐릭의 대표주자죠.



파이널 판타지 브레이브 엑스비어스는 트러스트에서 시작해 트러스트로 끝날만큼 트러스트 마스터가 상당한 영향력을 차지하게 됩니다. 


그러니 이런 트러스트 보상품은 반드시 시간을 들여 어떻게든 획득하기를 권합니다. 이것으로 포스팅 마치겠습니다.





반응형

안녕하세요. 레퀴엠입니다.


1월 31일에 있을 토익에 앞서 어제 있었던 제 30회 한국사능력검정시험을 응시했습니다.


한국사능력검정시험은 저와 인연이 좀 있는데요. 제가 고등학교 1학년일때 한국사능력검정시험이 막 생겼을때 1회 시험을 응시했기 때문입니다.


이미 반은 이과를 가기로 마음먹었었기 때문에 한국사능력검정시험이 뭐가 의미가 있나 싶어 별 생각은 안했지만 당시 국사선생님께서 저에게 응시를 해보라고 추천을 해주셨지요 (그때 시험에 합격하면 맛있는걸 사주겠다 하시면서 절 꼬득이셨고 전 거기에 넘어가 응시하고 합격은 했지만 결국 아무것도 안사주셨던...)



지금처럼 고급, 중급, 초급으로 나누어지던 시기가 아니고 급수로만 나누어지던 시기라 3급을 응시했었고 합격했습니다.


자타공인 역사 덕후였던 제가 정말 재밌게 시험공부하면서 응시했던 몇 안되는 자격증 시험이었는데요. 요즘 한국사능력검정시험이 공기업 입사나 공무원 합격을 목표로 하고 있으면 가산점을 주기 때문에 중요성이 더욱 높아지기도 하죠.



이번 30회 시험을 응시하면서 걱정이 많았는데요. 한국사능력검정시험을 주관하는 역사편찬위원회에서 전 시험이 너무 쉬워 경쟁력이 없다 생각하면 갑자기 시험 난이도를 엄청 올리기 때문이죠.


덕분에 제 26회 한국사능력검정시험은 상당히 어렵기로도 소문난 회차였다고 하죠? 실제로 기출문제 풀어보니 55점이라는 점수를 받아 걱정을 많이 했습니다.


하지만 실제로 제 30회 시험을 응시해보니 이번 시험은 역대급으로 쉬웠다고 해도 과언이 아닐정도로 난이도가 상당히 낮았습니다.


까다롭다고 하는 '연도를 알아야 하는 문제'의 횟수가 상당히 적은 편이었고 대체로 기출문제집에서 벗어나지 않는 범위를 냈기 때문에 이번 한국사능력검정시험은 상당히 쉬웠습니다.


대체로 유명한 역사적 사실을 위주로 문제가 나왔구요. 헷갈리게 꼬아서 낸 문제도 거의 없었습니다.



제가 생각하기에 가장 어려웠던 문제는 양명학의 대부였던 '정제두'에 관해 묻는 문제였는데요. 정제두라는 인물 자체가 생소하기도 했고 양명학이라는 학문 자체도 성리학에 비해 등장횟수가 적었기 때문에 기출문제집에서도 그리 중요하게 다루지 않았던걸로 기억합니다.


아마 역사를 좋아하시거나 대하드라마를 즐겨보시던 분들이라면 이번 시험은 거의 70점이 넘지 않았나 싶습니다.


저도 가채점을 해본결과 87점이라는 점수가 나왔는데요. 가채점이라 정확하지는 않으나 오차범위를 +- 10점으로 잡아도 1급 합격선인 70점은 거뜬히 넘는 점수이기 때문에 무난하게 1급을 획득하지 않을까 기대를 하고 있습니다.



다음에는 제가 한국사능력검정시험을 공부한 방법에 대해 한번 써볼까 합니다. 소소한 팁이나마 공유를 해서 한국사능력검정시험을 응시하는 분들에게 도움이 됐으면 좋겠네요.


이것으로 포스팅 마치겠습니다.




반응형

안녕하세요. 이번에는 자격증 수령 관련 포스팅 올려 봅니다.

한달전에 정보처리기사 합격하고 이제서야 수령하려고 합니다.

 

 

 

가장 눈에 띄는건 이 수첩형태의 자격증입니다.

워드프로세서나 GTQ 같은것은 플라스틱 카드 형태의 자격증이었는데

 

이건 수첩 형태로 되어있네요. 뭔가 굉장히 간지가 납니다.

 



 

펼치면 이런 형태의 자격증이 나타나는데요.

 

수첩형태라고 안에 내용이 많고 쪽수가 많은건 아니고 저게 전부입니다.

 

주의사항과 자격을 나타내는 자격증 내용이 나타납니다.

 

 

-------------------------------------------------------------------------------------------








 

 

자격증 수령 방법에 대해 알려 드리겠습니다. 사실 위의 스샷을 봐도 대충 이해 할수 있지만은 더 자세히 설명할까 해요.

 

수령 방법은 크게 등기우편수령과 방문수령이 있습니다.

등기우편수령은 5380원(우편료 포함)이고 방문수령할시에는 3500원의 수수료가 필요합니다.​

좀 더 빨리 받아보고 싶으신분들은 방문수령을 추천해요.

방문수령은 신청하고 바로 당일날 받을수 있지만

등기우편 수령은 5일 정도의 시간이 소요되구요. 혹시나 자격증 발부 건이 많아서 한국산업인력공단

에서 물량을 다 감당하지 못하면 최대 2주일 정도나 소요 될수도 있어요.

그리고 등기우편료 2280원도 붙어요.

그렇다고 방문수령이 무조건 저렴한것도 아닌게 어차피 교통비 생각하면 거기서 거기니까

혹여나 집에서 가까우시면 방문수령을 하시고 멀고 좀 가기 힘들고 귀찮다 라고 하시면 우편으로

받아보셔도 됩니다.

그리고 방문수령에 대해 말해보겠습니다.

방문수령 같은 경우는 자신을 증명할 신분증과 증명사진(단, 사진이 공단에 등록이 안되있는경우에만)

을 들고 가시면 바로 즉석으로 자격증 발급을 해줍니다.​

-------------------------------------------------------------------------------------------​

자격증 신청방법은 다음과 같습니다.

1. 한국산업인력공단 운영 큐넷(www.q-net.or.kr) 에 접속하세요.

2. 로그인을 하신뒤에 ​발급/조회센터 -> 자격증발급 -> 자격증발급신청을 누르세요

3. 밑의 발급신청 버튼을 누르시고 소정의 결제 과정을 거치세요.

4. 결제가 완료되면 신청이 완료 됐고 방문수령은 그날 가셔도 됩니다만 등기우편수령은

    최소 5일 정도의 시간이 소요되니 기다리시면 됩니다.

이것으로 자격증 신청방법 / 자격증 수령방법 / 자격증 수령에 대해 모든 것을 마쳤구요.

정보처리기사를 준비하시는 분들 좋은 결과 있기를 기원합니다.



반응형

2015년 제 1회 정기 기사 필기 시험 합격 한뒤로 실기는 취업준비 때문에 잠시 미뤄두었습니다.

그러다가 2015년 제 2회 정기 기사 실기 시험에 응시하여 빨리 결말짓자라는 결론에 도달하였고

결과는 아래와 같이 합격 했습니다.

저는 애초에 전공자이다 보니 정보처리기사를 상당히 손쉽게 획득 할수 있었는데요...

3일 정도 공부하고 합격 하였습니다. 다른 기사시험에 비해 상당히 낮은 난이도로 인해서 공신력은 기사 자격증 중에서 가장 뒤떨어지는 편입니다.

비전공자 분들은 다른 블로그를 한번씩 둘러보니 평균 한달 정도 걸렸다고 하는데요. '기사'라는 이름에 비해 생각보다 적은 노력으로 손쉽게 획득 하실수 있습니다.

합격률도 실기는 평균 45% 정도로 2명중에 1명이 합격하는 꼴로 상당히 높은 확률을 보여주고 있습니다.

애초에 다른 기사시험은 대부분 전공제한이 존재합니다만 IT 분야 기사시험에서만큼은 전공제한이 존재하지 않습니다.

그래서 그런지 많은 사람들이 응시하고 참 많은 사람들이 획득하는 자격증입니다.

그래서 IT 분야 전공자분들은 이런 떨어지는 공신력을 메우기 위해 정보통신기사나 정보보안기사를 추가로 응시하여 부족한 공신력을 채우기도 하거나 경력을 채워 기술사에 응시하시기도 합니다.

 공무원 시험에 응시할때 정보처리기사를 소지하고 있으면 가산점이 붙는다고 하니 공무원 시험에 응시하시는 분들은 정보처리기사 공부하셔서 꼭 자격증을 획득하시기 바랍니다.

저는 독학으로 ​했구요. 책은 2014 이기적 정보처리기사 실기 책으로 하였습니다.

인강은 단 1초도 들은적이 없습니다. 책 같은 경우는 굳이 최신판을 구매하실필요는 없습니다.

어차피 문제은행 방식이기 때문에 트렌드만 어느정도 파악하면 됩니다. 그렇기 때문에 꼭 2015년이나 앞으로 나올 2016년 버전을 비싼돈으로 구입하실바에 2012~2014년 버전 정도를 중고로 저렴한 가격에 구입하셔서 공부하시면

좀 더 적은비용으로 소득을 얻는데 도움이 되겠죠?

단 2011년을 포함한 그 이전 버전 같이 너무 오래된 책 같은 경우는 요즘 정보처리기사 문제들과는 다소 뭔가 동떨어진 경향의 문제를 보여주는 경우도 있기 때문에 되도록이면 추천을 하지 않습니다.

그렇지만 그러한 책들이 한 3000원? 5000원? 정도에 팔리고 나는 문제 트렌드 보다 일단 정보처리기사 실기 기출문제에 좀 익숙해져야겠어! 그리고 정보처리기사에서 무엇을 공부해야 하는지 알아야겠어 라는 정도의 목적이 있다면 그것도 나쁘지는 않다는점 염두해두시길 바랍니다.

그리고 정보처리기사 같은 경우는 인강이 전혀 필요없는 시험입니다.

난이도 자체가 워낙에 쉽기 때문에 굳이 돈 아깝게 인강을 들으실필요는 없다고 생각이 듭니다.

정말로 인강을 들어야 하는건 정보보안기사나 전공제한이 걸린 예를 들어 전기기사 같이 난이도가 꽤 어려운 그런 기사 시험 같은 경우는 독학으로 도저히 안되서 인강이 필요하다고 판단이 서면 들어야 한다고 생각하지만

정보처리기사에 인강을 들을필요는 개인적으로 없다고 생각합니다.

비 전공자 분들도 독학으로 상당히 많이 합격한 시험인 만큼 너무 겁먹지 마시고 책을 보면서 꾸준한 공부를 해주시면 합격 가능합니다.

정보처리기사 실기는 다음과 같은 파트로 이루어져 있습니다.

--------------------------------------------------------------------------------------------

제 1 파트 : 알고리즘 (30)

제 2파트 : 데이터베이스 (30)

제 3파트 : 업무 프로세스 (20)

제 4파트 : 신기술 동향 (10)

제 5파트 : 전산영어​ (10)

-------------​-------------------------------------------------------------------------------

정보처리기사의 합격 조건은 60점 이상입니다. 필기와는 다르게 각 파트에 과락 조건도 없는 순수 60점 이상입니다.

각 파트 제목 오른쪽에 써놓은 숫자는 배점 점수 입니다.

그렇게 때문에 알고리즘과 데이터베이스를 모두 맞춰서 60점을 획득하면 나머지 파트에서는 모두 0점을 맞아도 합격 가능합니다. 합격조건마저도 너무 쉽죠?

제 1파트인 알고리즘은 어떠한 동작 과정을 수행할수있게 순서도를 만드는 것으로 전공자들은 대부분 쉽게 맞추는 파트이기도 합니다. 배점이 가장 큰 만큼 여기서 어떻게든 점수를 많이 획득하려 노력해야지 이거 모른다고 난 이거 포기하고 다른 파트에서 많이 맞출래 라고 하면 잘못하다 미끄러질수도 있을만큼 중요한 파트입니다.

비전공자 분들은 이 알고리즘 파트에서 좀 어려움을 느끼시는데요. 그래도 어떻게든 하나라도 더 맞춰서 최대한 많은 점수를 가져가시기 바랍니다.

다행인것은 주관식이 아니고 객관식으로써 45개의 보기를 제공합니다. 그래서 소거법으로 하나하나 지워나가셔서 대입해주시면 되리라 생각합니다. 시간도 3시간이나 줘서 상당히 넉넉하기 때문에 정말 거짓말 안보태고 하나하나 일일이 느긋하게 대입해서 풀고도 다른 문제 다 풀수 있는 시간 충분히 있으니 너무 초조해 하지 마시기 바랍니다.

제 2파트인 데이터베이스는 데이터베이스의 용어를 묻는 파트입니다. 정보처리기사 필기에도 데이터베이스의 용어를 물었었는데요. 필기의 데이터베이스는 단순히 용어를 묻는것이었다면

정보처리기사 실기의 데이터베이스는 실제로 업무를 하는 것같은 환경 아래에서 데이터베이스 용어를 묻습니다. 이것이 무슨 말이냐면 예를 들어 어떤 회사에서 입찰을 하여 계약을 따냈고 그걸 보고서로 작성하는데 그 보고서의 내용을 보면 ' A회사는 (    )의 기법을 사용하여 원가절감을 이룬다는 것을 제시하였고 저희는 (    )를 사용하여 확실한 보안을 제공한다는 것을 내세웠습니다 ' 뭐 이런식으로 문제가 나옵니다. 처음에는 조금 당황할수 있으나 어차피 열심히 외웠다면 이런거 상관없이 바로 풀수 있습니다.

사실 알고리즘을 제외한 나머지 파트는 암기만 확실히 하면 다 풀수 있습니다.

제 3파트인 업무 프로세스는 IT 전공자 보다 경영학 전공자가 더 쉽게 풀수 있습니다. 왜냐하면 경영학 관련 용어가 대부분이기 때문입니다. 예를들어 4P, 6-sigma, SWOT 등등 IT 전공자들은 잘 모를 용어들이지만 경영학 전공자라면 귀에 딱지가 앉도록 들은 용어이기 때문에 오히려 제 3파트에서 IT 전공자들의 의외로 고역을 치르기도 합니다.

그렇지만 분량이 상대적으로 적어서 외울것이 적은편이기 때문에 가장 쉽게 느끼기도 합니다.

제 4파트인 신기술 동향은 격변하는 IT 속에서 하루에도 수십~수백개의 신기술들이 막 쏟아지고 있거나 그러한 기술들이 자리를 잡고 있는데 그러한 기술들을 총 집합 시켜 놓은 것입니다.

즉 분량이 어마어마 합니다. 외울것이 엄청나게 많고, 우리가 흔히 들어본 IPTV나 Wibro, Wi-Fi 같이 쉬운것도 나오지만 왠만해선 그 이름 조차도 듣기 힘든 신기술들이 이런것보다 더 많습니다. 그래서 대부분은 이 신기술 동향을 포기하기도 합니다. 어차피 10점 짜리 밖에 안되서 여기 쏟을 노력을 알고리즘과 데이터베이스에 쏟고 보험으로 업무 프로세스에 들어놓으면 합격할 확률이 더 높기 때문입니다.

후에 기술 하겠지만 신기술 동향은 시간이 남으면 공부하시는게 더 낫다고 봅니다.

제 5파트인 전산 영어는 말그대로 전산용어들을 영어로 설명하여 그 전산용어를 빈칸으로 비워놓고 뭘 설명하고 있는지 물어보고 있는것입니다.

영어를 잘하시는 분들이라면 쉽게 넘어갈수 있으리라 생각이 들지만 영어를 다 해석해놔도 그 전산용어가 뭔지 몰라 헷갈리는 경우가 있으니 주의하시기 바라며 마찬가지로 어차피 10점 짜리라서 한번 슥 훑어보고 이건 못 풀겠다 싶으면 걍 포기하시는게 속편합니다.

제가 개인적으로 느낀 난이도는

신기술 동향 >>>>>>>>>> 데이터베이스 >>>> 전산영어 >>>>>>> 알고리즘 >= 업무 프로세스 였습니다. 

신기술 동향이 외울게 너무 많아서 머리가 좀 아팠구요. 알고리즘에 겁먹어서 알고리즘만 죽어라 팠더니 의외로 데이터베이스에서 조금 헷갈려 고전했습니다.​

​각 파트에 대한 설명은 끝났습니다. 실기라고는 하지만 이것도 암기만 열심히 하면 알고리즘을 제외하고는 무난하게 다 풀수 있는 것이기 때문에 60점은 우습게 넘기실수 있으리라 봅니다.

​전공자가 아니라서 대체 이게 무슨 말인지 모르겠다 하시면 그냥 이해하려 하지마시고 무조건 외우기를 추천합니다.

필기 수기에서도 구술 했지만 딱히 노하우가 필요한 자격증은 아닙니다.

앞으로 2015년 정기시험이 딱 한번 남아 있습니다. 꾸준히 공부하시고 노력하셔서 좋은 결과 손에 넣기를 기원합니다.

이것으로 포스팅 마치겠습니다. 


반응형

2015년 제 1회 정기 기사 시험 필기에 응시하였었고 분야는 '정보처리기사'였습니다.

제 전공이 컴퓨터공학 이다 보니 기사 자격증은 거의 필수였구요. 컴퓨터공학과 관련된 기사 자격증으로는

정보처리기사 / 정보통신기사 / 정보보안기사 이렇게 크게 3개가 있는데요.

이 중에서 정보처리기사를 가장 많이 응시합니다.

정보통신기사는 아무래도 통신관련 분야이다 보니 순수 컴퓨터공학을 전공하는 사람들에게는 정보처리기사보다는

접근성이 좀 떨어지긴 합니다.

그리고 정보보안기사는 아시는분은 아시겠지만 합격률이 4% 내외라는 극악의 난이도를 자랑하고 있으므로...

정보처리기사를 가장 많이 응시하곤 합니다.

(하지만 요즘 보안이 시끌시끌해서 정보보안기사가 더 큰 도움이 되긴 합니다.)

 

저도 정보처리기사에 응시하였고 결과는 합격하였습니다.

컴퓨터공학 전공자라면 정보처리기사에 나오는 파트가 다 전공수업으로 들은것이라서 3일정도만 공부하면 대부분

합격하고는 합니다. 제 친구는 시험 당일날 눈뜨고 필기공부좀 하고 가서 바로 붙었다는군요.

하지만 비전공자일경우에는 이야기가 다릅니다.

정보처리기사가 전공무관으로 바뀌면서 많은 다양한 전공자들이 정보처리기사에 응시하고 있는데요.

그냥 대학교 4년을 다니면 응시자격이 주어지다보니 특히 공무원 준비하시는분들이 많이 응시합니다.

왜냐하면 정보처리기사를 획득할시에 상당한 가산점이 주어지기 때문이죠.

하지만 생각보다 많이 어려워 하시던데요.

공부 좀 하시면 충분히 획득하실수 있는 기사 자격증입니다.

저 같은 경우는 시나공 홈페이지에 들어가서 정보처리기사 필기 요약집 pdf 파일을 다운받아서

아이패드에 넣어서 항상 보곤 했습니다. 사실 그 필기 요약집만 봐도 합격할수 있습니다.​

하지만 그게 좀 못미덥다고 생각하신다면

www.gunsys.com 에 들어가시면 정보처리기사 필기를 컴퓨터로 풀수 있게 시스템화 되어있습니다.

​홈페이지 접속 -> 상단에 '필기문제' 클릭 -> 정보처리기사 클릭 -> 문제 풀기

하시면 간단하게 기출문제를 풀어볼수가 있구요.

정보처리기사도 문제은행 방식이기 때문에 ​기출문제를 많이 풀수록 유리합니다. 그문제가 그문제고 이문제가 이문제입니다. 비슷한 유형에서 항상 돌리기 때문에 걱정없습니다.

정보처리기사는 총 5파트로 준비되어 있고 문제 갯수는 총 100문제입니다.

1문제당 1점이며 총점 60점 미만 / 파트 별로 40점 미만일경우 과락제로 가차없이 탈락됩니다.

그러니 모든 파트에 대해서 신경을 좀 써주셔야 합니다.

파트별로 간략히 소개하자면

------------------------------------------------------------------------------------------​

제 1파트 : 데이터베이스

​제 2파트 : 컴퓨터 구조(전자계산기학)

제 3파트 : 운영체제

제 4파트 : 소프트웨어 공학

 

제 5파트 : 데이터 통신

​------------------------------------------------------------------------------------------

인데요.

난이도가 높은편에 속하는건 ​컴퓨터 구조와 데이터 통신 쪽입니다. 개인차가 있을수 있으나

항상 데이터베이스와 운영체제 쪽은 점수가 높게 나오는 편입니다.

제 1파트인 데이터베이스는 데이터베이스에 관한 질문이 나오며 SQL 구문과 데이터베이스의 구조, 특징, 종류 등등이 나옵니다.

제 2파트인 전자계산기학은 컴퓨터 구조에 관한 내용이 많이 나오는데요. 메모리나 레지스터, CPU 등등이 주로 나옵니다.

제 3파트인 운영체제는 말이 운영체제이지 절대 윈도우의 특징같이 워드프로세서에나 나올법한 문제들이 안나옵니다. 주로 UNIX/LINUX라는 운영체제에 대해서 질문이 나오며 유닉스/리눅스의 명령어 등 자세한 사항을 묻곤 합니다.

제 4파트인 소프트웨어 공학은... 저도 이 과목 안들어봐서 사실 뭐에 대해서 배우는지 뭐라 말을 못하겠어요.

걍 무조건 외우시는걸 추천합니다.

제 5파트인 데이터 통신은 컴퓨터 네트워킹이나 통신구조에 관한것을 많이 묻습니다. 통신분야 전공하시는분들에게는 이게 상당히 기초 중에 기초이다보니 거의 껌입니다. OSI 7계층이나 네트워크 망 구조, IPv4, IPv6 등등 통신분야의 기초적인 지식에 관해 묻습니다.​

더이상 말씀드릴게 없습니다. 워드나 GTQ 처럼 특별한 노하우가 있는 과목은 아닙니다.

공부하는대로 나오는 시험이다보니 열심히 공부하시길 권합니다. 이해가 안되신다면 그냥 외우셔도 됩니다.

어떻게든 60점 / 각파트 40점 이상만 맞게 노력을 해주시고요.

필기를 합격하면 필기 면제기간 2년이 주어집니다.

즉 2년 안에는 필기를 안보고 바로 실기를 볼수있는 권한이 주어지는데요.

실기도 합격해서 정보처리기사를 꼭 획득하시길 기원합니다.

이상으로 포스팅 마치겠습니다.​


반응형

사실 C언어 포스팅 하려니 시간이 너무 오래걸리고 귀찮아서... 안쓴감은 있지만 오랜만에 다시 C언어책을 보니 강좌를 계속 이어가야 겠다는 생각이 들었습니다.

 

이번에는 이론적인 면을 짚고 넘어갈까 합니다. 여태까지 너무 실습 위주로 하다 보니 정작 중요한 C언어 내의 이론적인 면에는 너무 소홀하지 않았나 합니다.

 

앞으로 배워야할 조건문, 반복문, 구조체 등등... 을 알고 실습하기 위해서라도 이론이 탄탄해야 한다는 생각이 더욱 듭니다.

 

그래서 당분간은 이론적인 면에 치중할 계획입니다.

 

-------------------------------------------------------------------------------------------

 

이번 시간에는 변수와 자료형에 대해서 짚고 넘어가겠습니다.

 

제가 여태까지 글을 쓰면서 int라던지 float을 사용하였는데 이런것이 정확히 어떤것이며 무슨 역할을

하는지는 필수적으로 짚고 넘어가야 합니다.

 

그리고 잠시 언급했던 C언어에서 기초중의 기초 변수에 대해서도 당연히 짚고 넘어가야 합니다.

 

 

1) 변수란 무엇인가?

 

프로그램은 반드시 데이터를 저장할 공간이 필요합니다.

 

컴퓨터는 제가 계속 지겹도록 말하지만 정말 멍청한 도구라서 미리 정해놓은게 없으면 아무것도 할줄

아는게 없습니다.

 

그래서 변수를 통해 데이터를 저장하고 그 저장된 데이터를 가지고 이리저리 갖고 놀면서 원하는 것을 얻어내야 하는데요.

 

예를 들어 학생들의 평균을 구하고 싶습니다.

 

A라는 학생은 80점 / B라는 학생은 90점 / C라는 학생은 100점이라고 칩시다.

 

그럼 이 각각의 점수들은 어떻게 해야 할까요?

 

각각 변수에 저장을 해서 그것을 연산하여 평균을 내야 합니다.

 

변수를 빈 상자라고 생각하면 쉽습니다. 각각의 상자에 학생 한명의 점수를 각각 보관한다음 그걸 연산 하는 겁니다. 그래서 결과적으로는 90점이라는 결과가 도출됩니다.

 

 

간단하게 그림으로 설명하겠습니다. 위에 있는 그림을 보면 i라는 상자에 12라는 숫자가 담겨져 있습니다.

 

이것은 이름이 i라고 지정된 변수에 12라는 숫자가 담겨 있는 겁니다.

 

이렇듯 변수에는 데이터가 담기게 됩니다.

 

하지만 원래 데이터는 메모리에 담겨져야 합니다. 우리가 생각하는 램(RAM)이 그 메모리입니다.

 

그래서 램의 용량이 클수록 버벅임이 덜하고 부드러워지는 것도 이런 이유입니다. 램의 용량이 크면

 

데이터를 담을 공간이 커짐으로써 처리하기가 한결 편해지는 것입니다.


하지만 메모리에 직접 데이터를 저장하는 것은 매우 불편합니다.

 

메모리에는 각 구역마다 주소가 존재 하게 되는데 만약 직접 데이터를 거기다가 저장하려고 하면

 

예를 들어 "300번지에 정수 30을 저장하라"와 같이 주소를 직접 지정해줘서 데이터를 저장해줘야 하는데 주소값이 매우 복잡하고 접근하는것이 변수를 이용하는것보다 간단하지가 않습니다.

 

하지만 C언어에서는 변수를 통해서 데이터를 변수에다가 넣으면 변수가 알아서 자동으로 메모리 주소에 배치되기 때문에 훗날 '포인터'를 사용하는 경우를 제외하고는 메모리 주소에 직접 접근할 필요가 없습니다.

 

- 메모리 안의 주소 0~4번지에 데이터를 직접 저장하는 경우 -



2) 변수와 상수(Variable and Constant)

 

제가 이전 강의 때 언급했었습니다. 변수라는 것은 변하는 숫자입니다.

 

변수는 예를 들어 13이라는 숫자를 저장했다 해도 때에따라 얼마든지 10이나 100등 다른 값으로 변경이 손쉽게 가능합니다.

 

예를 든다면 원의 면적을 구할때 원의 반지름은 때에 따라 변하기 때문에 원의 반지름을 변수로 둘수 있습니다.

 

상수는 변하지 못하는 숫자입니다. 프로그램이 실행되는 동안에는 값이 절대 변경되지가 않으며 프로그램이 끝나고 사용자가 임의로 숫자를 바꾸어 줘야 변경이 가능한 것이 상수입니다.

 

원의 면적을 구하는것을 예를 든다면 원주율은 절대불변의 숫자입니다. 3.141592.... 이죠.

 

원주율은 절대 변하지 않습니다. 그렇기 때문에 이런 숫자는 상수로 두면 됩니다.

 

상수는 변수가 아니기 때문에 따로 둘 필요 없이 비주얼 스튜디오 내에서 그냥 숫자만 적으면 됩니다.

 

원의 면적을 구하는 프로그램 코드를 직접 보여 드리며 설명을 할게요.

 

 

 

 


위의 코드는 원의 반지름을 입력하여 원의 면적을 구하는 프로그램의 예시입니다.

 

radius와 area는 변수로 지정되어 있습니다. 이것은 각각 반지름과 면적의 값을 저장하는데 쓰이구요.


원의 반지름을 float(소수점형)으로 두어 소수점 이하로도 값을 표현할수 있게 하였습니다.


그리고 area는 area = 3.14 * radius * radius 로 되어있는데 이것은 원의 면적 구하는 공식인


원의 면적 = 반지름 * 반지름 * π 를 이용한 겁니다.


scanf는 입력을 받는 함수인데요. &radius를 통해 변수 radius에 값을 입력하는 것입니다.


그래서 scanf를 통해 입력받은 radius 값을 밑의 area 공식의 radius에 넣는겁니다.


여기서 3.14는 상수입니다. 누가봐도 프로그램 실행되는 동안에는 숫자가 딱히 변할수가 없어 보이네요.


이렇듯 상수와 변수는 각각 쓰임새가 다릅니다. 적당한 변수와 상수의 활용은 프로그램 코드를 좀 더 효율적으로 만들어줍니다.


상수도 마찬가지로 메모리에 저장이 되며 다만 변경이 안된다고 일종의 태그가 붙어있는것 뿐입니다.


3) 자료형


자료형이라는 것도 이전에 살짝 언급을 했습니다. 자료형은 데이터의 종류를 지정해주는 것입니다.


데이터의 종류는 무궁무진 합니다.


8과 같은 정수도 있을 것이고 3.14592 같은 소수도 있을 것이며 A라는 문자도 있을 것이며 심지어 "Hello, World!" 라는 문자열도 있습니다.


하지만 문제점은 데이터가 종류마다 저장하는데 필요한 메모리 공간이 전부 다르다는 것입니다.


컴활이나 워드프로세서를 공부하셨던 분이라면 영어는 1byte, 한글은 2byte 라는것 정도는 아실겁니다.


그리고 단순히 생각해봐도 8이라는 숫자와 3.14592라는 숫자를 각각 저장하는데 필요한 공간이 다를겁니다.


왜냐하면 당연히 3.14592라는 숫자가 더 길기 때문에 더 큰공간이 필요할것이기 때문입니다.


그렇지만 메모리의 양은 한정되어 있습니다. 여러분들의 컴퓨터들은 일반적으로 램의 용량이 4GB나 8GB 정도 됩니다.


예를 들어 큰 공간을 할당한다음에 고작 1이라는 숫자를 저장한다고 하면 메모리 공간의 낭비가 매우 심각합니다.


그래서 메모리 공간을 효율적으로 사용하여 타이트하게 조여주는 것이 필요한데 이것이 바로 우리가 흔히 알고 있는 "최적화" 입니다.


최적화가 잘된 게임은 낮은 사양의 컴퓨터에서도 부드럽게 잘 돌아갈수 있겠지만 최적화가 제대로 안된 게임 흔히 말하는 발적화가 된 게임들은 높은 사양의 컴퓨터에서도 버벅이는 현상이 발생할것입니다.


흔히 우리가 물건을 정리할때 상자의 크기를 작은것부터 큰것까지 나누어서 물건을 담아내는것과 비슷하다고 생각하면 됩니다.


만약 물건을 크기가 작은데 우체국 택배 박스 가장 큰곳에다가 집어넣는다면 공간 낭비이며


물건의 크기가 큰데 우체국 택배 박스 가장 작은곳에다가 집어넣으려면 안들어갑니다.


C언어에서도 저장되는 데이터 크기에 따라 메모리 필요량이 달라지는데 이런 것 때문에 다양한 자료형이라는 것이 존재하게 됩니다.


즉 정수만을 담당하는 자료형, 실수만을 담당하는 자료형 등 적절한 자료형을 통해 메모리를 절약하고 실행속도를 빠르게 할수 있습니다.


자료형을 간단히 표현하자면 데이터의 종류라고 표현할수 있습니다.

변수는 특정한 자료형으로 생성되는데 예를 들면 int box 라는 변수를 지정할때 box는 변수 이름 int는 자료형입니다.


int는 정수만을 저장하게 하는 자료형입니다. 그렇기 때문에 int box에는 데이터가 오로지 정수여야만 합니다.


즉 int box = 1 은 제대로된 표현이지만 int box = 3.14 는 올바르지 못한 표현입니다.


자료형은 종류가 다양한데 크게 정수형 / 문자형 / 부동소수점 형으로 나눌수 있습니다.

 

정수형에는 정수 / 문자형에는 하나의 문자 / 부동소수점형은 실수 타입의 데이터를 저장합니다.


 

위의 그림이 결국 이번 파트의 핵심입니다.

 

저 표를 보시면 short, int, long 등 자료형이 있으며 각각의 역할 그리고 공간, 숫자 범위가 있습니다.

 

예를 들어 int 라는 자료형을 설명하겠습니다.

 

int는 정수형이며 메모리의 공간을 4byte를 할당합니다.

 

예를 들어 램의 용량이 8기가 바이트라 치면 8기가 바이트는 어림잡아 86억바이트이기 때문에

 

86억바이트 중에서 int는 4바이트를 할당받는 겁니다.

 

그리고 int는 숫자를 무한대로 표현할수가 없습니다. 약 -21억 ~ +21억의 숫자 정도를 표현할수 있는데

 

이것은 메모리 공간 4바이트가 이정도 밖에 표현을 못하기 때문입니다.

 

만약 더 큰 숫자를 표현하고 싶다면 자료형 double을 쓰면 거의 무한대의 숫자를 표현할수 있습니다.

 

 

 

하지만 저렇게만 봐서 못미더운 분들이 계실 겁니다. 정말 int가 4바이트 맞는건가? 라고 한다면 자료형의 크기를 프로그램으로 알아보는

방법이 있습니다.

 

함수 sizeof를 이용하면 됩니다. sizeof는 변수나 자료형의 크기를 바이트 단위로 변환시킵니다.

 

예를 들어 x라는 변수의 크기를 알고 싶다면 sizeof(x)

 

double의 크기를 알고 싶다면 sizeof(double)

 

이라 쓰면 됩니다.

 

그럼 그 크기를 한번 출력해보겠습니다.

 

 


정말 간단하죠? 이렇게 써서 표현해보니 int 자료형인 변수 x는 int형이니 크기가 당연히 4바이트며

 

int형은 4바이트니까 4 / double 형은 8바이트니까 8이라고 숫자를 띄워주네요.

 

 

-------------------------------------------------------------------------------------------

 

이것으로 변수와 자료형 첫번째 파트를 마치겠습니다.

 

되도록 쉽게 풀어 쓰려 했는데 쉬웠는지 잘 모르겠네요.

 

제가 쓴 글로 많은 도움이 되길 바랍니다.

 

혹여나 이 부분에 대해 이해안가는 것이 있다면 덧글로 달아주세요.

 

이것으로 포스팅 마치겠습니다. 


반응형

안녕하세요. C언어 오랜만의 포스팅입니다. 

 

본가에 돌아가긴 했었지만 좀 바빠서 포스팅을 못했었는데요.

 

포스팅을 안한지 오래됐더니 순번에서 밀렸나... 블로그가 죽어가고 있더라구요

 

내가 어떻게 살린 블로그인데... ㅠㅠ

 

가만히 두고볼수도 없는 일이고 그래서 이번에는 책은 없지만 입력기능에 관해 간단히 알아보고

 

그것을 이용하여 프로그램을 만들어 볼 계획입니다.

 

누구나 쉽게 C언어에 다가기 위한 목적으로 하는 포스팅인만큼 '전문 용어'를 최대한 배제시켜서

 

작성하도록 하겠습니다.

 

------------------------------------------------------------------------------------------

 

여러분은 이전까지 프로그램을 제작해왔습니다.

 

단순히 출력을 하는 프로그램과 '변수'를 지정하여 출력을 시켜주는 프로그램 제작 입니다.

 

그렇지만 굉장히 심심하지 않으신가요?

 

프로그램이라는건 역시 키보드로 내가 원하는 걸 입력해서 엔터를 딱 치면 원하는 결과값이 나오는

 

그 맛 아닌가요?

 

그래서 이번에는 어쩌면 C언어의 재미를 높일수 있는 입력기능을 이용하여 프로그램을 제작해보도록

 

하겠습니다.

 

우리가 만들 프로그램은 이것입니다!

 

 

 

뭔가 기대가 되지 않나요?

 

이렇게 무언가를 입력 함으로써 원하는 결과값을 얻을수 있는 방법에 대해 알아 보고자 합니다.

 

출력만 하다가 갑자기 내 손으로 입력을 해야 하는 과정을 만들어 줘야 하니 많이 번거로울것 같나요?

 

걱정하지 마세요. 생각보다 코드는 굉장히 간단합니다.

 

그 코드 아래에 공개를 하겠습니다

 

 

생각보다 많이 간단하죠?

 

개념 자체는 그렇게 새로운 것이 많이 없습니다만 역시 코드 해석을 한번 해야 할것 같습니다.

 

 

1. 입출력 프로그램의 코드를 분석 해보자.

 

 

여러분은 이전에 printf의 개념을 배우셨고 변수를 이용한 프로그램 제작도 해보았습니다.

 

처음듣는 내용이고 잘 모르겠다구요? 저런... 그렇다면 이걸 말고 제가 썼던 이전의 글을

 

한번씩 차근히 읽어보시고 오시기 바랍니다.

 

코드 자체는 생소하지 않습니다.

 

무언가 내용이 많아진것 같지만 결국에는 printf가 많이 쓰인것 뿐입니다.

 

printf는 여러분들에게 충분한 설명을 하였습니다. 출력 하는데 필수 함수라고 하였습니다.

 

그럼 입력을 담당하는 코드는 어디있을까요?

 

코드를 보시면 생소한 함수가 하나 있는것을 보실수 있습니다.

 

scanf 라는 함수인데요.

 

scan이라는 말은 무슨 의미인가요? 우리가 흔히 쓰는 스캐너(Scanner)와 유사한 의미입니다.

 

scan이라는 의미 자체가 훑어보다, 조사하다 뭐 이런 뜻이 있지만요.

 

컴퓨터 용어에서는 Scan이라는 의미는 컴퓨터에 데이터를 넣는 걸로 대충 보시면 되요.

 

즉 scanf는 (Scan Fuction)의 줄임말로써 함수를 스캔한다고 보시면 됩니다.

 

printf의 말 의미도 아시겠나요? printf는 Print Fuction으로 함수를 출력한다는 의미가 되죠.

 

이렇듯 함수의 이름도 대충 지어진것이 아닌 의미가 있습니다.

 

입력을 하는데에 scanf라는 함수만 쓰인다고 장담을 할수 없습니다만

 

적어도 키보드로 데이터를 입력하는데는 scanf가 굉장히 많이 쓰입니다.

 

int a,b 를 통해서 a와 b라는 변수를 선언했구요.

 

printf를 통해 "두수를 입력하시오 : "라는 문구까지 썼습니다.

 

그 말 바로 뒤에 커서가 깜빡이게 되는데 원래는 여기서 끝이지만 scanf 함수를 바로 다음줄에

 

이어서 작성하게 되면 입력까지 할수 있는 기능이 추가가 되는 겁니다.

 

scanf("%d %d",&a,&b) 라는 의미는

 

첫번째로 입력하는 숫자는 변수 a에 담으라는 뜻이고 두번째로 입력하는 숫자는 변수 b에 담으라는 뜻입니다.

 

그런데 왜 %d가 쓰였을까요?

 

제가 썼던 글 04.변수를 이용한~ 의 글을 보시면

 

형식 제어 문자열이 있는데 거기서 %d는 무조건 정수만을 받을수 있습니다.

 

그래서 숫자입니다. 그럼 만약에 정수가 아닌 다른 값 예를 들어 문자를 입력하면 어떻게 될까요?

 

그럼 알수 없는 이상한 값을 컴퓨터는 출력하게 되는데 이것을 우리는 '쓰레기 값' 이라 부릅니다.

 

이 쓰레기 값에 관한 중요한 말이자 명언이 있는데

 

GIGO 라고 (Garbage In, Garbage Out)이라는 말인데 쓰레기 값을 넣으면 쓰레기값이 나온다.

 

라는 말입니다.

 

너무나 당연한 말이지만 컴퓨터가 융통성이 정말 없다는걸 잘 보여주는 말이기도 합니다.

 

쓰레기 값 넣으면 쓰레기 값 밖에 나오지 않습니다.

 

우리는 %d를 이용해서 숫자를 입력하기로 약속해놨는데 거기에 문자를 넣으려 했으니

 

컴퓨터 입장에서 문자는 단지 하나의 '쓰레기 값'일 뿐입니다. 그러니 형식제어 문자열

 

잘 지켜서 입력해주시길 바랍니다.

 

이러면 이번에 설명해야 할 내용은 끝이 났습니다.

 

더이상 새로운 것이 없습니다.

 

우리는 scanf 함수를 이용해서 &a, &b 를 넣어줌으로써 변수 a와 b에 숫자(데이터)를 넣어

줬구요.

 

그 a와 b를 받은 컴퓨터는 다음 printf 여러줄에서 시키는 명령을 수행 하는 겁니다.

 

예를 들어 a에 30 이라는 숫자 b에 50이라는 숫자를 받았습니다.

 

그래서 컴퓨터는 메모리 한공간에 a=30, b=50 이라는 값을 저장해놓고 있었는데요.

 

printf("덧셈 결과는 : %d \n",a+b); <ㅡ 이 명령어를 통해 a와 b를 더한 값을 출력을 시켰습니다.

 

그래서 덧셈 결과값이 80이 나오게 되는 거고 위의 gif 스샷 결과대로 나오는 겁니다.

 

%d는 형식제어문자열 \n는 출력 글자를 다음줄로 넘기는 기능인거는 저번 시간에 알려드렸습니다.

 

이것을 이용해서 a-b, a*b , a%b, a/b 등등 여러 산술 연산을 수행하였고

 

우리는 순식간에 사칙연산 계산기를 만들어 낸 것입니다!

 

이것으로 코드 해석은 끝이 납니다.

 

간단히 정리 하자면

 

1) scanf 함수를 이용하여 입력 기능을 수행 할수 있다


2) 변수를 지정하고 scanf 함수내에 &a,&b와 같이 지정해준다


3) 뒤에 그 저장받은 값을 이용한 연산을 출력 시키기 위한 printf 구문을 작성한다

 

이렇게 됩니다.

 

당연한 말이지만 변수와  scanf 안의 지정변수는 똑같아야 한다는건 알겠죠?

 

변수가 a,b로 지정했는데 scanf 안에서는 &c,&d 같이 다른 변수를 지정하면 오류 납니다.

 

 

2. 입출력 기능을 하는 프로그램 코드 내의 숨겨진 C언어 규칙 

 

코드를 다시 한번 잘 보시면 scanf 함수에서 %d와 %d 사이에 스페이스바 한칸 띄운것을 보실수 있습니다.

 

왜 굳이 번거롭게 이렇게 했을까요?

 

사실 안 띄워도 됩니다만 보기 좋게 만들기 위한 목적도 있습니다.

 

위의 gif 파일을 보면 저는 30을 쓰고 띄운다음 50을 썼습니다.

 

이제 감이 오시나요? %d와 %d 사이에 스페이스바를 띄워놨으니

 

입력값도 숫자 띄우고 숫자를 입력해야 하는겁니다.

 

그렇다면 %d%d 처럼 붙여놓으면 어떻게 될까요?

 

3050 이렇게 써야 하는데 컴퓨터가 구분을 할까요? 누누히 말했지만 컴퓨터는 굉장히 멍청합니다.

 

당연히 이걸 구분해줄리가 없습니다.

 

그래서 30을 쓰고 바로 엔터를 친다음 50을 입력해야 합니다.

 

 

이렇게 결과가 나오는데 이게 보기가 좋나요? 취향 차이겠지만 열에 아홉은 이게 보기가 안좋다고

할겁니다.

 

코딩을 잘 해서 원하는 프로그램을 뚝딱 만드는 것도 중요하지만 보기 좋게 만드는 기술도 필요합니다.

 

여러분들이라도 당연히 보기 좋은 프로그램을 쓰고 싶지 않겠나요?

 

이런 세심한 주의도 기울여주시면 좋을것 같습니다.

 

 

 

이것으로 입출력을 이용한 프로그램 제작 과정을 모두 마쳐보도록 하겠습니다.

 

코드 내용은 좀 길었지만 사실 새로운 내용이 scanf 말고는 없어서 설명할것이 없었던게 사실입니다.

 

이렇듯 점점 배워나가면 써먹었던것에 살을 붙이는 형식이다 보니 익히는데 속도가 붙으리라

 

생각이 드네요.

 

혹시나 애매하거나 모르는 내용이 있으면 덧글로 달아주세요. 확인 후 답변 하도록 하겠습니다.

 

 

다음 시간에는 뭘 해야 할지 고민입니다. 실습을 이만큼 했으니 이제 이론을 해볼까 합니다.


제가 중간중간에 약간 야매(?) 형식으로 C언어 규칙들을 알려주었습니다만 이렇게 하면


수박 겉핥기 식이기도 하고... 산술기호나 형식등등을 해볼까 합니다.

 

그 뒤에는 C언어를 포함한 모든 프로그래밍 언어의 꽃이라 불리는 반복문에 대해 이야기를

해보도록 하겠습니다.

 

그럼 다음시간에 뵙도록 하겠습니다, 끝!


반응형

안녕하세요. 오랜만의 포스팅입니다.

 

C언어 강좌 포스팅을 하면서 참 걱정을 많이 했습니다. 저보다 훨씬 더 잘아시는 분이 이 내용 맞지도

않고 이런걸 강좌라고 내놓냐! 라는 비판의 글이나 설명 드럽게 못한다 라는 말이 나올까봐

 

걱정 참 많이 했는데 생각보다 많은 분들이 좋게 봐주셔서 저도 기쁠 따름입니다 ^^

 

그래서 이번에는 좀 더 심화된 내용을 가지고 이번 포스팅을 다룰까 합니다.

 

 

우리 이전에 배웠던 내용으로 C언어로 화면에 글자 출력하기를 배웠습니다!

 

이제 여러분은 C언어 코드 작성을 하실줄 아는 분이 되신거에요. 이제 부터는 특별한 내용이 있기

보다는 알고리즘! 알고리즘에 따른 좀더 화려한 내용을 다루는 것일 뿐입니다.

 

알고리즘이라 하면 일종의 어떠한 문제를 해결하기 위한 방법을 컴퓨터에게 제시하는 과정!

 

이라고 생각하시면 편합니다. ㅎㅎ 예를 들어 1+2 =3 이다라는걸 컴퓨터 한테 가르쳐 주기 위해서

 

알고리즘을 짜야 하는거죠. 결국 원하는 결과를 도출하기 위해 작성하는 그 중간과정이


모두 알고리즘이 된다는 겁니다.

 

그래서 우리는 덧셈 뺄셈 등등 사칙연산 결과를 출력하는 프로그램을 짜볼겁니다.

 

모두들 비주얼 스튜디오 2010 켜주시고 셋팅 다 해주세요.

 

 

 

연산 프로그램을 한번 제작해보도록 합시다.

 

 

이런 프로그램을 한번 작성해볼거에요.

 

예? 너무 쉬운거 아니냐구요?

 

저번에 출력에 관해 배웠으니 printf 3줄 쓰면 될텐데 뭐 그리 어렵게 하냐구요?

 

저런... 그렇게 쉬울것 같으면 포스팅 안올리죠 ㅎㅎㅎ 저 그렇게 날로 먹는 사람 아닙니다

 

결론적으로 printf에 기대서는 안된다는 겁니다!

 

작성해 보라고 하면 배운것도 없는데 뭐 어떡하라고! 가 될테니 저번 시간처럼 정답을 공개하고

 

한번 그 소스코드를 분석 해볼게요

 

정답은....

 

 

 

바로 이겁니다. printf 쓴것은 똑같은데 뭔가 이질적인게 느껴지나요?

 

x , y, sum은 대체 뭐지? 라고 느끼실 겁니다.

 

지금 부터 분석 하도록 하겠습니다.

 

 

 

1. 덧셈 해주는 프로그램 소스 코드 분석을 해보자

 

예전에 제가 #include <stdio.h>와 int main(void)에 대해서 설명을 다 했습니다.

 

그러니 이편에는 넘어가구요.

 

우리는 int x, int y, int sum에 대해 주목할 필요가 있습니다!

 

이런 문장들을 변수를 정의하는 문장이라 합니다. 변수?

 

변수란 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간입니다.

 

왠 뜬금없이 메모리 공간이냐구요?

 

모든 프로그램들의 데이터는 일시적으로 메모리에 저장이 됩니다. 메모리에 저장이 되서

 

그걸 CPU가 꺼내가서 처리하는 구조 입니다.

 

CPU <ㅡ 메모리 <ㅡ 프로그램, 데이터

 

 순서로 되는겁니다.

 

모든 프로그램은 제어장치인 CPU의 통제를 받게 됩니다. CPU가 데이터를 받아서 처리하고 연산을

 

하는 구조로 이루어집니다.

 

그런데 갑자기 많은 양의 데이터를 CPU한테 몰아서 주면 CPU가 일을 처리할수 있을까요?

 

사람의 예로 들죠. 아무리 일을 잘하는 사람이라도 책상 앞에 갑자기 엄청나게 많은 서류를

 

던져주며 결재 하라고 하면 사람이 할수 있을까요? 진이 빠져서 못할겁니다.

 

그렇다면 이 많은 서류를 한번에 처리하지는 못하니까 어디에 보관해뒀다가 자신이 처리할수 있는

 

만큼만 꺼내서 처리한다면 좀더 효율적이겠죠?

 

여기서 사람 = CPU , 보관할 장소 = 메모리 , 서류 = 데이터 라고 생각하시면 편합니다. 

 

메모리 공간이 바로 변수 입니다.

 

메모리 공간 중에 한 부분을 떼어내서 그 부분을 x라고 지정합니다.

 

이것이 바로 int x 즉 변수 선언이죠.

 

그리고 x 앞에 int는 자료형으로써 나중에 설명을 드리고 그 전에 3편에서 설명을 드렸지만

 

int는 정수형의 데이터만 받겠다는 겁니다. 즉 분수나 소수가 아닌 정수로만 받겠다는 겁니다.

 

그렇기 때문에 만약 int x; 라고 변수를 할당 했을때 그 데이터를 100.3 이런 식으로


할당하면 오류가 납니다.


왜냐하면 정수가 아니고 소수니까요.


이렇듯 자료형의 선언은 정말 중요합니다.

 

누차 말하지만 컴퓨터는 정말 멍청한 도구입니다. 밥 떠서 입안에 안넣어주면 모를 놈이죠.

 

이제 변수에 대해 알았고

 

저 코드를 해석하면 우리는 변수 x,y,sum을 선언했습니다.

 

변수를 선언했는데 내용이 비었죠?

 

변수를 선언해놓고 안에 내용을 넣어주지 않으면 마치 빈 박스와 같이 아무역할도 하지

 

않습니다.

 

그래서 변수 안에다가 데이터를 넣어야죠.

 

마치 상자안에다가 물건을 넣는것 처럼 말이죠.

 

그래서 위의 코드를 보면 x라는 변수에 데이터 100, y라는 변수에 데이터 100을 넣었습니다.

 

sum 이라는 변수는 x와 y의 합을 저장하는 데이터를 넣은겁니다.

 

우리가 이렇게 변수를 선언하는 것은 데이터의 변경을 자유롭게 하기 위해서입니다.

 

솔직히 말해서 x y 대신에 100이라는 숫자를 넣어줘도 됩니다.

 

그렇지만 그렇게 하면 sum은 어떻게 해야 하나요?

 

숫자 변경 할때마다 sum의 내용도 변경해야 하는 불편함이 생기는 겁니다.

 

그런데 전부 변수로 선언하고 sum을 그의 합으로 하면

 

예를 들어 x에 100대신에 200을 넣으면

 

sum은 자동으로 x+y 니까 200+100이 되서 300이라는 값으로 변경이 됩니다.

 

이건 나중에 복잡한 프로그램을 만들때도 매우 유용하기 때문에 왠만해서

 

변수로 설정하는 버릇을 길들여야 합니다.

 

아! 그리고 변수 대신에 100이나 200같이 고정된 숫자를 상수 라고 부릅니다.

 

상수가 아주 안쓰이는건 아니고 상수도 필요할때가 있습니다.

 

변수와 상수는 서로 반대되는 말이니 꼭 기억해두세요.

 

이제 int x 같은 변수 선언도 끝이났고

 

x=100, y=100 이 부분을 설명해야 하는데 위에 설명을 거의 다했으니

 

간단하게 설명을 하겠습니다.

 

x=100 이라는 부분은 수학적으로 생각하면

 

x는 100이다! 라고 생각합니다.

 

그렇지만 컴퓨터 언어로 생각하면 좀 달리 생각해야 합니다.

 

x는 100이다 가 아니고 100을 x에다 대입합니다. 라고 생각하셔야 해요.

 

무슨 말장난 하냐구요? 그렇지만 이것도 잘 구분해두셔야 나중에 헷갈리지 않습니다.

 

제가 왜 이걸 강조하는지 나중에 가시면 알게 됩니다. 꼭 기억하세요.

 

이제 마지막으로

 

printf("x의 값은 %d...... ", x,y,sum);

 

이부분을 해석해야 합니다.

 

이것은 변수 값을 출력해주는 겁니다. printf는 앞서 설명했다시피 출력을 해주는 함수입니다.

 

변수의 값을 띄워도 printf를 안 해주면 화면에 절대 뜨지 않습니다.

 

변수값을 출력 할때는

 

printf(형식 제어 문자열, 변수);

로 이루어져 있는데요.

 

%d가 중요합니다. %d를 출력하라는 의미가 아니고 출력 형식을 지정한다는 의미입니다.

 

즉, 변수의 값이 %d의 위치에서 정수형으로 출력된다는 것입니다.

 

이런것을 형식 지정자라고 부르는데 표로 종류를 나열 하자면 다음과 같습니다.

 

 %d

 정수 형태로 출력    ex) 100

 %f

 실수 형태로 출력    ex) 3.1411

 %c

 문자 형태로 출력    ex) B

 %s

 문자열 형태로 출력 ex) Hello

 

 

우리는 100이라는 숫자를 출력하고 그의 합도 마찬가지로 200인 정수이기 때문에

 

%d를 사용하여 출력을 해주는 것입니다.

 

만약 출력해줄 값이 3.14112 같은 실수(정수를 제외한 나머지 숫자)라면?

 

%f를 써야 합니다. 만약에 %f가 아닌 %d를 사용할 경우 어떻게 될까요?

 

그럼 컴퓨터가 소수점 뒤를 인식을 못해서 3 이라는 정수만 출력합니다.

 

어마어마한 오류가 나는거죠.

 

그렇다면 만약 정수를 썼는데 %c 같이 문자 지정자를 쓴다면?

 

이건 아스키코드라고 있는데 너무 헷갈리니 좀 더 심화되면 다룰 문제입니다.

 

외울게 너무 많죠? 걱정하긴 이릅니다. 앞으로 외울건 더 많습니다.

 

컴퓨터 언어 하나를 익히는데도 굉장한 노력이 들고 저또한 C언어를 완벽하게

 

마스터 했다고 장담을 못합니다.

 

그래서 회사에서는 컴퓨터 언어를 하나라도 제대로 익히는 사람을 굉장히

 

선호하며 찾는다고 합니다.

 

그렇지만 그 하나의 언어도 자유자재로 다루는 사람이 우리나라에는 드문게 현실입니다.

 

여튼 여기까지 이야기 하고

 

코드를 보면 printf 안에 "%d"가 세개가 있고 뒤에 ,(콜론)을 사용하여 변수를 3개 나열했습니다.

 

그러니 이걸 해석하면

 

첫번째 %d에는 x를


두번째 %d에는 y를


세번째 %d에는 sum의 변수 값을 대입해서 대신 출력시키는 겁니다.

 

 

여기까지 하면 코드의 해석은 모두 끝이났습니다.

 

여태까지 해석한것을 요약하자면

 

1) 변수 x,y,sum을 선언한다


2) 그 변수에 각각의 데이터를 집어넣는다(100,100,x+y)


3) printf를 통해 출력을 한다


4) 출력하는 방식은 형식지정자를 선언하여 %d 로써 출력한다.

 

 

 

입니다. 이해가 가시나요?

 

이해가 가신다면 저야 더할나위 없이 좋죠

 

이해가 가지 않으신다면 댓글로 달아주시면 제가 성심성의껏 답변을 하겠습니다. 

 

 

2. 덧셈을 해주는 프로그램 코드 내의 숨겨진 C언어 규칙 

 

이 코드내에서도 C언어의 규칙은 엄연히 존재합니다. 

 

그것은 

 

 1) 변수의 선언은 항상 함수 내에서 가장 먼저 해줘야 한다는 점

 

2) return 0;가 안들어 있다는 점입니다.

 

그 중에 가장 중요한것은 변수의 선언 위치입니다.

 

제가 01. C언어의 개론 편에서 설명했지만

 

C언어는 절차지향적 언어입니다.

 

즉 순서에 따라서 코드를 실행한다는 것인데요.

 

이 말은 첫번째 줄부터 순차적으로 읽어가면서 해석한다는 것입니다.

 

그런데 만약에 변수를 선언하는 것이 첫번째로 하지 않고 뒤에 선언을 한다?

 

그렇게 되면 오류가 납니다.

 

예를들어

 

x= 100;

y= 100;


int x,y;

 

같이 순서를 뒤집어서 코드를 짰다고 가정합시다.

 

C언어는 항상

 

 

이렇게 가장 위에서 아래로 순서대로 코드를 읽어 나가는데

 

x라는 변수가 없는데 x =100 이라고 먼저 선언을 해버리니

 

컴퓨터는 "x라는 변수가 없는데!! 100이라는 데이터를 어떻게 x에다 담으라는거야!!"

 

라고 오류를 뿜어냅니다.

 

이것은 마치 박스도 없는데 물건을 어디다가 담으려고 하는 짓거리와

 

똑같다는 겁니다.

 

그래서 C언어는 항상 절차를 중요시 하는바 변수 선언 같이 가장 먼저 해줘야 하는것은

 

가장 처음에 작성을 해야 합니다.

 

이점 꼭 명심해 두시고

 

 

return 0;를 안쓴것에 대해 말씀드리겠습니다.

 

이전 03 편 강좌에서 return 0를 쓴다는 것은 운영체제(윈도우 os)에게 컴퓨터가 별 이상없이

 

종료했습니다. 라고 신호를 보내는 일종의 규칙이라고 했습니다.

 

그렇지만 return 0;를 안써도 실행이 되는 경우가 있습니다.

 

지금의 코드와같이 버그가 전혀 없고 너무 완벽하면 굳이 return 0를 통해 반환을 안해줘도

 

실행 자체는 무리 없이 잘 되고 문제가 없습니다.

 

물론 여러분은 return 0;를 꼭 써주세요.

 

사실 쓰는걸 깜빡했습니다

 

죄송합니다.... 그렇지만 이런 경우도 있다는것 기억하시고 return 0는 꼭 써주세요!!!

 

 

이상으로 4번째 강좌를 모두 마치겠습니다.

 

지금까지 출력에 관한 C언어의 내용에 대해 배워봤습니다.

 

그렇지만 이렇게 출력만 하고 내가 뭐 건드리는거 하나도 없으니까 심심하시죠?

 

예, 그래서 다음 강좌는 입력에 대해서 다뤄보겠습니다.

 

그러니까 처음부터 100을 코드에 넣어서 짜는것이 아니라


여러분에 프로그램에서 직접 키보드로 무언가를 쳐서 결과를 뽑아내는


진정한 프로그램 다운 프로그램을 만들어보겠다는 겁니다.


이제부터 슬슬 헷갈리고 어려울 겁니다. 앞으로도 잘 따라와주시면 너무 감사하겠습니다.


그럼 다음에 봐요.


반응형

지난 시간에 이어 C언어를 이용한 간단한 프로그램 제작 쭉 이어 나가겠습니다. 

 

 

그 전에 저번 시간에 배웠던것을 한번 떠올려 봅시다.

 

 이전 시간에 C언어를 컴퓨터로 해석해주는 컴파일러인 '비주얼 스튜디오 시리즈'의 설치방법

에 대해 배웠습니다.

 

또한 C언어로 프로그램을 작성하기 위한 비주얼 스튜디오 2010 셋팅도 다 끝이 났습니다.

 

이제 우리는 C언어를 이용해 프로그램만 짜면 되는 것입니다.

 

가장 간단한 프로그램으로 C언어에서 빠질수 없는 '글자 화면 출력' 프로그램을 제작해보겠습니다.

 

이 후부터 C언어 간단강좌에서는 오로지 '비주얼 스튜디오 2010' 으로만 진행을 합니다.

 

그 외의 다른 버전으로 인한 호환성 문제, 프로그램 상호간 충돌문제에 관해서는 답변을 해드리기가

 

어렵습니다.

 

 

 

1. Hello, World! 프로그램 제작

 

우리는 가장 첫번째의 프로그램으로 ' Hello World!' 단어를 출력할 도스 프로그램을 제작합니다.

 

C언어를 배운다면 전통적으로 가장 처음으로 작성하는 프로그램이 되었습니다.

 

이유는 저도 잘 모르겠습니다 ^^;; 저도 대학교 들어와서 처음으로 출력했던것이

 

'Hello, World!' 였습니다. 처음에는 우와 신기하다고 했죠

 

단어를 출력할 도스프로그램을 제작한다니 감이 안잡히시나요? 바로 아래와 같이 만들 예정입니다.

 

 

 


이제 감이 잡히시나요?

 

자, 이제 한번 제작해보세요. 라고 하면 처음 C언어를 겪는분들은 엄청 당황할수 밖에 없겠죠?

 

그래서 일단 정답부터 공개하고 시작하겠습니다.

 


 

바로 위와 같이 코드를 작성하고 Ctrl + F5키를 누르게 되고 '이 프로젝트는 만료되었습니다' 라는 ㅁ

말을 상큼하게 무시하고 예를 눌러주면  도스창에 글자가 출력됩니다.

 

어떤가요? 원리가 이해가 되나요? 뭔가 알듯 하지만 살짝 아리송한가요?

 

그렇다면 저와 같이 저 소스 코드를 분석해보도록 합시다.

 

 

2. 'Hello, World!' 소스 코드 분석하기

 

가장 첫줄에 보이는

 

#include <stdio.h>

 

이 한 줄, 정말 중요합니다. C언어의 특징이기도 하며 절대 빼먹어서는 안되는 것인데

 

#으로 시작하는 문장, 이런것들을 ' 전처리기(preprocessor)' 라고 부릅니다.

 

간단하게 해석하면 미리 무언가를 처리한다는 것입니다.

 

#include 라는것은 include가 ~을 포함하다라는 뜻을 가지고 있으니

 

일단 어떤것을 포함하는것을 처리하라!! 라고 생각하시면 무방합니다.

 

그렇다면 위의  문장의 뜻은 무엇일까요?

 

해석하면 <stdio.h>를 먼저 포함시켜라

 

가 될것입니다.

 

여기서 stdio.h 같이 확장자가 .h로 이루어지는 파일을 헤더 파일(header file)이라 부릅니다.

 

헤더 파일은 컴파일러가 필요로 하는 정보를 가지고 있습니다.

 

그럼 왜 쓸데없이 stdio.h라는 헤더파일을 포함시키라고 하는 것일까요?

 

그것은 밑에 있는 printf 때문입니다.

 

여기서 좀 더 쉽게 알아가려면 함수(function)이라는 것을 알아야 합니다.

 

함수는  "특정한 작업을 수행하는 코드의 집합" 이라고 할수 있습니다.

 

우리는 지금 글자를 화면에 출력하는 프로그램을 제작합니다.

 

그럼 출력하는 작업을 수행하는 코드가 필요하겠죠?

 

그것을 바로 함수가 한다는 것입니다.  함수가 있어야 작업을 지시할수 있습니다.

 

int main(void)

{

 

 // 작업을 지시하는 문장

 

}

 

위의 문장은 실제로 main() 함수를 정의 하는 문장이 됩니다.

 

main()이라는 함수를 만들어 놓고 그 안에

 

출력의 기능을 수행하는 printf() 함수를 넣음으로써

 

main 함수는 출력의 기능을 수행하는 함수가 되었습니다.

 

이해가 좀 안되신다구요?

 

예를 들어 설명하겠습니다.

 

 

main() 이라는 빈 박스가 있다고 가정 합시다.

 

하지만 여기에 아무것도 들어있지 않기 때문에 그냥 빈 박스 일뿐입니다.

 

여기에 화장품을 넣으면 화장품 박스가 되는 것이고, 노트북을 넣으면 노트북 박스가 됩니다.

 

이렇듯 main() 함수에 아무것도 넣지 않으면 그냥 main 함수 그 자체 입니다.

 

그렇지만 그곳에 printf() 라는 출력을 수행하는 기능이 있는 함수를 넣었기 때문에 main 함수는

 출력의 기능을 수행하는 함수가 되었습니다.

 

 

그럼 처음으로 돌아와서 왜 printf() 때문에 #include <stdio.h>를 써야 하는가 하면

 

stdio.h 라는 헤더파일 안에 printf() 함수가 쓰여져 있기 때문입니다.

 

사실 헤더파일 내에 들어있는 함수들 대부분을 우리는 '라이브러리 함수' 라고 부릅니다.

 

마치 도서관에서 필요한 책 꺼내서 읽듯이 헤더파일 내에 필요한 함수를 꺼내 쓰는겁니다.

 

 

단, printf() 라는 라이브러리 함수는 오로지 stdio.h 헤더파일에만 있기 때문에 stdio.h 헤더파일을

 

포함시켜주는 #include <stdio.h>를 써줘야 하는겁니다.

 

C언어는 결국 문법도 중요하지만 얼마나 많은 함수들을 알고 있으며, 또 함수를 써먹을줄 아느냐에

따라서 C언어의 실력이 결정나는것이라 생각합니다.

 

결국 이것도 언어입니다! 여러분은 언어 배울때 외우는것 하나 없이 언어 배우나요.

 

C언어도 조금씩의 암기는 필요합니다.

 

 

 

조금씩 헷갈리지 않습니까? 자꾸 보면서 반복학습 하는것 외에는 방법이 없습니다.

 

 

그럼 중간 체크를 좀 하겠습니다.

 

우리가 알게 된 것 까지 소스코드를 분석 하자면

 

stdio.h 라는 헤더파일을 포함시키기 위해 #include 전처리기를 씁니다. 왜??

 

바로 글자 출력을 담당해주는 printf() 라는 라이브러리 함수를 사용하기 위해서입니다.

 

printf() 함수에서 괄호 안에 쌍따옴표를 찍고 원하는 문장을 쓰면

 

printf 함수의 기능덕분에 그 문장을 그대로! 화면에 출력해줍니다.

 

출력은 프린터로 종이 뽑는것만이 출력이 아닙니다.

 

모니터에 글자를 띄우는것도 출력입니다.

 

 

 

 

이게 끝입니다.

 

뭔가 길게 쭉쭉 썼지만 요약하면 이게 다에요.

 

이제 우리에게 남은 것은

 

int main(void)

{

 

}

 

이 부분과 return 0; 뿐입니다.

 

사실 main()이라는 함수는 C언어 내에서의 하나의 커다란 약속입니다. 마치 진리와 같은 것이죠.

 

main() 함수는 무조건 C 프로그램(프로젝트) 내에서 무조건 존재해야 하는데 단 한개만

 

있어야 합니다.

 

그 이유는 main() 함수가 함수의 시작과 끝을 담당하기 때문입니다.

 

 

지금도 어려워 죽겠는데 갑자기 이게 왠 짖는 소리냐구요?

 

말 그대로입니다.

 

모든 명령의 처리는 main() 함수내에서 이루어지며, main() 함수에서 시작해서 끝이납니다.

 

그렇기 때문에 main() 함수는 C언어 프로그램에서 하나의 기준점입니다.

 

이게 없으면 C 프로그램이 완성이 안된거나 마찬가지입니다.

 

 

 

여기까지 main() 함수의 역할을 알아봤고 int main(void)를 분석해봅시다.

 

 

 

 

int는 반환 자료형 이라는 의미로 int는 '정수' 즉 소수가 아닌 정수 그거 입니다.

 

자료형의 종류에 대해서는 나중에 따로 또 올려놓겠습니다.

 

반환 한다는 말은 컴퓨터한테 반환한다는 의미가 됩니다.

 

컴퓨터한테 정수를 반환한다? 근데 왜 하필 숫자를 반환하죠? 이거에 대해서는

 

후에 설명할 return 0; 와 매우 관계가 깊습니다.

 

main는 함수의 이름입니다.

 

함수의 이름이기 때문에 정해진것 없이 여러분들이 자유롭게 함수의 이름을 지정하면 됩니다.

 

예를 들어 나는 함수를 새로 만들것인데 그것이 두수를 저장하는 그런 함수가 될거다.

 

라고 가정하면 int add(void) 라고 써주셔도 되고 여튼 함수의 이름이란건 정해진 틀이 없이 자유롭게

 

지어주시되 몇가지 규칙만 지켜주시면 됩니다.

 

1. 함수의 첫글자가 숫자나 특수문자로 시작되면 안됨

 

2. 띄어쓰기 허가 안됨

 

3. 특수문자는 언더바 ( _ ) 만 허용된다.

 

더 예를 들어

 

2ad 안됩니다. add and sub 이건 띄어쓰기 있으니 안됩니다. ad&d 특수문자 안됩니다.

 

그렇지만 ad_d 이건 허가가 됩니다. 특수문자는 언더바만 허용되기 때문입니다.

 

(void)는 입력 타입입니다.

 

void 의 영어 뜻 자체가 비어있다. 라는 뜻이 됩니다. 그러니 입력을 아무것도 안받겠다 라는 의미

가 되겠습니다.

 

int main(void)는 아무것도 입력을 받지 않고 출력은 정수로 하겠다. 라는 의미입니다.

 

그렇다면 입력을 받는다는건 어떤것일까요?

 

지금부터 그걸 알기에는 너무 복잡합니다. 나중을 기약하고 다음으로 넘어가겠습니다.

 

자 이쯤 되면 int main(void)의 해석은 거의 끝이났습니다.

 

그럼 마지막으로 return 0;만 해석하면 됩니다.

 

return 0 .... 0을 돌려줘라 이뜻이죠?

 

아까전에 int 설명할때 누구한테 반환한다고 했나요? 컴퓨터한테 반환한다고 했죠?

 

마찬가지로 0이라는 숫자를 컴퓨터한테 돌려줍니다. 이건 뭘 의미하는 걸까요?

 

0이라는 의미 자체가 컴퓨터, 여기서는 프로그램을 실행시켜주는 윈도우 같은 존재를

 

말할겁니다.

 

어쨌든 윈도우에게 프로그램이 정상적으로 종료했다! 라고 알리는 겁니다.

 

한마디로 윈도우와 프로그램만의 신호이죠.

 

이렇게

 

#include <stdio.h>

 

int main(void)

{

printf("Hello World!");

return 0;

}

 

의 해석은 모두 끝이납니다.

 

간단하게 정리하면

 

출력을 담당하는 printf 함수를 써야 하는데 그 함수는 stdio.h 헤더파일에 있으니 include 라는 전처리기 명령어를 통해 헤더파일 불러와라.

 

그 다음 우리는 컴퓨터한테 정상적으로 종료했다는것을 알려줘야 하니 0을 줘야 한다.

 

0은 정수이기 때문에 함수는 int(정수)형이다.

 

라고 원리가 돌아가게 됩니다.

 

이것을 완전히 이해하셨다면 C언어를 익히는데 별다른 어려움이 없을 겁니다.

 

이해를 못하셨다면... 계속 해서 읽어보시고 그래도 안되면 책 한권 참고 하시는것도 나쁘지 않습니다.

 

 

 

3. "Hello World!" 소스 코드 안에 숨겨진 규칙 찾기

 

C언어도 하나의 언어이기 때문에 문법같이 규칙이 존재합니다.

 

이것은 간단하게 정리만 하겠습니다.

 

1. #이 붙은 전처리기는 무조건 가장 첫줄에 시작

 

2. 문장이 하나 끝나면 반드시 뒤에 세미콜론 (;)을 필수적으로 붙여야 한다

 

3. main 함수 뒤에는 세미콜론을 붙이면 안된다. 전처리기도 붙이면 안된다.

 

4. 함수의 시작과 끝은 중괄호{} 로 알려야 한다.

 

 

이것이 규칙입니다.

 

이중에 가장 중요한것은 2번입니다.

 

2번은 무조건 필수입니다. 이것은 비단 C언어만이 아닌 JAVA,C#,C++ 등 프로그래밍 언어라면

 

거의 공통적으로 다 안고 가는 규칙입니다.

 

그럼 ;을 붙이지 않으면 어떤 문제가 발생할까요?

 

컴퓨터는 세미콜론을 붙이지 않으면

 

int main(void)

{ printf("hello,world!")return 0}

 

이렇게 보게 됩니다. 그래서 컴퓨터는 "응? 이게 무슨 말이야? 난 모르겠다. 오류 뿜는다!"

 

이렇게 되는 겁니다.

 

세미콜론은 문장이 끝이나면 다음줄로 넘길때 컴퓨터가 인식하게 해주는 코드 같은것입니다.

 

세미콜론을 뒤에 붙여줘야

 

int main(void)

{printf("hello,world!")

 return 0

}

 

라고 이해를 합니다. 이제서야 " 아... 헬로 월드 출력하고 종료 잘했다고 알리라는군..."

 

하고 인식하는 겁니다.

 

컴퓨터는 생각보다 굉장히 멍청한 도구 입니다. 컴퓨터는 만능이 아니기 때문에

 

인간이 명령을 내릴때도 융통성 하나 없게 일일이 밥숟가락 떠서 먹여주다시피 다 해줘야 합니다.

 

그러니 이런 사소한 규칙 꼭 기억하시기 바랍니다.

 

 

 

 

여기 까지 해서 Hello world! 출력하기 편을 모두 마쳐봤습니다.

 

솔직히 지금 hello world 안에서 설명 못한 c언어만의 문법이라든가 규칙이 너무너무 많아서

 

아쉬울 따름입니다.

 

하지만 그것을 다 설명하게 되면 글도 너무 길어져서 가독성도 딸리고 지루할뿐 아니라

 

복잡해지기만 합니다. 마치 레벨 5인데 준보스 만난 느낌?

 

아직 설명할건 많습니다. 앞으로 천천히 이해하기 쉽도록 설명하기 위해 노력하겠습니다.

 

 

제 성의없는 강좌 봐주셔서 감사합니다.


+ Recent posts