分类
前端 原创作品 技术 转载文章

FreeWheel前后端分离改造实践[转载]

在现代前端应用的工程实践中,前后端分离的架构会为两端带来更多的灵活性,已成为主流趋势。与之相对的,传统的单体Web应用(Monolithic Web Application)则将前后端代码放在一起,虽然耦合性较强,但在产品研发的特定阶段仍具有较强的优势,早期的ASP.NET、Java Spring MVC,以及Ruby On Rails都是单体应用的代表性框架。

本文将以FreeWheel从单体应用改造为前后端分离的实践为例,着重介绍其间前端所遇到的挑战和解决方案。

相较消费者,商业用户对前端应用的需求更具复杂性,且更强调质量。FreeWheel深耕企业级的视频广告领域10年,其基于Ruby On Rails框架为广告主打造的Web管理应用已经历多轮迭代和演进,目前已达到20多个产品模块,1200+页面,代码量已达到143.5万行代码,其中包含39万行基于jQuery的传统JS代码。为保证其质量,其中包含了20.2万行单元测试代码,除此以外,还有独立的近2万个自动化测试脚本。在两年前,我们感受到了单体应用的局限性,并决定将其改造成为前后端分离的架构。

分类
移动互联网

手机触屏打字太慢?上PC键盘吧

智能手机的键盘普遍是虚拟键盘,在日常使用中够用,也很方便。但在开发测试中,我们常常要输入各种文本符号或者网址,虚拟键盘的输入效率往往跟不上。在开发测试中,往往手边就开着PC,能不能用PC键盘代替虚拟键盘,直接从PC端输入文本到手机上?

没问题!一款名叫WIFI Keyboard的Android App可以满足这一需求。

1、下载WIFI Keyboard,Google Play https://play.google.com/store/apps/details?id=com.volosyukivan 或这里:[wpdm_package id=’586′]

2、安装WIFI Keyboard到你的手机上,启动app。

WIFIKeyboard_screenshot_01

 

3、确保PC在同一子网(局域网)中,用浏览器访问app提供的任何一个7777端口的网址(如上图)。如果公司网络路由环境较复杂或有防火墙等问题,则需要用USB线连接手机,确保PC上的ADB(DEBUG)可用,命令行中输入“adb forward tcp:7777 tcp:7777”,成功后用浏览器访问“http://localhost:7777/”。即出现如下页面。

WIFIKeyboard_screenshot_02

 

4、在手机上聚焦到文本输入框,比如下图的短信输入框,选择WiFiKeyboard输入法(如果该输入法尚未出现需要去输入法设置中勾选上)。

WIFIKeyboard_screenshot_03

5、在PC浏览器网页中的“Android输入”框中输入文本,手机文本框则同步出现内容。支持中文。大功告成!

WIFIKeyboard_screenshot_04

与此App原理相同的,还有Remote Keyboard。这款app并未采用网页方式,而是在PC端使用Telnet连接2323端口,可谓高大上。

以上两款app都是开源软件,担心隐私的用户可以检查其源代码。

Android有方案了,iOS呢?目前看来尚无免费方案,只有两款付费app可用,而且只支持MAC电脑:

iKeyboard ($9.99) 和 Type2Phone ($4.99)

参考http://apple.stackexchange.com/questions/4437/can-i-use-a-pc-mac-keyboard-as-a-bluetooth-keyboard-for-iphone

 

分类
English 原创作品 技术 移动互联网

泡面管家Android 3.0版发布 – Instant Noodles Master for Android 3.0 Released

泡面管家:界面清新、操作便捷,专为泡面优化的一键计时器
Instant Noodles Master: One-Tap-Timer for Instant Noodles, refreshing design, convenient to use.

high-res_icon_baidu-64

最新版本 Latest Version

3.0 – 全新《泡面管家》,将成为你最称心的泡面计时器。
3.0 – Brand new NoodlesMaster, now is your best timer app for cooking instant noodles.

1_Screenshot_2014-08-31-21-06-162_Screenshot_2014-08-31-21-05-53

最近更新 Recent changes

  • 预定义多组泡面时间,更提供了便于操作的小部件(Widget),以及到时提醒功能。
    Predefined durations, convenient widgets, on-time notifications.
  • 全新扁平化设计(flat design),风格贴近安卓4.0+的Halo主题。
    New flat design based on Android 4.0+ Halo theme.
  • 仍然支持Android 2.2+的老设备。
    Still supporting Android 2.2+.
  • 增加了诸如条码扫描、在线购买,以及分享至微博等贴心功能。
    Adding interesting features like barcode scan, buy online, and share to SNS.

4_Screenshot_2014-08-31-21-06-565_Screenshot_2014-08-31-21-09-14

应用下载 App Download

从豌豆荚安装 Install from Wandoujia:

WandoujiaWandoujia

或从谷歌Play市场安装 Or install from Google Play:

Install from Google Play

应用介绍 App Introduction

《泡面管家》(NoodlesMaster)是一款面向泡面(方便面、速食面、即食面)爱好者的小工具。
Instant Noodles Master (i.e. NoodlesMaster) is a small tool for instant noodles funs.

主要功能:
Features:

  • 泡面计时
    Timer for instant noodles
  • 泡面条码扫描识别
    Barcode scan
  • 在线购买泡面
    Buy noodles online
  • 分享至微博
    Share to SNS (now support Weibo)

新版中强化了泡面计时器的功能,并支持扫码识别、在线购买泡面、分享到微博,力求成为最便捷的泡面计时器。
The new version of NoodlesMaster enhanced the timer feature for instant noodles, also introduced barcode scan, buy online and share to SNS features, aims to be your best mate when cooking instant noodles.

用户可以点击主界面底部任一按钮开始计时,《泡面管家》会在到达指定时限时提示用户。上部圆形计时表盘在计时过程中,点击正中间的按钮会停止计时。用户也可以向手机主屏添加快捷启动计时的小部件。
A user may tap any button at the bottom of the main interface to kick off the timer, NoodlesMaster will notify user when timer completes. During timer runs, user may tap the stop button in the center of the top ring to cancel the timer. User may also add shortcut widgets onto home screen, which can start the timer by only one tap.

6_device-2013-05-11-204352

官方网站Official Website: http://n.evis.me

欢迎您提出宝贵意见,bug或新功能建议请在官方网站留言。
Any bugs or new feature requests, please feel free to reach me at above official website, or submit to: http://code.google.com/p/noodlesmaster/issues/list

feature_graphic-en-US

前一版本介绍:
Previous version:

泡面管家Android 2.1版发布 – Instant Noodles Master for Android 2.1 Released