« Previous : 1 : ... 6 : 7 : 8 : 9 : 10 : 11 : 12 : 13 : 14 : ... 101 : Next »
이클립스 활용

JDK : 서로 다른 버전으로 컴파일하면 문제발생소지가 있다.
          오라클 같은 경우 자체 JDK를 가지고 있다.
          Path를 꼭 확인 해라.

JDK 1.4                - Eclipse 3.2 , 3.3(Europa), 3.4(Ganymede)
JDK 1.5 Tiger       - JAVA5  -  Eclipse 3.5 Galileo
JDK 1.6 Mustang - JAVA6   - Eclipse 3.6 Helios
JDK 1.7 Dolphin

Web 개발 : Eclipse IDE for Java EE Developer

View - Package View : 클래스 경로
         - Navigator View : 실제 파일 경로

Edit
* Code Asist : Ctrl + space ( Code Add : Window - Preference - Java - Editor - Templates )
* Quick-Fix   : Ctrl + 1 { + jUnit } ( 테스트주도개발 방법론: 테스트 -> 개발 )
* Word-Colpletion : Alt + / (변수자동완성)

Navigator
* 족보보기 : 클래스 선택 후 "F4"
* 역추적     : 클래스 선택 후 "Ctrl + Alt + H"
* 열기         : F3 또는 Ctrl + Mouse Click

Interface(인터페이스) : 오버로드 되어야 함(역삼각형)
* 인터페이스, 형변환, 추상 클래스 : 중요함.

Refactor
* Rename  : Alt + Shift + R
* Move       : Alt + Shift + C
 ; Package 브라우저에서 Drag&Drop 으로도 가능.

Resource
Workbanch - Perspective - View
                                         - Editor Area - Editor
: perspective는 추가,수정,삭제 가능하다. 영역이 고정되어있고, 영역내에서 유동적이다.

Menu
* [Source] - [format] - [Generate Gatters and Setters]
* Preferences -> ( Ctrl + shift + L ) x 2
* Editor 창간 전환 : Ctrl  + F6 ( Preferences 에서 추가가능).

Debug
* Debuging 은 기능이 아니라 메모리를 가지고 노는 것이다.
* 지역변수는 무조건 초기화 해라.
* 메모리가 Full 될 수 있기 때문에 Garbage Collection 이 있는데,
   사용하지 않는 garbage를 삭제하지 않고 HDD에 저장한다.
* 코드 컴파일하고 실행(에플리케이션에 run configuration을 생성)
* Run>Debug.. 사용하여 (debug Configuration을 셋업)
* 디버거로 메인 자바 클래스로서 사용되는 클래스 선택
* 가장 일반적인 디버깅 과정은 조건문이나 루프에서 변수와 값들을 관찰하기 위해 breakpoint 설정
* 의심이 가는 코드의 라인에 있는 mark bar(에디터 부분의 왼쪽 모서리) 더블클릭
-------
* step-into(F5)
* step-over(F6)
* step-return(F7)
* Use Step Filters : 지정클래스외에 들어가지 마라.
* Breakpoint Hit Count : 실행갯수제한 ( 설정 후 "F8" 클릭시 실행 )

Heap 영역 보기
1. [Preferences] - [General] - Show heap status 확인
2. 오른쪽 하단에 용량표시
3. 표시되는 용량 옆의 휴지통클릭하면 사용량을 줄여준다.
4. 휴지통은 자주 클릭하지 마라.(Garbage Collection)

개발방법론
사용자 삽입 이미지
*  TDD개발방법론 : Quick Fix + jUnit

단위 테스트
* jUnit
  java 1.4  - jUnit 3
  java 1.5, 1.6 - jUnit4 ( "@" 사용 )
 : "Test" 폴더 만들어서 jUnit 테스트 파일 생성. jUnit 에 개발메소드 생성 후, Quick-Fix로 메소드를 생성.

CVS 설치
* 설치시 주의사항 : admin 계정(password 가지고 있는) 필요.
* CVS NT 에서 Lockservice 실행안되면 작업관리자에서
   CVS Lockservice를 프로세스 종료하고 다시 실행해야 한다.
사용자 삽입 이미지
* CVS 연결된 프로젝트를 다시 로컬에서 지정작업하려면
  : Team - Disconnect ( 체크1 : CVS 폴더(local)까지 삭제 , 체크2 : 링크만 삭제)

Code-Convention
* Formatter : Ctrl + shift + F
  : 문법에 맞게 소스 정렬
* CheckStyle (naming tool)
  : 설치시 Preferences에 적용안되면 eclipse.ini 의 최상위에
    " - clean" 을 입력하고, Restart( [File] - [Restart] ).
    - 정규식이 중요하다.
 ex) 메소드 규칙 : 1. 영문 소문자로 시작.  2. 최소 3글자 이상.

Web Project
*tomcat 설치 : tomcat manager 사용자는 tomcat-users.xml로 생성시키면 된다.
* war 파일로 Export 해서 tomcat 서버의 webapps에 이동시미켠 application이 등록된다.
* JavaEE( Dynamic web project ) Perspective 에서 작업.
* JSP webserver 종류 : tomcat, weblogic, jeus, SilverStream, jBoss, Glassfish

표준 JavaEE
WAR : Context - Roost
                 └ META-INF
                 └ WEB-INF : 보안폴더로 지정되어 있음(설정관련파일만 보관)
                           └ web.xml  : 웹서버에 관련된 설정
                           └  classes  : 개발 class
                           └  lib           : 외부 library 등록

EJB -> WAS server( session,Entity, Message) -> JAR
EAR(엔터프라이즈) : WAR + JAR

JSP 파일 생성
* ctrl + space 를 많이 활용해라.
1. src 폴더에 Servlet 생성(Class)
2. 생성시 servlet 오류발생( javax 패키지 없음. javax 는 JavaEE에 포함. )
    : 웹개발시 JavaEE까지 필요 없다. JDK TigerSE정도면 된다 .
      javax는 "Build Path"로 설정하면 된다.
      웹서버에 포함되어 있으니 웹서버를 library에 추가하면 Build path 설정은 필요없다.

Servlet
* do Post
* 소스 작성 후 저장시 web.xml 변경됨 ( 7버전에서는 web.xml이 없다.  )
* web.xml은 아래에서 위로 읽어야 한다.
* Dynamic Web Project 생성시 버전(Dynamic web module version) 확인 후 지정. 차후 버전변경 어려움.
* Target runtime 지정하면 [Properties]에 java build path 자동 생성.
* JSP 파일은 java로 변경되는데, 확인하려면
   workspace - .metadata - .plugins - org.eclipse.wst.server.core 아래의
    해당 프로젝트의 폴더안에 존재한다.
* Servlet이 생성되면 web.xml이 변경됨으로 restart가 필요하다.

MVC ( model, View, Controler)
사용자 삽입 이미지
Struts
사용자 삽입 이미지
* Struts의 .jar 파일을 해당프로젝트의 /WEB-INF/lib/로 복사하면 적용된다. (Build path에서 확인 가능)
* Snippets : 하단에 있는 tab. 자주 쓰는 문구 저장기능.
* Struts 의 Config.xml 의 내용은 snippets에 만들어둔 Head를 사용해서 시작한다.
  web.xml에 나오는 경로를 자서 만든다.
* 해더에 지정된 .dtd 문법책에 맞추어서 작성한다.

JDBC
* oracle : ojdbc~.jar
* Addjars 로 ojdbc파일을 불러오고, 아래의 List Drivers를 클릭하면
    "Driver class Name" 에 클래스 리스트가 나온다.
* SQL plugin : http://marketplace.eclipse.org/ 에서 필요한것 설치.
* JDBC의 유의사항
   : 계정정보는 보안폴더에서 관리해야 한다.
     ~.close(); 는 공통관리해야한다.
     Str 로 문자열에 붙여쓰지말고 쿼리문은 클래스 안에 넣지마라. 쿼리문을 xml파일로 밖으로 꺼내는 것은 "iBatis"이다.

iBatis (JDBC + iBatis)
* iBatis-common-2.jar , iBatis-dao2.jar , iBatis-sqlmap-2.jar을 lib에 등록(Build path)
* iBatis 설정은 Package로 만들어야 같이 클래스가 이동한다.
   /project/src/config(package)/~.xml
* xml 파일 생성시, "snippets"를 잘 이용해라.
* Content Assist 할때, 클래스명이 길면 "카멜명명법"을 이용하라.

◆ 카멜 표기법 (Camel Notation)
1. 단어와 단어 사이를 대소문자로 구분하는 방법.
2. 카멜(낙타)이라는 말은 카멜표기법으로 작성된 변수의 형태가 낙타의 혹을 닮아서 붙여진 것이다.
ex. List guestBook = (List)request.getAttribute("list");

* http://서버주소:포트/컨텍스트명/request자원
* Context명이 Url의 폴더가 된다.
* 프로젝트 생성 후 struts class, JDBC class, iBatis class 를 lib로 복사한다.
* Struts2 부터는 설정파일이 패키지안으로 들어간다. - /src/package
* xml에 한글 저장시 인코딩을 변경하면 된다.
* iBatis-config.xml : 네임스페이스 이용.

JAVADoc 문서만들기
* Generate javadoc : visibility - Public(일반 공개용)

Ant
* http://ant.apache.org/
* 프로젝트에서 build.xml 파일 추가
   : Ctrl + 3 이클립스 모든 메뉴 찾기
* Ant View 보기
  > build.xml 을 등록해서 실행시킬 수 있다.
  > 등록된 Ant를 실행(double click)하면 Console창 실행됨

환경설정 모듈 개발(Property)
* 환결설정값은 되도록이면 한곳에서 관리하는 것이 좋다.
   따라서 properties 패키지에 config.properties 파일을 생성한다.
  - 폴더위치 : properties/persistence
  - 파일명     : config.properties

로깅 모듈 개발 (Log4j)
* lib 폴더에 log4j 라이브러리를 저장하면 된다.
* Logging 레벨
  - FATAL : 가장 크리티컬한 에러가 일어 났을 때 사용.
  - ERROR : 일반 에러가 일어 났을 때 사용
  - WARN : 에러는 아니지만 주의할 필요가 있을때 사용
  - INFO : 일반 정보를 나타낼때 사용
  - DEBUG : 일반 정보를 상세히 나타낼때 사용










jsfactory.co.kr
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/29 16:51 2011/03/29 16:51
,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6010

eclipse 이클립스 자동 줄바꿈 기능

eclipse 이클립스 자동 줄바꿈 기능
Help > Software Updates > Find and Install > Search for new features to install > New Remote Site

- Name : WordWrap
- Update URL : http://ahtik.com/eclipse-update

설치 후 에디터창에서 오른쪽 마우스 클릭시 메뉴 중 "Word Wrap" 이라는 메뉴를 적용하면 된다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/29 13:26 2011/03/29 13:26
, , ,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6012

jsdoit - Share Javascript, HTML5 and CSS
사용자 삽입 이미지

 jsdo.it 무엇보다 독특한 것은 다른 사람이 쓴 코드를 버튼 1 개로 복제, 개조있는 곳에이 기능을 "포크"라고 부르고 있습니다. 예를 들어, 위의 <canvas> 샘플 포크하려면 jsdo.it에 로그인하여세부 정보 페이지에 가서, "Fork"버튼을 클릭합니다.

 그러면 앞의 코드의 사본을 그 자리에서 편집 시작할 수 있습니다. 이번에는 빛이 반짝반짝 너무 눈부셨다 때문에 속도를 10 분의 1로하여 화면의 변화를 관찰할 수 있도록하여 보았습니다 (포크하여 만들어진 작품은여기).

 이처럼 스스로 처음부터 쓰지 않아도 다른 사람이 만든 코드를 직접 만져 봄으로써, HTML5의 기능을 쉽게 테스트할 수 있습니다.


크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/29 11:25 2011/03/29 11:25
, ,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6009

http://www.w3c.or.kr/Translation/mwbp_flip_cards/

모바일웹
모범사례

머리말

"모바일웹 모범사례 1.0 (Mobile Web Best Practices 1.0)"은 모바일 장비에서 이용되는 컨텐츠를 보다 편리하게 설계하고 이용할 수 있도록 제정한 W3C의 웹표준입니다. 본 팜플렛에는 모바일웹 모범사례를 10가지 주제로 쉽게 설명하고 있습니다. 본 팜플렛의 가이드라인을 따르면 컨텐츠 제공자들은 더 많은 고객에게 컨텐츠를 제공할 수 있게되고, 효과적인 웹사이트와 어플리케이션을 구현할 수 있으며, 다양한 장비에서 웹을 편리하게 브라우징 할 수 있을 것입니다.

상세 내용 참조: http://www.w3.org/TR/mobile-bp/

하나의 웹을 위한 설계

다양한 장비를 고려하여 설계한 컨텐츠는 비용을 절감시키고, 유연성을 증대하며, 더 많은 사람들의 필요를 충족시킬 수 있다.

하나의 웹을 위한 설계

주제의 일관성: 다양한 장비에서 동일 URI에 접속했을 때 제공되는 정보와 기능은 일관성이 있어야 한다.

성능: 사용자에게 향상된 기능을 제공하기위해 장비 성능을 상세히 확인해야한다.

오작동: 다양한 장비가 각각 다르게 해석하여 발생할 수 있는 오작동을 염두에 두고 설계한다.

테스팅: 실제 장비와 에뮬레이터 상에서 테스트를 수행한다.

웹 표준 준수

세계 곳곳의 제각기 다른 장비와 브라우저의 호환을 위해서는 표준을 준수해야한다.

웹 표준의 준수

유효한 MARKUP: 표준 문법에 유효한 문서를 작성한다.

컨텐츠 포맷 지원: 장비가 지원하는 컨텐츠를 전송한다.

선호하는 컨텐츠 포맷 제공: 가능하면 장비가 선호하는 포멧으로 컨텐츠를 전송한다.

캐릭터 인코딩 지원: 장비가 지원하는 캐릭터 인코딩을 사용한 컨텐츠를 제공해야한다.

캐릭터 인코딩 정보 활용: 장비에서 사용되는 캐릭터 인코딩을 확인한다.

스타일 시트 사용: 장비가 지원하지 않는 경우를 제외하고, 레이아웃과 형식의 설계는 스타일 시트를 사용한다.

구성: 논리적인 문서 구성을 위해 마크업 언어(markup language) 기능을 사용한다.

오류 메시지: 발생한 오류 정보를 알 수 있는 메시지를 제공하고, 그러한 오류를 피해 브라우징을 계속할 수 있도록 한다.

유해요소 제거

모바일 장비의 제한 된 화면크기, 키보드, 기타 기능으로 발생하는 사용자의 문제를 고려하여 설계한다.

유해 요소의 제거

팝업창: 팝업창이나 새로운 창이 열리지 않도록 하고, 사용자에게 사전 정보없이 현재 창을 바꾸지 않는다.

테이블 속의 테이블: 테이블 내에 또 다른 테이블을 포함하지 않는다.

테이블 레이아웃: 테이블을 이용하여 레이아웃을 구성하지 않는다.

여백과 그래픽: 여백 공간에 그래픽을 사용하지 않는다.

프레임 비사용: 프레임을 사용하지 않는다.

이미지 맵(IMAGE MAPS): 이미지 맵은 장비에서 효과적으로 지원되지 않는 한 사용하지 않는다.

장비 제한 주의

특정 웹 기술을 사용하고자 할때는, 모바일 장비 성능이 제각기 다르다는 것을 염두해 두어야 한다.

장비 제한을 주의

쿠키(COOKIES): 이용 가능한 쿠키에 의존해서는 안된다.

객체나 스크립트: 임베드 되어 있는 객체나 스크립트에 의존해서는 안된다.

테이블 지원: 장비에서 테이블을 지원하지 않는 경우 사용하지 않는다.

테이블 대체: 가능한 경우에는 테이블 형식을 대체할 수 있는 형식으로 작성한다.

스타일 시트 지원: 필요한 경우 스타일 시트 없이도 문서를 읽을 수 있도록 구성한다.

글꼴: 글꼴 관련 스타일링에는 의존하지 않는다.

색상 사용: 색상을 통해 얻을 수 있는 정보도 색상을 사용하지 않고 이용할 수 있게 한다.

웹 네비게이션 최적화

작은 화면과 키보드, 제한된 bandwidth에서는 단순한 네비게이션과 입력이 매우 중요하다.

웹 네비게이션(navigation)의 최적화

NAVBAR: 페이지 상단에는 최소의 네비게이션 메뉴바를 제공한다.

네비게이션: 일관된 네비게이션 메카니즘을 제공한다.

타겟 ID 링크: 각 링크의 타겟을 명확히한다.

파일 포멧: 이용되는 파일의 포멧이 장비에서 지원되는지 주의한다.

타겟의 접근: 네비게이션 메뉴와 자주 사용하는 기능에는 키보드 숏컷(shortcut)을 지정한다.

URI: URI를 짧게하여 입력을 쉽게한다.

균형: 사용자가 원하는 정보와 페이지에 제공되는 링크 수의 균형을 맞춰 원하는 정보를 쉽게 얻도록 한다.

그래픽과 색상 확인

이미지, 색상, 스타일은 컨텐츠를 빛나게하지만 지원되는 포맷과 저사양의 화면 등을 유의하여야 한다.

그래픽과 색상을 확인

이미지 크기 조절: 고유 크기가 있는 이미지는 서버에서 크기를 조절한다.

대용량 그래픽: 장비에서 제공할 수 없는 이미지는 사용하지 않는다. 정보제공을 위해 꼭 필요한 것이 아니면 고사양의 고해상도 이미지의 사용은 피한다.

이미지 크기 설정: 고유 크기가 있는 이미지는 마크업에 이미지 크기를 설정한다.

NON-TEXT 대체: 텍스트가 아닌 요소(이미지, 애니메이션, 동영상 등)에 대해서는 그에 상응하는 텍스트를 제공한다.

색상 명암: 전경과 배경의 색 조합은 적절한 명암 대비를 유지해야 한다.

배경 이미지 가독성: 배경에 이미지를 사용할 경우 컨텐츠 내용을 볼 수 있어야 한다.

측정: 마크업 언어 속성 값과 스타일 시트 속성 값에는 픽셀 측정과 절대 단위를 사용하지 않는다.

가볍고 간결한 사이트

가벼운 사이트는 시간과 비용을 절약하여 사용자를 즐겁게 한다.

가겹고 간결한 사이트

최소화: 간결하고 효율적인 마크업을 사용한다.

페이지 사이즈 제한: 장비의 메모리 한계를 고려한 페이지를 설계한다.

스타일 시트 크기: 스타일 시트의 크기를 최소화한다.

스크롤링: 추가적인 스크롤링을 사용해야 하는 경우가 아니라면, 한 방향으로 스크롤을 하도록 제한한다.

네트워크 자원 절약

웹 프로토콜 기능을 활용하면 네트워크 부하와 대기시간을 줄여 사용자 이용을 향상시킬 수 있다.

네트워크 자원을 절약

오토 리프레쉬: 사용자에게 사전에 알리거나 중지 방법을 제공하지 않는 한, 주기적인 페이지 오토 리프레시는 사용하지 않는다.

경로 변경: 마크업으로 자동 경로 변경(redirection)을 사용하지 않고, 서버 설정을 통한 HTTP 3xx code 경로 변경을 사용한다.

외부 자원: 외부 자원의 링크 활용을 최소화한다.

CACHING: HTTP 응답에는 캐쉬 정보를 제공한다.

사용자 입력 가이드

모바일 장비에서 키보드 및 각종 입력 방법은 비효율적일 수 있으며, 효과적인 설계는 이러한 입력을 최소화 할 수 있다.

사용자 입력 가이드

키입력 최소화: 키 입력 횟수를 최소화한다.

텍스트 입력 최소화: 가능하면 텍스트 입력을 피한다.

기본값(default) 제공: 가능하면 미리 선택된 기본값을 제공한다.

기본 입력 모드: 장비가 지원하는 기본 텍스트 입력 모드, 언어, 포멧을 설정한다.

탭 순서: 링크, 폼 컨트롤과 객체를 이용한 논리적 탭 순서를 생성한다.

라벨 컨트롤: 모든 폼 컨트롤에 적절한 라벨을 붙이고, 명시적으로 라벨과 폼 컨트롤을 연계시킨다.

위치 제어: 라벨과 연관된 폼 컨트롤이 서로 적절한 위치에 있도록 한다.

모바일 유저 배려

시간이 부족하고 번잡한 상황에 있는 모바일 사용자들은 간결한 정보를 얻고자 한다.

모바일 유저를 배려

페이지 제목: 간단 명료한 페이지 제목을 제공한다.

명확성: 명확하고 간단한 언어를 사용한다.

한 눈에 의미 파악: 페이지의 내용을 간단 명료하게 하여 다음 페이지의 내용까지 파악할 수 있도록 한다.

제한: 사용자가 요청한 범위로 컨텐츠를 제한한다.

적절: 모바일 환경 사용에 적절한 컨텐츠를 보장한다.

적절한 페이지 사이즈: 장비의 성능과 네트워크 부하 등을 고려하여 사용하기 편리하고 유용한 크기로 페이지 사이즈를 분할한다.


크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/29 10:22 2011/03/29 10:22
,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6007

'모바일웹과 웹개발자가 2011년 주목해야 하는 기술들'

Modern Javascript
: web2.0과 함께 자바스크립트 개발에 초점이 맞춰졌다.
  다양한 OpenAPI 개발환경이 구축되고, 다양한 모바일 디바이스에서 HTML5로
  Application을 개발할 수 있기 때문에 브라우저들은 HTML5기술을 수용하기 위해
  경쟁 중이며, 다양한 자바스크립트 라이브러리들이 나오고 개발되어지고 있다.
  HTML5는 기존의 문서기반 정보를 탐색하기위한 방식에 불과했다면,
  HTML웹환경에서 Application platform을 그대로 가지게 된 것이고 API를 가지고
  HTML5기능을 접목시키면 기존에 데스크탑에 있었던 application을
   Web에서 그대로 구현 가능해진 것이다.

  JavaScript + Html5 + Ideas, Libraries, Tool, API = Marketplace

1. HTML5
     ▷ HTML5가 모바일에 중요한 이유는 각 모바일 플랫폼용 네이티브앱을
          기간내에 모두 만들기는 어렵기 때문이다.
     ▷ 한글 HTML5 Spec : http://clearboth.org/html5/spec.html
     ▷ HTML5의 Tutorial & Presentation : http://www.html5rocks.com/
     ▷ IE에서 HTML5에 새로 추가된 element들을 사용할수 있게 도와준다.
          :  http://code.google.com/p/html5shiv/
     ▷ 브라우저가 신기능을 지원하는지 체크하여 조건분기 할 수 있게 도와준다.
          : http://www.modernizr.com/
     ▷ 웹개발자들을 위해 정리된 HTML5 Spec : http://developers.whatwg.org/
     ▷ HTML5의 Video, Audio 지원이 안되는 브라우저를 지원한다.
          : http://videojs.com/, http://kolber.github.com/audiojs/
     ▷ HTML5 Initializer라는 서비스는 HTML5템플릿을 제공하서 프로젝트 진행을 빠르게
          시작할 수 있도록 한다. : http://www.cssclip.com

2. Javascript
     ▷ zepto.js 는 모바일을 위한 자바스크립트 라이브러리. jQuery 와 호환되는 문법을
          사용하지만 jQuery보다 가벼운 용량이어서 용량에 대한 부담을 줄여준다.
     ▷ 서버사이드 자바스크립트 node.js는 구굴크롬의 V8엔진을 사용하며,
          대용량 서버에 적용할수록 기존 서버에 비해 좋은 효율을 보여준다.
          자바스크립트로 서버의 모든 기능들을 활용할 수 있도록 계속 개발되어지고 있다.
     ▷ 브라우저가 아닌 서버/데스크탑 어플을 자바스크립트로 작성하기 위한 Common.js
          란 스펙이 있는데, 이는 node.js를 따르고 있고 그 외에도 CommonJS를 통한
          많은 시도들이 되어지고 있다.
     ▷ CoffeeScript 자바스크립트로 컴파일되는 간단한 언어
          .: 나 { 가 없는 영어와 같은 간단한 문법을 사용하는데, 문법이 간결해지고 더 빠르게
           실행될 수 있도록 컴파일 해주기 때문에 익숙해지면 굉장히 유용하다.



3. Responsive Web Design
     ▷ 다양한 사이즈의 해상도에 자동으로 대응하기 위한 웹페이지 제작 방법
          - Screen Size, Platform, Orientation에 반응

4. Web App Stores
     ▷ Crome Webstore https://chrome.google.com/webstore
          : 구글에서 payment 부분을 개발해놓았기 때문에 웹앱 개발자들이 자신이 만든
             앱을 쉽게 팔아 수직을 얻을 수 있는 환경이 생겼다는 점에서 큰 의미
     ▷ GetJar http://www.getjar.com/
          : 멀티플랫폼 앱스토어, 모든 플랫폼의 앱을 동시에 취급,판매한다.
             Getjar 는 사용자의 단말정보를 저장하여 사용자에게 필요한 앱만을 리스트에
              보여주어 사용자가 신경쓰지 않고 편하게 사용 할 수 있다.

5. Hybrid App
     ▷ Native App  과 WebApp의 기술을 합친 형태.
     ▷ 외형은 네이티브, 내용은 웹앱으로 만든것을 말한다.
     ▷ 멀티플렛폼이 가능한 장점이 있으나,
           네이티브 대비 웹부분의 속도가 문제가 되기도 한다.
     ▷ Hybrid App의 범위
         : 서버에 접속해서 웹앱을 실행하는 방식부터 NativeApp내에서 약간의 WebView를
            사용하는 방식까지 해당되는 범위가 넓고, 업데이트가 잦은 부분은 웹으로
            구현하면 관리에 용이하다.
     ▷ Hybrid App 개발방법.
          : 작업은 웹앱으로 모두 마친 뒤에 Appspresso, PhoneGap, Titanium 같은
             프레임웍으로 감싸준다. 프레임웍에서 Device 기능을 컨트롤 할 수 있는
             기능을 제공하여 이용할 수 있다.


크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/28 17:18 2011/03/28 17:18
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6004

[Web] N-Screen & UI

N-Screen & UI
▶ N스크린은 TV나 PC, TabletPC, SmartPhone 등 다양한 기기에서 하나의 콘텐츠를
     끓김없이 이용할 수 있게 해주는 서비스

▶ 사용자가 구입한 콘텐츠가 단말기가 아니라 서버에 저장
     - 언제 어디서나 다양한 단말기로 불러와 이용할 수 있다는 장점

▶ 국내외 이동통신사들은 N스크린을 미래 핵심 서비스로 인지


예제 사이트
http://www.colly.com/

http://www.edmerritt.com/

http://www.tenbytwenty.com/

http://thinkvitamin.com/

http://www.alistapart.com/d/responsive-web-design/ex/ex-site-flexible.html

http://www.20thingsilearned.com/web-apps/1
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/28 16:13 2011/03/28 16:13
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6003

2011년 3월. 요근래 드는 궁금증들.
스마트폰, 스마트패드 많이들 얘기하지만, 정말 사용자와 요구수요자의 차이는 어느 정도일까?
막상 사지는 않으면서 이미 만들어낸 여론때문에 뭔가 써봐야 할거 같고, 하나쯤은 있어야 할꺼 같은 심리인가?
모바일웹, 모바일앱의 차이를 아는 사람은 얼마나 될가?
웹 표준화를 얘기하지만, 과연 이해할 수 있을까?
네이버 뉴스벤더들이 다 외부사이트들이라서  네이버에서 뉴스 클릭시 외부사이트로 이동. 표준화가 되어 있지 않고 난잡한 광고와 뭔가 프로그램을 설치하려는 많은 행위들에 의해 스마트폰이나 스마트패드에서 끊김이 생긴다. 사용이 어렵다. 그런 뉴스만 좋아하는 이용자라면 스마트패드를 좋아할까?  의문스럽다.
스마트열풍으로 인해 생각지 못했던 소비가 많이 생겨난 것도 사실이다.
그런 것들이 가게 경제에 미치는 영향은? 어제 저녁 뉴스에도 나왔지만, 스마트폰 통신료가 비싸다. 비싼 줄 알면서 다 구입하고, 지금 그런 말을 뉴스에서 떠드는건 뭘 바라는걸까?
난 다만 통신료가 가변적으로 형성되서 가격이 내려가길 바랄뿐이다. 하지만, 더 큰 통신료나 뭔가 소비를 위해 미리 밑밥을 깔고있는건 아닐까 라는 생각이 없어지지 않는다.

맥북사용자도 심심치 않게 볼수 있게 됐는데,이미 트렌드가 된지 오래다.
한순간에 치기에 의해서 과소비를 하지 않기를 바랄뿐.

모바일웹을 모바일앱으로 바꿀수 있는 프로그램들이 있지만, 아이폰용은 맥북에서만 사용가능하다. 결국 맥북이 대세인가?
윈도우는 맥을 수용할수 없고, 맥은 윈도우도 수용이 가능하니 달리 방법이 없지 않겠는가?
특히 신규 노트북 구매자라면.
노트북만 사용한지 2006년부터니까 한참 됐구나.

순간의 분위기에 휩쓸리기 보다는 나에게 필요한게 뭔지, 내 생활패턴이 어떤지 먼저 알아야 하지 않을까?

스마트폰 쓸 시간도 없는데, 가지고 있어봐야 의미가 없지 않은가?

크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/28 10:58 2011/03/28 10:58
,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6002

# javascript library story

1. 모든 요소들을 읽어 들인다.

2. 모든 요소들을 관리할 수 있다.

3. 모바일 디바이스에 최적화한다(해상도 or 장비).

4. CSS로 관리되고, HTML로 표현한다.

5. 필요기능을 우선순위로 추가하고, 최신버전은 수시 배포한다.

크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/28 10:47 2011/03/28 10:47
,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/6001

이클립스 Helios & tomcat7 에선 web.xml 이 없다.
일단 책하고 틀리다. ㅋㅋ 서블릿3.0 기술엔 WEB.XML이 없다.
그런데, 프로젝트에서 우측클릭 하면 서블릿 메뉴는 그대로 있다.
서블릿을 생성하면 클래스명 위에 어노테이션이 붙는데,
어노테이션으로 서블릿객체와 매핑 설정으로 변경되었다.

@WebServlet(description = "테스트 서블릿", urlPatterns = { "/TestServlet" })


크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/25 16:54 2011/03/25 16:54
, , , , ,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/5995

 XML의 내용을 JQuery로 불러와서 Array로 파싱.
.get 으로 xml의 내용을 가져와서 .each 로 루프하면서 출력하는 테스트 .
querystring 으로 넘어오는 값도 받아서 적용한다.
Aptana 로 로컬에서 Javasrcipt 테스트 중. 완전 좋다.

<!DOCTYPE html PUBLIC "-//W3C//  DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>jQuery -> XML -> Array : Parse </title>
        <script src="jquery-latest.min.js" type="text/javascript">
        </script>
        <script type="application/javascript">
            
            
            
            $(function(){
            
                // 원하는 파라키터 호출
                var param01 = querySt("anum");
                //document.write(param01);
                $('#param01').html(param01);
                
                $.get("hello.xml", {}, function(xml){
                    $("item", xml).each(function(i){
                        var title = $(this).find("title");
                        
                        alert("title 의 개수는 총 " + $(this).find("title").size() + " 개 입니다.");
                        
                        $.each(title, function(j){
                        
                            $("#content_xml").append("j = " + j + " , " + $(this).text() + "<br />");
                            
                        });
                        
                        $("#contents").append(title.text());
                    });
                });
                
                $('p').each(function(index){
                    $(this).attr({
                        'id': "para-" + index
                    });
                });
                $('#btn').click(function(){
                    alert($('#para-1').text()); //태그내의 텍스트 읽어오기
                });
                
                
                // QueryString 호출
                function querySt(ji){
                    hu = window.location.search.substring(1);
                    gy = hu.split("&");
                    
                    for (i = 0; i < gy.length; i++) {
                        ft = gy[i].split("=");
                        if (ft[0] == ji) {
                            return ft[1];
                        }
                    }
                }
                
                
            }); //close $(
        </script>
    </head>
    <body>
        <div id='content_xml'>
        </div>
        <br/>
        <div id='param01'>
        </div>
        <br/>
        <div id='contents'>
        </div>
        <p>
            C#
        </p>
        <p>
            ASP.NET
        </p>
        <p>
            SilverLight
        </p>
        <input type="button" id="btn" value="동적으로 생성된 id로 접근" />
    </body>
</html>

hello.xml
<?xml version="1.0" encoding="utf-8"?>
 <item>
     <title>Ezra Pound</title>
     <title>Edward Nom</title>
     <title>Nippon Ds</title>
     <title>Chin</title>
     <title>wani</title>
     <title>金洪完</title>
     <title>上海</title>
     <title>Ngio.co.kr</title>
 </item>

크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)

Posted by 홍반장

2011/03/25 13:51 2011/03/25 13:51
, , , ,
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/5994

« Previous : 1 : ... 6 : 7 : 8 : 9 : 10 : 11 : 12 : 13 : 14 : ... 101 : Next »

블로그 이미지

- 홍반장

Archives

Recent Trackbacks

Calendar

«   2024/11   »
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Statistics Graph

Site Stats

Total hits:
239483
Today:
135
Yesterday:
712