폰앱의 멀티 플랫폼 개발 도구

Adobe Air3, Titanium, PhoneGAP, Nomad


참조 URL
  1. http://www.adobe.com/kr/products/air.html
  2. http://www.appcelerator.com/platform/titanium-platform/
  3. http://phonegap.com/
  4. http://vsnomad.com/




Tool 

 Target platform 

 비고

 Adobe AIR3

 iPhone, iPad, Kindle Fire, Nook Tablet, and other Android™ devices

 Action Script

 Titanium

 iOS, Android, Windows and BlackBerry, as well as hybrid and HTML5

 Native code 

 PhoneGAP

 iOS, Android™, Windows® Phone, Blackberry® 5/6/7 and webOS, Bada

 

 Nomad 

 Android and iOS

  Visual studio에서 배포





[그림1] PhoneGAP



[그림2] Nomad for Visual Studio




[그림3] PhoneGAP



[그림4] Titanium













Build 2013 San Francisco, California - Channel9


참조 URL
  1. http://channel9.msdn.com/Events/Build/2013
  2. http://channel9.msdn.com/Events/Build/2013?sort=status&direction=asc#tab_sortBy_status



 샌프란시스코에서 열린 Build 2013이 Channel9에 게시가 되었다.








마인드 맵으로 암기의 달인이 되어 볼까~ - Youtube







CSS3 Transition example site


참조 URL
  1. http://www.creativesandbox.com/guidebook
  2. http://2012.beercamp.com/



CSS3의 Transition 기능을 이용해서 만든 사이트다.












CSS Transition를 이용한 버튼 애니메이션 효과


참조 URL
  1. http://html5snippets.com/snippets/59-introduction-to-css3-animations
  2. http://www.the-art-of-web.com/css/css-animation/#.Ufm1yJLxqlg
  3. http://www.creativebloq.com/css3/animation-with-css3-712437
  4. http://lab.tylergaw.com/themanfromhollywood/
  5. http://cssdeck.com/labs/google-doodle-in-css-follow-up
  6. http://www.clicktorelease.com/code/css3dclouds/
  7. http://tympanus.net/Tutorials/AnimatedButtons/index2.html
  8. http://tympanus.net/Tutorials/OriginalHoverEffects/index.html
  9. http://webdesign.tutsplus.com/tutorials/htmlcss-tutorials/css3-transitions-and-transforms-from-scratch/
  10. http://2012.beercamp.com/
  11. http://www.creativesandbox.com/guidebook


 HTML5가 나오면서 CSS로 애니메이션을 할 수 있는 방법이 나오게 되었다. 이전에는 Javascript로 구현해야 하였기에 많은 CPU와 복잡한 로직으로 되어야 했지만 CSS의 Taansition을 통해 그나마 쉽게 컨트롤 할 수 있게 되었다. 이와 관련해서 여러가지 예제와 샘플들이 있지만 아래와 같이 버튼에 대해서 효과를 주는 간단한 CSS를 소개해 주고자 한다.



CSS의 Transition을 지원하는 브라우저에서만 확인할 수 있다. 예) 최신 Chrome browser
박스를 마우스 오버 시키면 박스가 빠르게 회전을 하고
마우스 Leave 시키면 반대편으로 빠르게 회전하여 돌아오는 CSS Transition 데모다.
  • A
  • B








위 표현은 아래 코드를 통해서 나타낸다.




[코드] HTML의 Style 선언




[코드] HTML의 Tag 선언



 HTML 5의 CSS3 Transition에 가장 잘 표현한 사이트가 있으니 여기에서 확인해 보고 경이로움을 같이 공유하였으면 합니다.

http://www.clicktorelease.com/code/css3dclouds/



그리고 어린이 도서와 같은 팝업북 같은 느낌의 사이트

http://www.creativesandbox.com/guidebook - 강추






Kendo UI Framework


참조 URL
  1. http://www.kendoui.com/
  2. http://demos.kendoui.com/
  3. http://demos.kendoui.com/web/overview/index.html
  4. http://demos.kendoui.com/mobile/overview/index.html#/
  5. http://demos.kendoui.com/web/spa/index.html
  6. http://demos.kendoui.com/web/validator/index.html



 Telerik사에서 공개한 HTML5 UI Framework다. 다른 프레임워크와 특이한 점은 DataSource를 객체를 통해서 다양한 데이터 종류를 하나의 일관된 방법으로 핸들링 하도록 제공하고 있다.











코너스톤 프리엠워크 cornerstone-framework


참조 URL
  1. http://blog.cornerstone.sktelecom.com/post/39027114036
  2. https://github.com/cornerstonewdk/cornerstone-framework
  3. http://blog.cornerstone.sktelecom.com/post/43817216270/1
  4. http://blog.cornerstone.sktelecom.com/archive



 

 SKTelecom에서 지원하고 있는 Client side 개발 프레임워크이다.


jQuery, Underscore.js, Backbone.js, Require.js, Mustasche.js, Twitter Bootstrap을 조합하여 만든 프레임워크이며 웹앱과 대규모 분산 개발 환경에서 개발할 수 있도록 조율되어 있다.












Exchange 개발에 유용한 파워쉘 PowerShell




특정 유저의 메일박스 정보

Get-Mailbox -identity email



특정 유저의 메일박스 정보 Database

Get-Mailbox -identity email| fl Database



특정 유저의 메일박스 이동 정보

Get-MoveRequest -Identity email



특정 유저의 메일박스 이동 요청

New-MoveRequest -identity email-TargetDatabase EDBNAME01











Push Notification을 통해 Exchange가 보내주는 XML 메시지 - Push Notification XML Message



구독 메시지

<?xml version="1.0" encoding="utf-8"?>

<soap11:Envelope xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/">

<soap11:Header>

<t:RequestServerVersion xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" Version="Exchange2007_SP1" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />

</soap11:Header>

<soap11:Body>

<m:SendNotification xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">

<m:ResponseMessages>

<m:SendNotificationResponseMessage ResponseClass="Error">

<m:MessageText>이 구독의 이벤트를 검색할 수 없습니다. 구독을 다시 만들어야 합니다.</m:MessageText>

<m:ResponseCode>ErrorReadEventsFailed</m:ResponseCode>

<m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>

<m:MessageXml>

<t:Value Name="SubscriptionId">HwBlaGRldjAaLm15c2luZ2alZGV2LnNhbXNabmcuY29tEAaAAEDzY414aNRHmaqvPaxcOC6bMacSPTbQCA==</t:Value>

</m:MessageXml>

</m:SendNotificationResponseMessage>

</m:ResponseMessages>

</m:SendNotification>

</soap11:Body>

</soap11:Envelope>

 

Timeout 체크 메시지

<?xml version="1.0" encoding="utf-8"?>

<soap11:Envelope xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/">

<soap11:Header>

<t:RequestServerVersion xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" Version="Exchange2013" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />

</soap11:Header>

<soap11:Body>

<m:SendNotification xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">

<m:ResponseMessages>

<m:SendNotificationResponseMessage ResponseClass="Success">

<m:ResponseCode>NoError</m:ResponseCode>

<m:Notification>

<t:SubscriptionId>HwBlcGRldjA0Lm15c2luZ2xlZGV2LnNhbXN1bmcuY29tEAAAAFeOaj2lZuZOi1N+1rkdEZQeygpQxzbQCA==</t:SubscriptionId>

<t:PreviousWatermark>AQAAABEyGxfwZ9dAopfl5usy5gfLCx0AAAAAAAE=</t:PreviousWatermark>

<t:MoreEvents>false</t:MoreEvents>

<t:StatusEvent>

<t:Watermark>AQAAABEyGxfwZ9dAopfl5usy5gfLCx0AAAAAAAE=</t:Watermark>

</t:StatusEvent>

</m:Notification>

</m:SendNotificationResponseMessage>

</m:ResponseMessages>

</m:SendNotification>

</soap11:Body>

</soap11:Envelope>

 

Push Notification 발생 이벤트

<?xml version="1.0" encoding="utf-8"?>

<soap11:Envelope xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/">

<soap11:Header>

<t:RequestServerVersion xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" Version="Exchange2013" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />

</soap11:Header>

<soap11:Body>

<m:SendNotification xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">

<m:ResponseMessages>

<m:SendNotificationResponseMessage ResponseClass="Success">

<m:ResponseCode>NoError</m:ResponseCode>

<m:Notification>

<t:SubscriptionId>HwBlcGRldjA0Lm15c2luZ2xlZGV2LnNhbXN1bmcuY29tEAAAAMJY03Vah5BOmkEOETcGXxHnvIm82TbQCA==</t:SubscriptionId>

<t:PreviousWatermark>AQAAABEyGxfwZ9dAopfl5usy5gdZDR0AAAAAAAE=</t:PreviousWatermark>

<t:MoreEvents>false</t:MoreEvents>

<t:CreatedEvent>

<t:Watermark>AQAAABEyGxfwZ9dAopfl5usy5gdnDR0AAAAAAAE=</t:Watermark>

<t:TimeStamp>2013-06-14T05:49:19Z</t:TimeStamp>

<t:ItemId Id="AAMkAGZhOGI2YjNjLWRlMWQtNDQxMi04MWM3LWIzMDZjMDc2ZTc5NwBGAAAAAABC/TlGf1b9QpWxGGDPuxf9BwBOIPGUO6e0TpHwZ1Cf8EPSAAAAAAAOAABOIPGUO6e0TpHwZ1Cf8EPSAAAtT/yAAAA=" ChangeKey="FwAAAA==" />

<t:ParentFolderId Id="AQMkAGZhOGI2YjNjLWRlMWQtNDQAMTItODFjNy1iMzA2YzA3NmU3OTcALgAAA0L9OUZ/Vv1ClbEYYM+7F/0BAE4g8ZQ7p7ROkfBnUJ/wQ9IAAAMOAAAA" ChangeKey="AQAAAA==" />

</t:CreatedEvent>

</m:Notification>

</m:SendNotificationResponseMessage>

</m:ResponseMessages>

</m:SendNotification>

</soap11:Body>

</soap11:Envelope>







javascript json 파싱 - 하위 브라우저 호환


참조 URL
  1. http://www.json.org/js.html
  2. https://github.com/douglascrockford/JSON-js
  3. https://github.com/douglascrockford



 일부 하위 버전의 브라우저에서는 json.stringify()과 json.parse()를 지원하지 않아 에러가 발생할 수 있다.  이때 Douglas Crockford님이 만들어 배포한 json2.js 파일을 다운 받아 HTML 페이지에 설치해 주면 Serialization과 DeSerialization을 정상적으로 동작하게 된다.  아래 json2.js파일을 다운 받을 수 있게 올려 놓았으니 필요하면 다운 받아 사용하기를 바라며 고마움을 Douglas Crockford에게 해주시기를 바랍니다.




json2.js


json2.zip










+ Recent posts