영삼이의 IT정보2011. 10. 28. 05:09

SQL을 이용해서 데이터베이스를 생성할 때
데이터베이스를 생성하는 명령어는

CREATE DATABASE 데이터베이스이름

이와같이 테이블을 생성하는 명령어는

CREATE TABLE 테이블이름(칼럼1이름 설명, 칼럼2이름  설명, 칼럼3이름 설명 ...)

SQL은 대소문자를 구분하지 않지만, SQL 키워드를 대문자로 사용하면, DB 테이블과 칼럼의 이름을 구분하기 쉬움)
예) sitename 이라는 DB를 생성하고, users 테이블을 생성하자.

이때 실제로 'sitename'이라는 데이터베이스가 생성되었는지 확인해보도록 하겠다.
일반적인 경로인
C:\APM_SETUP\Server\MYSQL5\Data 에 가보면

sitename 이라는 데이터베이스가 생성된 것을 볼 수 있다.
다음단계로, 'sitename'이라는 데이터베이스 안에 
필드가 user_id, first_name, last_name, email, pass, registration_date 을 가진 테이블 'users'를 생성해보겠다.

이제, 만든 'users'테이블의 내용을 보기 위해서
먼저, sitename DB 안에 생성한 테이블이 무엇이 있는지 확인해보자.

SHOW TABLES;

'sitename' 데이터베이스 안에는 users'라는 테이블이 있음이 확인되었다.
이제, users 테이블을 확인해보자.
SHOW COLUMNS FROM users;

(뒷부분이 약간 잘리긴 했지만)
위와 같이 users 테이블이 확인되었다.
이제 'users' 테이블에 레코드를 입력해 보자.
-> 입력할 칼럼의 이름을 명기하는 방식의 쿼리를 이용한다.
INSERT INTO users
->(first_name, last_name, email, pass, registration_date)
VALUES('Larry', 'Ullman',
->'email@example.com',
->SHA1('mypass'), NOW());

이와같이 데이터를 입력했다.
이제 데이터를 검색하는방법은
SELECT * FROM 테이블이름

SQL의 기본은 여기까지.
헝 뭔가 포스팅을 밀린느낌.ㅠ.ㅠ

Posted by 다오나무
영삼이의 IT정보2011. 10. 26. 03:48


노트북 사용시 기존에 있는 고가의 키패드 제품 대신 스마트폰에 블루키패드 앱을 설치함으로써 보다 저렴하게 숫자키패드를 이용하실수 있습니다.
- 앱으로 구현하여 어디서나 사용가능
- 프리젠테이션 무선 리모컨 기능
- 저렴한 가격에 키패드 사용
- 다양한 기능, 스킨 업데이트 예정
1) 따로 휴대할 필요가 없는 키패드!
앱으로 구현하여 따로 숫자 키패드를 들고 다니는 번거로움이 사라집니다.
또 저렴한 가격대로 부담없이 사용 하실수 있습니다.
2) 숫자키패드만 되는 키패드는 가라!
추후 계산기 기능등을 업데이트 할 예정!
3) 키패드 스킨 업데이트 예정!
다양한 디자인으로 스킨을 적용해서 기분 및 취향에 따라 사용하도록 추가 예정
서버프로그램 윈도우7 및 윈도우XP 프로그램은 http://www.bluekeypad.net 에서 다운 받으셔서 설치후 이용하시면 됩니다.
개발사 : 앱툴즈 http://www.apptools.net
개발참여 : 이경용, 채덕병, 문기석, 정은아

티스토어 : http://tstore.co.kr/userpoc/game/viewProduct.omp?insProdId=0000239180
올레마켓 : http://market.olleh.com/appDetail?ptype=C&pid=51200005301596
오즈스토어 : http://adp.uplus.co.kr:8002/web/appraisal/appraisal_main.dn?pid=Q04010032629

구글마켓 : https://market.android.com/details?id=net.db.Bluetooth_HID

개발스토리 :

숫자 키패드가 없는 넷북 등은 엑셀 등에서 숫자 입력시 불편하다. 그래서, 숫자 키패드를 추가 구입해서 사용하곤 하는데 USB케이블이 불편해서 블루투스 키패드를 선호하게 됩니다. 하지만 블루투스 제품의 경우 대부분 9만원~15만원 이상의 고가 제품이라 선뜻 구입하기가 힘들어 집니다. 뿐만 아니라 항상 별도로 휴대 해야 하는 번그로움까지 생깁니다.

하지만 본 앱을 이용시 스마트폰과 블루키패드 앱만 있으면 언제든지 숫자 키패드를 사용 가능합니다.

홈페이지 : http://www.bluekeypad.net

티스토어 QR코드 :

올레마켓 QR코드 :

오즈스토어

구글마켓 QR코드 :

klt0537 2011-08-05 13:23
키패드있는 노트북을 쓰기좋아하는데 어쩔수없이14인치를 사서 키패드가 없는걸 구매했었죠. 검색해보니 이런게 있으더군요ㅎㅎ 일단 먼저 디자인이 마음에 들고요 잘쓸께요ㅎㅎ

klosno12 2011-07-28 13:26
오호 안그래도 키패드 살려고했는데 잘사용 할께요 고마워요

010-****-9839 2011-07-28 13:21
마침 숫자 키패드가 필요 했는데 정말 좋네요 usb키패드 보다 가격도 훨씬 저렴하구 프리젠테이션 할때도 사용할수있네요 굳!!!

Posted by 다오나무
영삼이의 IT정보2011. 10. 25. 01:28

[프로그램 소개]

1. 프로그램명 : XAMPP

2. 홈페이지 : http://www.apachefriends.org/en/xampp.html

3. 다운로드 : http://sourceforge.net/projects/xampp/files/

4. 개요

XAMPP is an easy to install Apache distribution containing MySQL, PHP and Perl.

간단히 설치하고 간단히 제거할 수 있는 아파치 웹서버이다.

*실행 : 압축 풀고 설정하고 서버 시작

*삭제 : 맘에 안들면 서버중지 후 프로그램 폴더 삭제.

*다른 버전 설치 : 압축 풀고 설정하고 서버 시작

결국 (설치 = 압축풀기)로 끝나는 웹서버이다.

윈도우, 리눅스, 맥 OS-X, 솔라리스 등 각종 OS에 맞게 포팅이 되어 있으며,

MySQL, PHP & PEAR, FTP Server 등 개발에 필요한 거의 모든  모듈이 포함되어 있다.

5. 사족

리눅스서버에서 윈도우서버로 마이그레이션하는 작업이 상당히 까다롭다는 것을 실감하게 되었다.

앞의 글에서도 밝혔듯이 큰 에러가 아닌 미묘하게 살짝 다른 부분들 때문에..

링크 :

정리하자면,

가. PHP3~4버전과 PHP5버전의 함수 및 변수처리의 미묘한 차이 (RESISTER_GLOBALS 등..)

나. MySQL의 기본 언어설정(euc_kr과 UTF-8)에 따른 DB이전문제

다. 웹서버의 권한 설정의 차이 (리눅스 APACHE 와 윈도우 IIS7)

라. 리눅스 전용으로 프로그래밍된 웹 프로그램들..

마. 방화벽 설정 - 서버단에서의 방화벽 및 서버내의 방화벽 설정

바. 기타.. 본인의 리눅스 및 윈도우 서버의 적응문제 등

사. 웹브라우저간 크로스브라우징 및 IE6 등 IE간 호환성 체크

6. 용도

- 리눅스용 웹서버 (카페24-리눅스 가상호스팅에서 실제 서비스 중..)

- 윈도우용 개발용 로컬 웹서버

- (윈도우용 서버는 IIS7+PHP+MySQL로 세팅 - 스마일서브에서 실제 서비스 중..)

7. 설정

* 수정문서명 및 위치

가. 윈도우

D:\xampplite\apache\conf\httpd.conf                // 기본 설정

D:\xampplite\apache\conf\extra\httpd-xampp.conf    // PHP관련 설정

D:\xampplite\apache\conf\extra\httpd-vhosts.conf   // 가상 호스트 설정

나. 리눅스

/opt/lampp/etc/httpd.conf

/opt/lampp/etc/extra/httpd-xampp.conf

/opt/lampp/etc/extra/httpd-vhosts.conf

* 설정 변경

[httpd.conf]

1. 서버 위치 설정

# 윈도우 기본설정 - 개발용으로 "xampp Lite"버전을 설치합

ServerRoot "/xampplite/apache"

# 리눅스의 경우

ServerRoot "/opt/lampp"

2. 포트 설정

# 유동IP등의 상황으로 80포트가 막혀 있을 경우 변경 해야함

Listen 80

3. 서버정보 설정

# 에러메세지 등에서 나타날 관리자의 메일주소

ServerAdmin admin@localhost

# 기본 서버이름 - 여러 상황에서 변경해야 할 수도 있음

ServerName localhost:80

4. 가상서버를 운용할 경우 문서(홈페이지)의 루트 설정)

# 기본설정은 윈도우/리눅스 모두 바꾸어야 함.

# 기본설정 DocumentRoot "/xampplite/htdocs"

DocumentRoot "/home"

# 윈도우의 경우 xampp 설치폴더와 홈페이지 루트폴더의 드라이브가 다른경우

DocumentRoot "e:/home"

5. 디렉토리 권한설정

# DocumentRoot을 바꾸었을 경우 필히 아래 디렉토리의 권한설정을 바꾸어야 한다.

# 추가항목

#  "LimitRequestBody 제한크기" 업로드 파일크기제한을 위해 추가

# 크기 예시 : 1MB=1048576 / 10MB=10485760 / 100MB=104857600 / 1GB=1073741824

#             200MB=209715200 / 500MB=524288000 [ 2GB-1=2147483647]

# 계산 공식 : 1024*1024 = 1메가 / 1024*1024*20 = 20메가 / 1024*1024*1024=1기가

# 기본설정 <Directory "/xampplite/htdocs"> 을 <Directory "/home">로 변경

<Directory "/home">

    Options Indexes FollowSymLinks Includes ExecCGI

    AllowOverride All

    Order allow,deny

    Allow from all

    LimitRequestBody 104857600

</Directory>

6. 기본문서명 지정

# domain.com/ 으로 접속할 경우 기본으로 보여지는 문서파일명

# index.php가 없을 경우 index.php4.... 왼쪽에서 오른쪽으로

# 경험상 "index.php"의 확장자가 제일 먼저 오는 것이 개발에 좋다.

<IfModule dir_module>

    DirectoryIndex index.php index.html index.htm index.php4 index.php3 index.cgi index.pl index.shtml index.phtml

</IfModule>

7. 로그파일 작성 조건 설정 (기본설정으로는 로그파일이 엄청나게 커진다.)

LogLevel crit // 치명적인 에러만 기록

8. HTML파일에서 PHP 사용을 위한 설정

[extra/httpd-xampp.conf]

#  .html .htm 추가 // html 파일에서 php 사용

AddType text/html .php .phps .php5 .php4 .php3 .phtml .phpt .html .htm

# |\.html$|\.htm$ // html, htm 추가

<FilesMatch "\.php$|\.php5$|\.php4$|\.php3$|\.phtml$|\.phpt$|\.html$|\.htm$">

  SetHandler application/x-httpd-php

</FilesMatch>

9. Virtual HOST 설정

링크 : [팁][리눅스] 네임서버 없이 IP로만 가상호스팅(Virtualhost) 설정시 주의점

10. PHP 설정은 다음 포스트에..

Posted by 다오나무
영삼이의 IT정보2011. 10. 22. 11:48

만약 한 대의 컴퓨터에서 여러 개의 웹사이트를 운영하고 싶다면? 정답은 VirtualHost를 이용하는 것이다.

X:\xampp\apache\conf\extra\httpd-vhosts.conf 파일을 수정하자.

우선 19번째 줄에서 코멘트를 해제하자.

NameVirtualHost *:80

맨 끝에 다음을 추가한다.

<VirtualHost *:80>
 DocumentRoot "/xampp/htdocs"
 ServerName localhost
</VirtualHost>

기본값대로 브라우저에 localhost라고 입력해도 여전히 X:\xampp\htdocs 를 가리키게 하기 위함이다.

이제 우리가 추가할 폴더는 다음과 같이 지정한다.

예1) 브라우저에 wems라고 치면 X:\home\wems\public_html 를 가리키게 하고 싶을 때. 폴더명을 이렇게 해두면 php에서는 여전히 문서 위치가 /home/wems/public_html 로 리눅스에 업로드한 후에도 절대 경로가 같기 때문에 편하다.

<VirtualHost *:80>
 DocumentRoot "/home/wems/public_html"
 ServerName wems

 <Directory "/home/wems/public_html">
  Options Indexes Includes execCGI
  AllowOverride None
  Order Allow,Deny
  Allow From All
 </Directory>
</VirtualHost>

예2) wems.snupaim.net이라는 주소에 대해 X:\home\wems\public_html 내의 파일을 서비스하고 싶을 때

<VirtualHost *:80>
 DocumentRoot "/home/wems/public_html"
 ServerName wems.snupaim.net

 <Directory "/home/wems/public_html">
  Options Indexes Includes execCGI
  AllowOverride None
  Order Allow,Deny
  Allow From All
 </Directory>
</VirtualHost>

(참고로 이 경우, 네임서버에서 wems.snupaim.net에 대해 내 컴퓨터의 아이피를 가리키도록 bind를 설정해두어야 외부에서도 wems.snupaim.net 주소로 내 컴퓨터 내의 X:\home\wems\public_html 내의 파일을 서비스받을 수 있다.)

apache의 설정을 바꾼 것이므로 XAMPP 혹은 apache만 껐다가 다시 켜야 반영된다.


여기서 끝은 아니고, C:\windows\system32\drivers\etc\hosts 파일을 열고 수정해줘야 한다.

127.0.0.1 localhost

은 이미 추가되어 있을 것이다. 여기에 다음을 추가해야 제대로 동작한다.

127.0.0.1 wems

X:\home\wems\public_html 안에 index.html 파일을 만들어서 <h1>WEMS</h1> 이라고 적고 저장한 후 브라우저 주소줄에 wems라고 입력해보자. WEMS라고 나오면 제대로 된 것이다.


Posted by 다오나무
영삼이의 IT정보2011. 10. 21. 12:41
제일먼저 JDK를 설치하고 그다음 이클립스PDT 그리고 XAMPP순으로 설치하겠습니다.

나중에 설치할 이클립스PDT가 32비트용 바이너리파일만 제공하므로 윈도우용 JDK역시 32비트용으로 설치합니다
윈도우7 64비트라 하여도 JDK32비트 설치시 문제없이 사용가능합니다.

JDK다운로드 URL은 다음과 같습니다.
http://www.oracle.com/technetwork/java/javase/downloads/index.html
설치방법은 간단하니 생략

이제 이클립스PDT를 받습니다.
경로는 아래와 같습니다.
http://www.eclipse.org/pdt/downloads/

윈도우 플랫폼은 32bit만 제공합니다. 윈도우7 64비트라고 하여도 이전에 JDK32비트를 설치하였다면
32bit플랫폼인 이클립스PDT를 사용가능합니다. 다운받고 설치합니다(압축풀고 원하는경로에 배치, 필요에따라 단축아이콘생성)

다음은 XAMPP 입니다.
xampp 다운로드 url은 다음과 같습니다.
http://www.apachefriends.org/en/index.html

여기서 원하시는 플랫폼을 받으면 되겠습니다.

설치방법은 간단. installer를 다운받아서 실행하면 끝입니다.
XAMPP installer 1.6.x 버전에서는 디폴트 디렉토리가 C:\Program Files\xampp 였고 지금 버전인 1.7.x에서는 디폴트가 c:\xampp 입니다.

설치완료후 xampp 의 콘트롤 패널이 뜰텐데(안뜨면실행) 보안설정을 해주어야 합니다.


스타트 되어진상태에서 admin을 클릭하면 xampp 윈도우창이 뜰겁니다. 거기서
sercurity메뉴를 클릭합니다.


아래의 url을 클릭

그러면 mysql과 xampp 디렉토리의 비밀번호를 입력하는 창이나올텐데
자신이 사용하려는 비밀번호를 입력후 확인

mysql을 cmd 에서 콘솔로 이용하고싶다면 패스설정을 해주면된다.
환경변수 -> path - >other path..;C:\xampp\mysql\bin;

httpd 명령어를 cmd에서 바로 먹이기위해 패스설정
환경변수 -> path -> other path...;C:\xampp\apache\bin;



이제 이클립스PDT 를 위한 아파치 웹서버 설정을 해주자
아래는 이클립스를위한 서버설정의 가장쉽지만 가장 불편한 방법인데..
가상서버를 설정하는것은 따로 포스팅했다.

현재 상태로 이클립스에서 웹페이지를 RUN 시키면 URL을 찾을수 없다고 나옵니다
당연한 것이 기본URL을 아파치서버의 디폴트폴더로 잡혀있기 때문입니다.

아파치 웹 서버에 접속하면 웹 서버는 documentroot로 지정된 폴더에서 index로 작성된 웹페이지를 찾습니다
이클립스PDT는 기본적으로 htto://localhost 경로가 workspace로 지정됐다는 것으로 가정하여 동작합니다.

아파치 설치폴더의 conf/httpd.conf 파일을 텍스트 에디터로 엽니다.
documentRoot "아파치 디폴트폴더"

위의 구문을 찾아서
documentRoot "c:/workspace(이클립스에서 지정한 워크스페이스)"
으로 변경해주고

접근권한을 부여하기 위해 다음내용을 추가합니다
<Directory "Workspace 경로">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


그다음은 MYSQL의 한글데이터 입력이 가능하도록 해야합니다
XAMPP는 단독으로 MYSQL을 설치했을 때와는 조금 다르게 설정합니다.


mysql 한글 설정하는 법

my.cnf 수정하기
xampp 가 설치된 디렉토리 네에 mysql/bin 폴더에 my.cnf 파일이 있습니다. 또는 my.ini

my.cnf 파일 수정

#한글설정
[mysqld]
character-set-server = euckr
#character-set-client-handshake = FALSE
skip-character-set-client-handshake
 
이제 이클립스에서 신나게 코딩

Posted by 다오나무
영삼이의 IT정보2011. 10. 21. 12:18

최초 설치후에 MySQL root 의 비밀번호를 변경 하고 phpmyadmin 으로

관리 할수 있는 세팅을 처리 해보겠습니다.

   

   

먼저 phpmyadmin 으로 이동 하신후에

Mysql 데이터베이스를 선택하신후 user 테이블로 이동 합니다.

   

   

Sql 탭을 클릭하신후 이동 하셔서

다음과같은 명령어로 root 유저의 비밀번호를 변경 합니다.

   

여기서는 test 로 변경 하였습니다.

Password 함수의 내부에 test 문자열을 자신이 원하는 비밀번호로

변경 하시면 됩니다.

update user set password = password('test') where user = "root";

   

   

파란색 V 표시가 생기면 정상정으로 MySQL 에 질의가 이루어진것입니다.

   

   

그리고 나서 XAMPP 컨트롤의 MySQL 부분을 STOP 한후 Start 로

서버롤 재기동 시켜 주시면 반영이 됩니다.

   

   

   

MySQL 서버의 비밀번호는 변경이 되었으나

Phpmyadmin 에서 MySQL 접속정보가 변경이 되지 않아서

다음과 같은 화면을 볼수 있습니다.

   

   

   

C:\xampp\phpMyAdmin\

Xampp 가 설치된 디렉토리에 phpmyadmin 으로 이동 하신후

   

   

Config.inc.php 를 에디트플러스로 열어 보면 다음과 같은

내용이 보입니다.

   

Password 부분을 MySQL 에서 접속한 비밀번호로 변경 하게 되면

정상적으로 DB 에 접근 할수 있습니다.

Posted by 다오나무
영삼이의 IT정보2011. 10. 21. 12:09

APM에서 UTF-8로 구현하려면 많은 작업이 필요하다.
첫번째로, 서버 세팅

1. 아파치
    httpd.conf
    extra/httpd-languages.conf
    extra/httpd-vhosts.conf
    상황에 따라 3개 파일중에 한곳에 캐릭터셋을 수정하면 됨

1
AddDefaultCharset UTF-8

2. PHP
    php.ini 파일에 

1
default_charset = "utf-8"


   

 3. php 코드 파일은 utf-8 - NO BOM 파일 포맷으로 저장하기


Posted by 다오나무
영삼이의 IT정보2011. 10. 19. 10:25


Posted by 다오나무
영삼이의 IT정보2011. 10. 5. 23:43
뷰의 추가 또는 삽입  
[self.view insertSubview:viewController.view atIndex:0];

[self.view addSubview:viewController.view]; 

[self presentModalViewController:viewController animated:YES];  --> 앤 모달뷰

[self.navigationController pushViewController:addView animated:YES]; 

뷰의 순서 바꾸기
[self.view bringSubviewToFront:self.tempViewController.view]; 
-> tempViewController.view를 가장 앞으로 이동한다. 

[self.view sendSubviewToFront:self.tempViewController.view]; 
-> tempViewController.view를 가장 뒤로 이동한다. 

[self.view exchangeSubviewAtIndex:0 withSubviewAtIndex:2]; 
-> 0번 뷰와 2번뷰의 위치를 바꾼다 
   위에서 insertSubView .... atIndex로 뷰의 번호를 지정하면 view가 쌓인다 
   이 순서를 변경할수 있다. 
   주위 해야 할것은 Atindex:number로 뷰를 넣을 경우 해당 뷰가 number로 계속
   지정 되는 것이 아니라 이동후에는 각각의 위치 번호로 된다. 
예) 
[self.view insertSubview:oneController.view atIndex:0];
[self.view insertSubview:twoController.view atIndex:2];
[self.view insertSubview:threeController.view atIndex:2];
--> 이때는 onController.view가      0     
          twoController.view가     1  
          threeController.view가   2   이다. 
여기서 
[self.view exchangeSubviewAtIndex:0 withSubviewAtIndex:2];  하면
onController.view가      2     
twoController.view가     1  
threeController.view가   0  이 된다. 즉 할당된 번호가 계속 따라 다니는 것이 아니라 
최최 지정 할때만 적용 되며 변경 후에는 뷰스택(?)에 샇인 번호로 바뀐다. 
이거 몰라서 3일 버렸다 왜 원하는 대로 안나올까 하고.... 바보 같이.. 
--> 아직까지는 그렇게 알고 있다. 나두 아이폰 관련 개발 공부 한지 인자 몇일 안되서 
    틀린 정보 일수도 있다. 

뷰 스택 로그 찍기 
NSLog([[self.view subviews] description]); 
-> 뷰가 쌓여 있는 스택(?) 순서를 콘솔로 볼수 있다.  
   로그를 볼때는 view에 tag로 번호를 지정한다음에 보면 콘솔에 해당 tag가 나와서 
   한결 보기 편하다. 

뷰 addSubview:뷰

뷰 inserSubview뷰 atIndex:번호

컨트롤러 pushViewController:컨트롤러 애니옵션

컨트롤러 presentModalViewController:컨트롤러 애니옵션

'영삼이의 IT정보' 카테고리의 다른 글

APM UTF-8 설정  (0) 2011.10.21
UITableViewCellStyle 종류  (0) 2011.10.19
윈도우폰이 가져오는 생각의 변화  (0) 2011.09.28
애플, 아이폰 기자 회견 10월 4일 개최!  (0) 2011.09.28
딜라이트샵 구경  (0) 2011.09.27
Posted by 다오나무
영삼이의 IT정보2011. 9. 28. 18:41
지금 우리는 스마트 디바이스 시대에 살고 있습니다. 하나의 스마트한 단말도 모자라서 N-Screen 이라는 용어가 난무하며 바야흐로 언제 어디서든 똑같은 컨텐츠와 내 자료를 볼 수 있는 시대가 되고 있습니다. 좋은 의미에서는 삶의 행위, 행동에 연속성을 주고 내가 이동하는 경로와 장소에 따라 모든 컨텐츠가 따라오는 Me-Centered 세상이 온 것 같기도 해서 참 좋습니다.

다들 아시는 것처럼 이런 변화의 선두에 서 있는 것이 애플입니다. 일주일만 있으면 아이폰5와 아이폰4G가 출시될 것으로 예측되며 또 한번의 시장 파란을 예고하고 있습니다. 시장에서 검증된 모델과 형태를 따라가면 절반은 간다는 말이 있습니다. 가장 성공한 플랫폼과 UI, UX 를 현재 시장에서 자웅을 겨루는 대부분의 스마트 운영체제, 스마트 디바이스가 따르는 형국입니다. 즉, 애플이 만들어 놓은 형태를 대부분 차용해서 사용하고 있는게 현실입니다.

삼성이냐 애플이냐? (출처 : Tom2network, http://bit.ly/i1BOb3)


이러다 보니 안드로이드인지 iOS 인지 Bada 인지는 중요하지 않고 모든 단말과 환경들은 룩앤필 (Look And Feel) 이 동일해져 버리는 기 현상이 나타났습니다. 물론 안드로이드나 Bada 에는 위젯이라는 컨셉이 있기는 하지만 그 자체를 별도로 만들어야만 하고 제약사항도 나름 있어서 결국은 아이폰과 별반 다르지 않은 형태라고 봐도 무방할 것 같습니다. 즉, 나만의 시대에 모두가 똑같아져 버리는 상황이 현재 상황입니다.

윈도우폰은 그런 시장에 변화를 주고 있습니다. 안드로이드나 아이폰용 앱을 보면 큰 차이가 없습니다. UI, UX 조차도 거의 비슷합니다. 단지 개발된 코드가 Objective-C 인지 Java 인지와 같은 눈에 보이지 않는 차이가 있을 뿐입니다. 하지만 윈도우폰은 기존의 두 시장 지배사업자에 비해 색다른 컨셉을 들고 나왔습니다. 얼마전 윈도우8 //build/ 행사를 통해서 더더욱 크게 알려지기 시작한 메트로 UI 가 바로 그것입니다.

마이크로소프트의 metro UI (출처 : Mind the Gap , http://bit.ly/qksYMC)



사실 처음 윈도폰7의 개발자 버전이 나오기 시작하던 시절부터 " 과연 메트로 UI 가 무슨 쓸모일까? " 라는 생각을 많이 해왔습니다. 그저 기존 시장과 달라야 한다는 의무감에 무리수를 둔 것이 아닐까 하는 생각도 했었습니다. 하지만 윈도폰 7.5 망고의 업데이트가 어제 시작되었고 이에 맞춘 개발사들의 앱을 보면서 무엇이 달라지고 있는지 알 수 있었습니다. 바로 앱을 만드는 사람들의 생각을 바꾸고 있는 것입니다.

초창기 윈도폰7에 맞추어 나왔던 앱들은 대부분 전통적인 iOS, 안드로이드 앱에서 많이 벗어나지 못했습니다. 하지만 윈도폰 7.5 망고에 맞추어 새롭게 버전업 되는 앱들은 윈도폰이 만들어 놓은 메트로 UI 와 라이브타일을 이용하여 적극적인 변화를 행하기 시작했습니다. 아래 링크된 에버노트 2.0 의 윈도폰 7.5 망고버전 앱이 가지고 있는 iOS 나 안드로이드용 앱과 차별되는 점들은 " 오! " 혹은 " 와우! " 할만한 요소라는 생각이 듭니다.

 

윈도폰은 아직까지 시장에서 성공한 단말, 플랫폼은 아닙니다. 하지만 앱을 만드는 사람들의 생각을 조금씩 바꿔 나가고 있다는 점은 무척 고무적인 현상이라고 봅니다. 시장은 항상 다양해야 하고 이런 다양성이 있을 때 변화가 온다고 생각합니다. 윈도폰은 당분간도 계속 고전을 면치 못하겠지만 이런 변화의 힘을 축적해간다면 사용자들에게는 더 나은 선택을 할 수 있는 기회가 되지 않을까 싶습니다. 
Posted by 다오나무