源码解析-knockout源码准备
准备包括心理和资源两方面。
心理
我看过一句话说,当你用一个框架时,不要忙着看一遍使用教程就开始写项目,先去看看框架原理。
这句话我深以为然。现今前端快速发展,很多前端攻城狮都很茫然:框架更新太快了,各种新技术日新月异,这个还没学会下个就出来了,一直在疲于奔命。这也是我决定学习基础原理的初衷。所有的字都是由横竖撇捺写成,最基础的招式练精了也能成为一霸。
你想象一下,三年以后,当你的其他前端小伙伴在说自己熟练使用这个框架,熟悉那个框架时,你能说,你研究过哪些框架的源码,了解了哪些底层知识,懂前端框架的架构,甚至能自己根据需求编写一个新框架。这是一件多么爽的事情?如果你想要成为后者的话,那么你就要从现在做起,一点一点积累,不只是努力程度在决定着你的成功与否,方向也尤为重要。
所以要从现在做起,多学习设计模式,数据结构算法,框架等。他们或许对你的熟练无用,但是对你的提升影响是巨大的。希望我和你都能有这种追求卓越,深入钻研的品质。
准备
千里之行始于足下,方法总比困难多。我今天想分享的是如何下载框架源码的早期版本。
我用的是sourcetree,git的可视化操作软件,感觉挺方便的。这里就说一下sourcetree的方法吧,git的话也有相关命令相对应。
1.打开页面,输入github,在github官网中搜索“knockout(或其他感兴趣的框架名)”,选择搜索结果第一个点进去,点击如下图所示的Clone or download,然后单击地址后面的图标按钮,它会提示你复制成功
2.打开sourcetree,点击左上角的克隆/新建,在弹出框中的URL处粘贴你获取的地址,在目标路径中选择希望的保存路径,点击克隆
3.成功之后双击左边的信息,右面会有相应的分支信息。
4.拖到最下方,大概在2013年份,选择一个你希望开始的版本,然后右击->检出->确定,这是你的文件夹里的就是你选择的早期版本啦!
今天的内容就是这样啦,我也在努力呢,要跟住哦。
源码解析-knockout源码准备的更多相关文章
- 《Flink 源码解析》—— 源码编译运行
更新一篇知识星球里面的源码分析文章,去年写的,周末自己录了个视频,大家看下效果好吗?如果好的话,后面补录发在知识星球里面的其他源码解析文章. 前言 之前自己本地 clone 了 Flink 的源码,编 ...
- spring源码解析——spring源码导入eclipse
一.前言 众所周知,spring的强大之处.几乎所有的企业级开发中,都使用了spring了.在日常的开发中,我们是否只知道spring的配置,以及简单的使用场景.对其实现的代码没有进行深入的了 ...
- 微信小程序扫码解析小程序码
通过微信扫小程序码,跳转到应用小程序内, 如何解析小程序码的参数呢? 一般小程序码会跳转到设置的页面,如首页, 可以直接跳转到小程序首页,然后解析小程序携带的参数,再打开某个页面. (小程序码的路径要 ...
- MIT 2012分布式课程基础源码解析一-源码概述
课程主页 课程介绍:本课程会在给出的源码的基础上要求完成8个lab Lab overviewLab 1 - Lock ServerLab 2 - Basic File ServerLab 3 - MK ...
- 『Python』源码解析_源码文件介绍
本篇代码针对2.X版本,与3.X版本细节不尽相同,由于两者架构差别不大加之本人能力有限,所以就使用2.X体验python的底层原理了. 一.主要文件夹内容 Include :该目录下包含了Python ...
- 开源项目源码解析-PhotoView 源码解析
1. 功能介绍 特性(Features): 支持 Pinch 手势自由缩放. 支持双击放大/还原. 支持平滑滚动. 在滑动父控件下能够运行良好.(例如:ViewPager) 支持基于 Matrix 变 ...
- [Bootstrap 源码解析]——bootstrap源码之初始化
bootstrap源码之初始化 我们先来分析normalize.less编译后的源码,我们知道normalize.css是一个专门将不同浏览器的默认css特性设置为统一效果的css库,它和reset. ...
- Java源码解析|String源码与常用方法
String源码与常用方法 1.栗子 代码: public class JavaStringClass { public static void main(String[] args) { Strin ...
- 源码解析 || ArrayList源码解析
前言 这篇文章的ArrayList源码是基于jdk1.8版本的源码,如果与前后版本的实现细节出现不一致的地方请自己多加注意.先上一个它的结构图 ArrayList作为一个集合工具,对于我而言它值得我们 ...
随机推荐
- HDU 1698 <线段树,区间set>
题目连接 题意: 一条长为N的铜链子,每个结点的价值为1.有两种修改,l,r,z; z=2:表示把[l,r]区间内链子改为银质,价值为2. z=3:表示把[l,r]区间内链子改为金质,价值为3. 思路 ...
- php下载文件的一种方式
<?php ob_start(); // $file_name="cookie.jpg"; $file_name="abc.jpg"; //用以解决中文不 ...
- db2导入表结构和表数据
http://www.cnblogs.com/kfarvid/archive/2010/12/15/1906776.html db2的博文 -bash-3.2$ db2 connect to ca ...
- XCode: duplicate symbol
XCode: duplicate symbol 2013-05-27 17:28:21| 分类: iOS|字号 订阅 遇到引用库重复定义的问题,需要解决. 项目需要,同时引用ZBar和Q ...
- ActiveMQ的配置与使用
1.什么是ActiveMQ MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来 ...
- nodejs实践-代码组织
nodejs实践-代码组织 laiqun@msn.cn Contents 1. 代码组织 1. 代码组织 更新版本 npm install -g n n latest 项目文件组织 MVC 前后端代码 ...
- acm的第一场比赛的总结
6.4-6.5号很激动的去湖南湘潭打了一场邀请赛,这是第一次acm的旅程吧.毕竟大一上册刚开始接触c,然后现在就能抱着学长的大腿(拖着学长的后腿)打比赛,也是有一点小小的激动. 第一天很早就起床了,由 ...
- 判断非法字符串的类方法,与jsp
private String_do_judge judge; if (judge.isContain(key)) { return "feifa"; } 上面这写代码添加到进入ac ...
- zf-关于分页必写的代码
1 存储过程 ALTER PROCEDURE [dbo].[getStatForXXGKWeb] ), ), ), @page int, -- 必写的 @pageRows int,-- 必写的 @al ...
- ZOJ 3696 Alien's Organ 概率论 泊松分布
看了好久的题,但还是看得一脸蒙圈,感觉完全无从下手,我的队友告诉我可能是正太分布之类的,但我感觉不太像,后来才听同学说是泊松分布,才恍然大悟,概率论刚刚学过这里不久,不禁感叹,学会了还要会用啊... ...