Introduction
D3.js是Javascript中的一个利用Html5的SVG的图形库,主要用于数据可视化。用他画出来的网页的确是狂拽炫酷吊炸天,但是如果浏览器很差的话,或者计算机性能很差,或者数据计算量很大的话,会卡到死。
D3总体来说还是不错的,内置了jQuery语法,熟悉选择器的话,这个库上手很快。
但是,这个库要求有很好的HTML5基础,特别是SVG标签的用法。
D3.js是Javascript中的一个利用Html5的SVG的图形库,主要用于数据可视化。用他画出来的网页的确是狂拽炫酷吊炸天,但是如果浏览器很差的话,或者计算机性能很差,或者数据计算量很大的话,会卡到死。
D3总体来说还是不错的,内置了jQuery语法,熟悉选择器的话,这个库上手很快。
但是,这个库要求有很好的HTML5基础,特别是SVG标签的用法。
Toronto的R语言作业,和Toronto的其他作业一样,属于难度不高,但是细心度要求非常高,稍有不慎就会丢分。另外规矩也是一大堆,comment/docs/coding style什么的仅仅是最基本的要求而已。
一共写6个函数,运行后需要画10张图,然后找其中最优的欧氏距离。
调试方面,R语言还是比较方便的,打印变量、画图等,不过相对的,由于没有方便的IDE支持,编程速度相比C/C++,Java,Python倒是慢了不少。
Web的裸写大作业,做一个Cinemas,包括Image Gallery,Movies Selection,Movies Reservation,Shopping Cart等等功能页面,简单粗暴耗时,做了整整两天。30个得分点,每个一分,再加上bonus那滋味真是酸爽。
Nameless pipes可以做很多事情,比如在父子进程中,通过nameless pipes进行父子进程的通信。结合Unix的系统工具,甚至可以将输入输出流通过fd传给子进程。下面的作业便是通过nameless pipes将数据传递给Unix的sort和grep工具。
Normal From是数据库理论里面最恶心的问题,从1NF到6NF,加上BCNF,DKNF以及UF。不像编程作业,有运行结果作参考,做这种理论题简直是受罪,每一题都得反复推理。
像下面给出的这个作业,除了题量大以外,每个问题都是多解问题,拿满分几乎是不可能的事情。
在PHP设计模式(七):设计模式分类中我们提到过结构设计模式(Structural patterns),结构设计模式专注于设计对象(Object)和实例(Instance)的构建、组合过程。
结构设计模式包括下面七种设计模式:
请无视拗口的中文翻译。结构设计模式着重于低耦合、高复用、高可维护性、高拓展性的设计原则。
在PHP设计模式(八):工厂模式中我们介绍了创建设计模式(Creation patterns)中的工厂模式,下面我们将介绍另一种原型设计模式(Prototype Method)。
在PHP中,原型设计模式依靠cloning复制对象来实现。通过cloning构造的对象,将大量节省新对象的构造时间。
在PHP设计模式(七):设计模式分类中我们提到过创建设计模式(Creation patterns),创建设计模式专注于设计对象(Object)和实例(Instance)的创建过程。
创建设计模式包括下面五种设计模式:
当程序逐渐扩展的时候,需要更多的新对象,新对象的创建不应该依赖于创建者,换句话说,新对象的创建过程,不应该依赖调用创建函数的对象。为了减少冗余,增加拓展性,工厂模式就是一种创建新对象时使用的设计模式。