새롭게 선보이는 매체인《EPISODE》의 모토는 새로움입니다. 터치 인터페이스라는 새로운 환경에 맞게 컨텐츠, UX, 컨텐츠와
독자와의 관계를 완전히 새롭게 재정의하고자 합니다. 한국을 넘어 아시아 시장에서 아이패드 컨텐츠의 선도적 역할을 해
나가는《EPISODE》가 되겠습니다.
이번호에서는 일본의 대재앙에 대해 살펴보고자 합니다. 데이터와 인포그래픽 그리고 아이패드에서만 가능한 UX를 통해 일본의 대재앙이 일본만의 문제가 아닌 전세계의 문제이며 바로 우리의 문제임을 알아보고자 했습니다.
트위터에서 최고의 미디어 파워를 자랑하는 독설닷컴 고재열 시사인 기자와의 인터뷰 기사도 있습니다. 트위터와 인터넷에서 많은 논쟁을 통해 다듬어진 고재열 기자의 생각과 입장을 들어보시기 바랍니다.
특히 이번호는 디자인이 확 바뀌었습니다. 터치 인터페이스라는 새로운 매체에서 발행되지만 책 혹은 잡지의 기본을 다시 생각하며 디자인에 많은 신경을 썼습니다.
《EPISODE》는 앞으로도 꾸준하게 UX 분야에서의 실험을 진행할 예정입니다. 독자의 움직임에 반응하는 디자인, 사용자와 커뮤니케이션하는 컨텐츠, 그리고 밀도 있고 창조적인 새로운 형식의 미디어를 경험해보시기 바랍니다.
The full API specification for the localStorage and sessionStorage objects can be found here. At the time of writing, this is how the common Storage interface look:
Demo
I’ve put together a quick demo here
to illustrate how to detect and use the local and session storage to
get, set, remove and clear stored items (well, basically, covers each
of the available methods on the Storage interface above).
The page itself is simple and crude, just a couple of <div> and most importantly two tables which I use to show all the key value pairs stored in the local and session storage:
Introducing the new placeholder attribute
You might have noticed that the two text boxes had placeholder text similar to that familiar search box in Firefox:
To add a new key value pair or update the value associated with an existing key, you just have to call the setItem method on the intended storage object:
// adds a new key to both local and session storage
functionsetKey() {
varkey = $("#keyText").val();
varvalue = $("#valueText").val();
if(Modernizr.localstorage) {
localStorage.setItem(key, value);
}
if(Modernizr.sessionstorage) {
sessionStorage.setItem(key, value);
}
showKeys();
}
Removing an item
Earlier in the showStorageKeys(type, table) function, I
added a row to the relevant table for each key value pair in the
storage including a button with a handler for the onclick
event. The handlers are created with the correct storage type
(“local” or “session”) and key for the current row baked in already so
that they will call the removeItem(type, key) function with the correct parameters:
// removes an item with the specified key from the specified type of storage
functionremoveItem(type, key) {
// get the specified type of storage, i.e. local or session
varstorage = window[type + 'Storage'];
storage.removeItem(key);
showKeys();
}
Clearing all items
Finally, the ’”Clear” buttons underneath the tables call the
clearLocalKeys() and clearSessionKeys() function to remove all the
key value pairs in the corresponding storage:
PowerCharts is a set of advanced charting widgets for usage in
specialized applications like network diagrams, performance analysis,
hierarchical structures, stock prices and financial planning.
Render charts in both Flash and JavaScript (HTML5); works with PCs, Macs, iPads, iPhones and a majority of other mobile devices
Integrate with any server-side technology (ASP.NET, PHP, ASP, RoR, JSP, ColdFusion etc.) and database
Highly interactive capabilities like visually editing
data, adding data nodes at runtime and submitting modified data back to
server
Extensive documentation and samples get you started in minutes
Add the Rich Internet Applications functionality to your web applications with PowerCharts
Chart Types
PowerCharts offers 16 different chart types each with their own specialized applications:
The HTML5 Web Sockets specification defines an API
that enables web pages to use the Web Sockets protocol for two-way
communication with a remote host. It introduces the WebSocket
interface and defines a full-duplex communication channel that operates
through a single socket over the Web. HTML5 Web Sockets provide an
enormous reduction in unnecessary network traffic and latency compared
to the unscalable polling and long-polling solutions that were used to
simulate a full-duplex connection by maintaining two connections.
HTML5 Web Sockets account for network
hazards such as proxies and firewalls, making streaming possible over
any connection, and with the ability to support upstream and downstream
communications over a single connection, HTML5 Web Sockets-based
applications place less burden on servers, allowing existing machines
to support more concurrent connections. The following figure shows a
basic WebSocket-based architecture in which browsers use a WebSocket
connection for full-duplex, direct communication with remote hosts.
The idea for the site came about following an HTML5 meetup after 2009′s Future of Web Design
conference in London. We realized there wasn’t a resource for people
who wanted to learn more about the hows and whys of implementing HTML5, so we decided to build one!
Originally, there were five of us (Rich, Bruce, Jack, Mike, and Tom).
Shortly before launch, Remy came on board too. Then in early 2010, Oli
made us an offer we couldn’t refuse, and we became seven.
We’d also like to offer a massive thank you to Brandan Lennox,
who has been copy editing our posts for some time now. Brandan does a
superb job of editing our articles and making them easy to read.
Our Aims
We will publish articles relating to HTML5, its semantics, and how to use it right now. We also invite questions via Ask the Doctor. We’ll post answers in future articles so that everyone can benefit.
We acknowledge that we may sometimes get things wrong and that people may disagree with our interpretation of the HTML5 specification.
But that’s another of the reasons that this site exists: the spec has
yet to be formalised, and we can all do our bit to make it what we want.
A “specification for the people” if you will.
Get involved
We invite you to freely comment, question, congratulate, argue, and
suggest in the articles’ comments sections, and we’ll do our best to
answer in a considered and reasoned manner. As we said above, the HTML5 specification has yet to be finalised, so we can all have a say, and we invite you to do so here on our site.
We hope you find HTML5 Doctor a useful resource. If you have any questions relating to HTML5 and how to implement it, just ask the doctor!
JoJavaScript Framework for HTML5 http://joapp.com/ Document : http://joapp.com/docs/index.html Download : https://github.com/davebalmer/jo/downloads Jo is a JavaScript framework for HTML5 capable browsers and devices. It was
originally designed to work on mobile platforms as a GUI and light data layer
on top of PhoneGap. Since its creation, Jo has also been tested successfully
as a lightweight framework for mobile browsers, newer desktop browsers, and
even Dashboard widgets.
Jo는 HTML5를 지원하는 브라우저와 장치를 위한 자바 스크립트 프레임 워크입니다. 그것은 원래의 GUI와 PhoneGap 위에 가벼운 데이터 레이어로 모바일 플랫폼에서 작동하도록 설계되었습니다. 그것의 창조부터 조는 또한 모바일 브라우저를위한 경량 프레임 워크, 새로운 데스크톱 브라우저, 그리고 심지어는 대시보드 위젯으로 성공적으로 테스트되었습니다.
Html5Demos : http://html5demos.com/ Html5를 응용하는 데모들을 보여준다. Geolocation, CrossDomain, Canvas, Video, Drag&Drop 등이 있다.
HTML 5 Demos and Examples
HTML 5 experimentation and demos I've hacked
together. Click on the browser support icon or the technology tag to
filter the demos (the filter is an OR filter).
Modern Javascript : web2.0과 함께 자바스크립트 개발에 초점이 맞춰졌다. 다양한 OpenAPI 개발환경이 구축되고, 다양한 모바일 디바이스에서 HTML5로 Application을 개발할 수 있기 때문에 브라우저들은 HTML5기술을 수용하기 위해 경쟁 중이며, 다양한 자바스크립트 라이브러리들이 나오고 개발되어지고 있다. HTML5는 기존의 문서기반 정보를 탐색하기위한 방식에 불과했다면, HTML웹환경에서 Application platform을 그대로 가지게 된 것이고 API를 가지고 HTML5기능을 접목시키면 기존에 데스크탑에 있었던 application을 Web에서 그대로 구현 가능해진 것이다.
JavaScript + Html5 + Ideas, Libraries, Tool, API = Marketplace
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 기능을 컨트롤 할 수 있는 기능을 제공하여 이용할 수 있다.