Knockoutjs官网翻译系列(一)】的更多相关文章

最近马上要开始一个新项目的研发,作为第一次mvvm应用的尝试,我决定使用knockoutjs框架.作为学习的开始就从官网的Document翻译开始吧,这样会增加印象并加入自己的思考,说是翻译也并不是纯粹的翻译,会加入自己对知识点的思考以及自己的尝试,在系列最后也希望用一个应用案例作为结尾.希望自己能坚持下来并有所收获,理解不对的地方大家也指出来避免我”误入歧途“.也并不会翻译所有的内容,我会根据自己的经验选择最能反映它使用和精髓的部分.当前版本为3.4 好了,闲言少叙,正篇开始. =======…
初学者无需了解这些 ,但是很多高级程序员想知道我们为什么可以保持跟踪这些依赖以及可以正确的更新到UI中.它其实很简单.跟踪算法是这样的: 无论何时你定义了一个computed observable,KO 立即执行它的执行函数来获取初始值. 当执行函数正在运行,KO会在执行函数中所有使用到的observables之间(包括其它的computed observable)建立订阅关系.这个订阅回调必定使执行函数再次运行,循环整个过程回到第一步(释放所有的订阅关系并且不再使用). KO想所有订阅者通知你…
书接上回,前面谈到了在视图模型中可以定义普通的observable属性以及observableArray属性实现与UI元素的双向绑定,这一节我们继续探讨第三种可实现绑定的属性类型:computed observables,我称它为计算observable(说实话关于observable怎么翻译我还真拿不准). 要是你在视图对象中已经定义了一个叫firstName的observable属性和一个叫lastName的observable属性,而你想显示这个人的全名那要如何处理呢?这种情况下就到了co…
承接前文,前文书说道了KO框架中如何使用observable的视图模型属性来与UI元素进行绑定并自动进行双向更新的事儿.observable属性除了服务基础数据类型之外,还定义了专门为服务数组类型的observableArray. 如果你想要监测并响应一个object类型的变化,那么你使用observables.如果你想监测并响应一个集合的变化,就使用observableArray.很多场景下你都会用到它,比如你要在UI上展现或者编辑一个列表内容,期中你会控制他们的展现啊,隐藏啊,添加啊,删除之…
本系列文章主要翻译自RavenDB官方文档,有些地方做了删减,有些内容整合在一起.欢迎有需要的朋友阅读.毕竟还是中文读起来更亲切吗.下面进入正题. 起航 获取RavenDB RavenDB可以通过NuGet获取,也可以直接在RavenDB官网下载压缩包. 首先了解下压缩包中的内容,可以更好的根据需要进行选择. Backup  – 包含用于备份的Raven.Backup工具 Bundles – 包含所有非内置的插件,如Authentication和Encryption. Client – 包含用于…
前言 本文翻译自“为电池寿命做优化”系列文档中的其中一篇,用于介绍如何使用Battery Historian分析电源使用情况. 中国版官网原文地址为:https://developer.android.google.cn/topic/performance/power/battery-historian. 路径为:Android Developers > Docs > 指南 > Best practies > Performance > Optimize for batter…
前言 Android 开发者官网中对systrace(Android System Trace)有专门的介绍,本篇文章作为systrace系列的开头,笔者先不做任何介绍,仅仅翻译一下官网的介绍.在后续的文章中再整理一份学习教程,以及笔者的实践经历.官网中对该工具的介绍文档路径为[https://developer.android.google.cn/studio/command-line/systrace?hl=en#java].或者在进入到官网的首页后,按照Android Developers…
问题导读: 1.不同的安装方式,卸载方法存在什么区别?2.不同的操作系统,卸载 Cloudera Manager Server and 数据库有什么区别? 重新安装不完整如果你来到这里,因为你的安装没有完成(例如,如果它是由一个虚拟机超时中断),和你想继续安装,然后重新安装,做到以下几点:删除文件和目录: 个人建议:这一步虽然是官网这么做,但是下面命令还是不要执行,因为我们后面还会用到下面命令 /usr/share/cmf/uninstall-cloudera-manager.sh 复制代码 当…
近期在复习之前的笔记,在回想MonkeyRunner时看了看google官网的内容,写得不错.就翻译出来分享下.事实上google官网真是一个学习的好地方. 基础知识 MonkeyRunner工具提供了一个API用于在Android代码之外控制Android设备和模拟器.通过MonkeyRunner.您能够写出一个Python程序去安装一个Android应用程序或測试包.执行它,向它发送模拟击键.截取它的用户界面图片.并将截图存储于工作站上.monkeyrunner工具的主要设计目的是用于測试功…
1.Knockout.Js官网学习(简介) 2.Knockout.Js官网学习(监控属性Observables) Knockout.Js官网学习(数组observable) 3.Knockout.Js官网学习(visible绑定) Knockout.Js官网学习(text绑定) Knockout.Js官网学习(html绑定.css绑定) Knockout.Js官网学习(style绑定.attr绑定) 4.Knockout.Js官网学习(click绑定) Knockout.Js官网学习(event…
Knockout 新版应用开发教程之创建view models与监控属性 章节导航 最近抽出点时间研究MVVM,包括司徒正美的avalon,google的angular,以及Knockout,博客园Tom的Knockout指南 时隔2年了,ko更新了不少,所以文档也相应的变化了,所以本人从学习的角度就翻译下官方的新的教程文章. avalon就是从KO演变过来的,不过加入ng,emberjs等框架的特色,加入许多巧妙的设计,算是很短小精悍的框架了,大家有兴趣可以对比下. Knockout是构建在3…
Centos7的Docker安装 需要一个维护版本的centos7,所以6不行. 卸载旧版本 旧版本的docker被称为 docker or docker-engine 如果存在请删除它们. sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate\ docker-logrotate \ docker-engine…
魔术堆栈 uvloop:快速的Python网络连接 作者Yury Selivanov @ 1st1 2016年5月3日 TL; DR asyncio是Python标准库附带的异步I / O框架.在此博客文章中,我们介绍uvloop:asyncio事件循环的完整替代品.uvloop用Cython编写,并建立在libuv之上. uvloop使asyncio更快.实际上,它至少比nodejs,gevent和任何其他Python异步框架快2倍.基于uvloop的asyncio的性能接近Go程序. 异步和…
这一教程中你将会体验到一些用knockout.js和Model-View-ViewModel(MVVM)模式去创建一个Web UI的基础方式. 将学会如何用views(视图)和declarative bindings(声明的绑定信息)去定义一个UI的展现方式,它的数据和行为使用的ViewModels(视图模型)和observables(观测),以及如何一切自动保持同步得益于Knockout的依赖跟踪(甚至数据的任意级联链). 本章目录: 1) 在视图中使用绑定 2) 使数据可进行编辑 3) 定义…
索引>查询>处理文档关联 处理文档关联 RavenDB坚持的一个设计原则就是文档是独立的,这就是说处理一个文档所需的所有数据都存储在文档本身之中.然而,这不是说对象之间不应存在联系. 在许多场景下我们都需要定义对象之间的关系.一般来说,我们主要面临一个主要问题:什么时候加载被包含的实体,我们打算由关联实体加载数据(除非我们对这些数据不感兴趣).将实体关联的所有对象都存储在一个文档中的方式看起来成本很低,但其实这样做在数据库资源和网络流量方面成本很高. RavenDB提供三种优雅的方式来解决这个…
1.1 IntroductionKafka is a distributed streaming platform. What exactly does that mean?kafka是一个分布式的流式平台,它到底是什么意思? We think of a streaming platform as having three key capabilities:我们认为流式平台有以下三个主要的功能: It let's you publish and subscribe to streams of r…
Canvas画布 The Canvas is the area that all UI elements should be inside. The Canvas is a Game Object with a Canvas component on it, and all UI elements must be children of such a Canvas.Canvas是一个应该包含所有UI元素的区域.画布是一个带有画布组件的游戏物体,并且所有的UI元素都应该是这个画布的子物体. Cre…
Develop API Guides 连接 蓝牙 本文内容 基础知识 蓝牙权限 设置蓝牙 查找设备 查询配对的设备 发现设备 连接设备 连接为服务器 连接为客户端 管理连接 使用配置文件 供应商特定的 AT 命令 健康设备配置文件 关键类 BluetoothAdapter BluetoothDevice BluetoothSocket BluetoothServerSocket 相关示例 蓝牙聊天 蓝牙 HDP(健康设备配置文件) Android 平台包含蓝牙网络堆栈支持,凭借此项支持,设备能以…
Paths中的几个重要元素 Points void CGContextMoveToPoint (    CGContextRef c,    CGFloat x,    CGFloat y ); 指定一个点成为current point Quartz会跟踪current point一般执行完一个相关函数后,current point都会相应的改变.   Lines 相关的几个函数 void CGContextAddLineToPoint (    CGContextRef c,    CGFlo…
转载自:https://www.nginx.com/resources/wiki/start/topics/tutorials/install/ 二进制版本预包装的Linux和BSD大多数Linux发行版和BSD变种在通常的包库中包含nginx,并且它们可以通过通常用于安装软件的任何方法安装(如在Debian上apt-get,Gentoo的emerge,FreeBSD的ports等).要知道,这些包通常是有点过时.如果你想要最新的功能和bug修正,建议建立从源或使用包直接从nginx.org.…
前言 转载请声明,转自[https://www.cnblogs.com/andy-songwei/p/10823372.html],谢谢! Android性能优化无疑是Android中的一个重点,也是一个难点.之所以说是重点,是因为无论在面试中还是工作中,都是“备受青睐”的:从笔者面试经验来看,面试官对性能相关的问题是乐此不疲:从工作经验来看,越是大厂,越是对代码质量苛刻,基本功能完成后,都需要对性能做一定的把控.之所以说是难点,是因为工作中性能优化的任务往往都是由经验比较丰富的工程师或者架构师…
安装Inno Setup篇 1.搜索Inno Setup 2.下载Inno Setup 3.选择下载最新 innosetup-5.5.9-unicode.exe 版本(innosetup-5.5.9.exe同样支持中文安装向导) 4.安装Inno Setup:选择安装语言(没有中文选项) 5.安装Inno Setup:同意协议 6.安装Inno Setup:安装路径 7.安装Inno Setup:安装Preprocessor 8.安装Inno Setup:创建桌面快捷方式 9.安装Inno Se…
公司之前一直用的Web前台框架是Knockout,我们通常直接叫ko,有看过汤姆大叔的KO系列,也有在用,发现有时候用得不太顺手.本人是会WPF的,所以MVVM也是比较熟悉的,学ko也是很快就把汤姆大叔的文章系列看完了,但是ko有时候会有意想不到的问题,同事也有这样的反应,所以就度娘了一下.就找到了AngularJS和KO的对比文章<從Knockout到AngularJS>,看了之后不明觉厉.其实早在AngularJS刚刚问世的那年,因为我订阅了博友--梦想天空(山边小溪)的博客(这里得特别感…
这是Nginx官网写的一个系列,共七篇文章,如下 Introduction to Microservices (this article) Building Microservices: Using an API Gateway Building Microservices: Inter-Process Communication in a Microservices Architecture Service Discovery in a Microservices Architecture E…
前言 这是 React 系列教程的第一篇,我们将用 React 实现 Animate.css 官网的效果.对于 Animate.css 官网效果是一个非常简单的例子,原代码使用 jQuery 编写,就是添加类与删除类的操作.这对于学习 React 来说是一个非常典型且简单的示例.但是我并不会在教程中介绍相关的前置知识,比如 JSX.ES6 等,对于小白来说还是会有一些困惑的地方,所以可能还要了解一下 React 相关的基础知识.虽然 React 有很多值得深究的知识,但这个系列教程主要以浅显易懂…
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5050768.html 翻译自 Android Developer 官网:http://developer.android.com/tools/help/monkeyrunner_concepts.html monkeyrunner monkeyrunner工具提供了一套API,在不通过Android代码的情况下编写程序来控制一个Android设备或者模拟器.使…
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5049041.html 翻译自 Android Developer 官网:http://developer.android.com/tools/help/monkey.html UI/Application Exerciser Monkey Monkey是一个程序,它会运行在你的模拟器或者设备上并且会产生伪随机的用户事件流,比如点击.触摸或手势,以及大量的系统级…
1 环境搭建: 1)下载 从链接:http://sourceforge.net/projects/htmlunit/files/htmlunit/ 下载最新的bin文件 2)关于bin文件 里面主要包含两部分,一是lib目录下的.jar文件,还有就是apidocs目录下的帮助文件(即API说明文件,打开index-all.html,是以网页形式提供) 3)配置java的CLASSPATH(纯手工方法) 将lib目录下的所有.jar文件复制到任意目录(如:c:\htmlunit\lib\) 然后右…
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5048524.html 翻译自 Android Developer 官网:http://developer.android.com/tools/testing-support-library/index.html Testing Support Library Android Testing Support Library为Android app的测试提供了一个…
翻译来自官网:http://revealapp.com/blog/reveal-common-tips-cn.html 以下基于Reveal 1.6. 用于快速上手的内置应用 刚刚下载Reveal,啥都还没配置呢,想先随便玩玩看,怎么办? 我们花了不少时间开发这个复杂程度类似与实际场景的Sample应用──Soundstagram(音频分享版的Instagram, ¯\_(ツ)_/¯),就是为了让大家能最快速地上手Reveal,尝试它的各种强大功能. 在 Help 菜单项中,点击 Inspect…