自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 环回接口( loopback )-127.0.0.1 VS 192.168.0.5 VS 0.0.0.0, 服务器套接字(server socket)如何选择绑定哪个IP?

loopback 是什么东东?本地环回接口(或地址),亦称回送地址(loopback address)。此类接口是应用最为广泛的一种虚接口,几乎在每台路由器上都会使用。参考《working with TCP sockets》loopback 介绍IP地址并不总是必须指向远程主机。特别是在开发中你经常想要连接到你本地主机上的套接字(sockets)。大多数系统定义了一个环回接口(loopback in

2016-04-29 20:13:10 4970

原创 如何从零开始学习Ruby

小白阶段以我的切身经历和体会来看,比较好的路线应该是先看基础语法: 《Ruby基础教程》 当然,不需要全部看完,大概把前面11章和基本的类介绍看完,可以进入下一阶段。 耗时: 如果你学过其他编程语言,比如C或者Basic或者Java或者Python,那么这个阶段你应该只需要1周左右时间; 否则,最好花上2到3周。理论联系实际阶段当你稍微了解了ruby的基础知识时,便可以尝试做一个

2016-03-24 23:27:22 4524 2

原创 RubyOnRails程序员两年工作经验总结

题记总觉得应该在必要的时候对自己进行必要的反思和总结。个人背景2010年,化学竞赛加选拔考试,保送清华化学专业。 2011年,条件允许,转到了电子工程系。 2014年,清华本科毕业,专业:“电子信息科学与技术”。然后加入了一家不算小的创业公司(当时就有几百人,在成都和长沙有分公司)–“团800”(现在由于业务重点转移,已改称“折800”)。 2016年4月,辞职,准备去深圳。如何做好一个程序员

2016-03-24 22:17:44 876 2

原创 Ruby魅力之旅

Ruby魅力之旅迷路的“Hello World”#!/usr/bin/env ruby$methods = []def method_missing m, *args, &block $methods.unshift m.to_sendat_exit do puts $methods.map(&:capitalize).join(' ')endhello world密码生成器# 大小

2017-09-23 13:11:37 450

原创 Ruby简介

Ruby是一门开源的动态编程语言,注重简洁和效率。Ruby 的句法优雅,读起来自然,写起来舒适。Ruby是一门完全的面向对象的解释型语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp 语言。因为Perl发音与6月诞生石pearl(珍珠)相同,因此Ruby以7月诞生石ruby(红宝

2017-09-09 12:33:11 1280

原创 Linux系统入门学习书籍

http://linuxtools-rst.readthedocs.io/zh_CN/latest/base/index.htmlhttps://book.douban.com/subject/2208530/

2016-07-09 14:41:26 1110

原创 mongoid--查询的注意事项

mongoid查询方法简介mongoid是ruby版本的mongoldb-driver.mongoid实现的查询方法和active record极其类似,所以对于rails用户来说是很友好的。例如:class Band include Mongoid::Document field :name field :foundedendBand.where(name: "Depeche Mode

2016-04-29 19:35:38 1976

原创 mongoid--2d索引简介(index)

mongoid中的2d索引简介mongoid是mongoldb的ruby版本driver。 最近使用mongoid时发现文档不太详细,使用2d索引时查询源码才找到一些方法的用法,分享一下。2d索引是对于经度和纬度建立索引,mongodb内部做了一些处理,可以方便的进行查询。mongoldb对于2d索引的介绍: https://docs.mongodb.org/manual/core/2d/mon

2016-04-29 19:22:34 1049

原创 Ruby On Rails--Action View Form Helpers(页面表单帮助方法)

Action View Form Helpers 知识总览官方文档基础Form表单的Helper方法form_tag方法及其选项:method:controller:action:class, :style, :id, …label_tagtext_field_tag, text_area_tagsubmit_tagcheck_box_tagradio_button_tagpas

2016-04-07 17:15:37 901

原创 Ruby On Rails--Layouts and Rendering in Rails(布局和页面渲染)

Layouts and Rendering in Rails 知识总览官方文档同一个action中,render和redirect_to不能同时调用,也不能重复调用任意一个。Rails默认renderrenderan Action’s View:nothing:file:action:template:plain:html:json:js:xml:content_type

2016-04-07 17:14:24 630

原创 Ruby On Rails--Action Controller(控制器)

Action Controller知识总览Action Controller Overview Action Controller is the C in MVC. After routing has determined which controller to use for a request, your controller is responsible for making sense

2016-04-07 17:12:18 3570

原创 Ruby On Rails--Active Record Query Interface(数据库查询)

Active Record will perform queries on the database for you and is compatible with most database systems (MySQL, PostgreSQL and SQLite to name a few).Active Record Query Interface知识总览官方文档从数据库检索对象查询方法b

2016-04-07 17:10:19 574

原创 Ruby On Rails--Active Record Validations(校验)

Validations are used to ensure that only valid data is saved into your database.Active Record Validations知识总览官方文档什么是validatevalidate发生在什么地方绕过校验 validate: false校验是如何触发的?校验的几种形式 validates_XXX_of,

2016-04-07 17:08:47 717

原创 Ruby On Rails--Active Record Migrations(数据库迁移)

Migrations are a convenient way to alter your database schema over time in a consistent and easy way. Active Record Migrations知识总览官方文档如何用Rails的命令创建migrationRails和数据库对应的基本的类型有哪些创建表添加索引(唯一性索引,联合索引等)

2016-04-07 17:07:06 751

原创 Ruby On Rails--Active Record Associations(关联关系)

Why do we need associations between models? Because they make common operations simpler and easier in your code.Active Record Associations知识总览官方文档为什么使用Associations ?Associations的类型belongs_tohas_one

2016-04-07 17:04:19 542

翻译 版本控制最佳实践

提交相关的改动常提交不要提交只完成了一半的工作在你提交前先测试代码书写良好的提交信息版本控制不是一个备份系统使用分支保持一致的工作流程帮助和文档在命令行获取帮助$ git help <command>免费的在线资源http://www.git-tower.com/learn http://rogerdudler.github.io/git-guide/ http://www.git-scm.or

2016-04-07 17:01:37 319

原创 Ruby On Rails--Active Record Callbacks(回调)

Callbacks allow you to trigger logic before or after an alteration of an object’s state’.Active Record Callbacks知识总览官方文档对象的生命周期什么是Callbacks如何使用Callbacks有哪些可用的Callbacks创建对象时被调用 before_validationafte

2016-04-07 16:30:20 937

翻译 Ruby最佳实践--不要rescue Exception,rescue StandardError

重构前显式地捕获Exception将会捕获甚至会捕获非正常可修复的错误比如SyntaxError, LoadError, and Interrupt。begin foorescue Exception => e logger.warn "Unable to foo, will ignore: #{e}" end重构如果你省略Exception类型标志,那么Ruby会只捕获Standard

2016-04-07 14:31:52 1691

翻译 GIT 常用命令大全及其说明

创建克隆一个已经存在的仓库$ git clone ssh://[email protected]/repo.git创建一个新的本地仓库$ git init本地变化查看你的工作目录下被改动过的文件$ git status查看和被追踪文件对比有哪些变化(即当前文件和被追踪文件的不同)$ git diff将所有现在的改动添加到下一次提交中$ git add .将 file 中的一些改

2016-04-06 18:04:09 612

原创 Linux常用基础命令

Linux常用基础命令列表lshistorysu/sudomkdir/rmdirtouchchmodchownapt-get/apt-cache,tardatecatcpmvpwdcdgrepman,ps aux|grepkill/pkillwhereisaliasdf/durm echodiffwgetifconfignetstattop

2016-04-06 17:56:45 404

原创 Ruby On Rails--rake 任务中定义方法的陷阱

问题描述在rails项目中,有时候需要导出数据、处理历史数据等,这时用rake是很方便的。在rake中,有时候由于逻辑比较复杂,所以我们就会分离逻辑或者需要重用代码,这时候可能会定义方法。但是,在rake中定义方法有一个问题:在不同rake文件和不同命名空间下定义的方法,如果存在了同名方法,那么后来定义的方法会覆盖掉之前定义的方法,这时候可能会导致bug。下面我们用一个例子来具体说明下: 比如有个

2016-04-06 17:35:48 1303

原创 Ruby--加载文件--require和require_relative

requirerequire(name) → true or falserequire加载指定的文件,如果加载成功则返回true,如果已经加载过则返回 false。如果文件名解析出来不是一个绝对路径,它将会在 $LOAD_PATH(即 $:) 列出的目录中被查找。如果文件名中含有扩展名 “.rb”,那么它将会作为一个源文件被加载; 如果扩展名是”.so”,”.o” , 或者 “.dll”,或者在当

2016-04-01 08:58:52 6964

原创 Ruby--如何处理csv文件?

csv文件简介ruby如何处理csv文件1,ruby有一个标准库用于处理csv文件,在代码中引入即可: require ‘csv’2,写csv文件的2个方法 CSV.open(“path/to/file.csv”, “wb”) do |csv| csv << [“row”, “of”, “CSV”, “data”] csv << [“another”, “row”] # …

2016-03-31 19:00:37 4300 1

翻译 Ruby官方文档翻译(Ruby官方文档中文版)

说明本文试图翻译Ruby官方文档,ruby版本:2.3.0,官方文档参考:http://ruby-doc.org/core-2.3.0/。进度1,Object类正文约定object 对象 class 类 module 模块 mix in 混入Object 类原文http://ruby-doc.org/core-2.3.0/Object.html译文Object是所有Ruby对象的默

2016-03-27 21:50:34 2688

转载 程序员应该常去的网站(转载)

转载自: http://mp.weixin.qq.com/s?__biz=MjM5ODUzMDYzMg==&mid=200934429&idx=5&sn=f913f80c6a97862eb3d50ad8cea09e43&scene=2&from=timeline&isappinstalled=0#wechat_redirect1)编程练习和竞赛类http://www.codechef.com/ht

2016-03-24 21:59:36 419

原创 ubuntu-如何解决错误-Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/Release

ubuntu更新(sudo apt-get update)时, 出现错误: “Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/Release Unable to find expected entry ‘main/binary-i386/Packages’ in Release file (Wrong sour

2016-03-22 15:17:03 11630 1

原创 Redis学习小结

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-03-21 12:08:18 320 1

原创 用pry阅读ruby源码--以task方法为例

rails项目中有个目录 lib/tasks,里面定义了一个rake任务:task hello: :hello do puts “hello” end看到这里的时候,是不是可能会对 task 方法产生一些兴趣?可以在rails项目的Gemfile中加入 pry这个强大的工具,然后一步步找到这个task方法的本质。1,在task中加入断点: binding.pry2,断

2016-03-10 18:13:23 729

原创 Ruby学习材料

http://learnrubythehardway.org/book/intro.html

2016-03-10 15:03:38 462

原创 ECMAScript和JavaScript的关系

一个常见的问题是,ECMAScript和JavaScript到底是什么关系?要讲清楚这个问题,需要回顾历史。1996年11月,JavaScript的创造者Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这种语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript,这个版本就

2016-03-08 18:14:58 18548 2

原创 Javascript学习--ES6学习--Number.isInteger()方法

Number.isInteger()用来判断一个值是否为整数。需要注意的是,在JavaScript内部,整数和浮点数是同样的储存方法,所以3和3.0被视为同一个值。Number.isInteger(25) // trueNumber.isInteger(25.0) // trueNumber.isInteger(25.1) // falseNumber.isInteger("15") // f

2016-03-08 16:46:34 10202

原创 Ruby--Kernel#caller方法

用途: caller可以返回当前位置的调用者详细信息,异常的错误栈信息(Exception#bactrace)即通过该方法获得。caller([level])以$@的back trace(字符串数组)形式返回level层上(省略参数时为1)的调用者的信息。若是顶层的话就返回空数组。将caller的返回值代入$@就可以设定异常的发生位置。示例: def foo p caller(

2016-03-04 10:02:14 823

原创 MySQL优化建议

1、检查sql是否可以优化 避免使用子查询,使用join代替 减少排序 优化索引 增加查询 条件 减少返回的数据量 避免使用较大值的limit offset 是否可以把SQL拆成多条提升效率2、是否可以减少SQL的执行频率 是否可以加缓存 是否可以走solr 是否可以走redis 是否可以走es3、是否可以通过 sharding增加效率 4、是否可以通过

2016-03-03 19:48:45 419

原创 MySQL--BENCHMARK()函数

说明MySQL有一个内置的BENCHMARK()函数,可以测试某些特定操作的执行速度。 参数可以是需要执行的次数和表达式。 表达式可以是任何的标量表达式,比如返回值是标量的子查询或者函数。请注意:该函数只是简单地返回服务器执行表达式的时间,而不会涉及分析和优化的开销。该函数可以很方便地测试某些特定操作的性能,比如通过测试可以发现,MD5()比SHA1()函数要快:试验结果mysql> SET @

2016-03-03 19:45:46 5768

转载 最简版QQ~~牛逼的Linux Netcat 命令

牛逼的Linux Netcat 命令聊天工具~~简易版QQ~~Chat Server假如你想和你的朋友聊聊,有很多的软件和信息服务可以供你使用。但是,如果你没有这么奢侈的配置,比如你在计算机实验室,所有的对外的连接都是被限制的,你怎样和整天坐在隔壁房间的朋友沟通那?不要郁闷了,netcat提供了这样一种方法,你只需要创建一个Chat服务器,一个预先确定好的端口,这样子他就可以联系到你了。Server

2016-03-03 19:21:45 1301

原创 Ruby知识概要

Ruby基础知识ruby安装,使用irb;数字,字符串,数组,哈希,区间,正则表达式等的基本用法;流程控制:表达式,赋值,条件语句,循环;迭代器,block,变量作用域;方法定义和调用;文件读写;类和对象:继承,对象和属性,实例方法,类方法,访问控制;模块:命名空间,included,组合模块。异常处理:捕获和抛出;线程和进程;单元测试;Ruby和Web;Ruby安全;Ru

2015-10-18 23:58:47 447

原创 Ruby基础知识梳理

了解ruby,安装ruby和使用irb关于ruby(解释型语言),执行ruby文件Ruby基础知识常用基本概念和方法puts, p单引号”和双引号”“, 字符串嵌入,“#{abc}”数值表示和计算注释运算符及优先级对象、变量和常量Ruby中一切皆对象弱变量类型,局部变量,全局变量,实例变量,类变量常量/变量命名规范,保留字多重赋值,交换变量值,获取数组元素条件判断真假值,逻辑

2015-10-18 23:55:51 1002

原创 《深入理解计算机系统》学习笔记--001

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-10-18 22:48:38 609

信息显示技术

信息显示技术 清华 .通过这个文档,你可以获得一个对信息显示技术和数字图像的大致了解,考虑自己是否兴趣所在。

2013-07-02

计算机网络课程实验

计算机网络方面实验的一些经验之谈。涉及内容有点杂。希望能够对你有所帮助。

2011-11-29

数据算法 求勾股数 效率

求勾股数的高效方法,避免三重循环,时间复杂度大大降低。当然,如果再其中应用一下快排函数sort()能够更快地实现。思想不难,代码清晰。

2011-11-29

C++ 链表类模板 清华大牛精心编写

由清华大学大牛写成的C++模板类,值得学习借鉴。链表可能是一种相对比较难于掌握的数据结构,或许这个文件能够帮助你更好地理解和使用链表。希望能够对你有所帮助。

2011-11-29

清华大学 C++课程大作业

清华大学C++ 课程的大作业,设计一个ATM程序,为此最好是先自学一下MFC,绝对是经典之作。。。请欣赏!

2011-11-29

向上取整和向下取整函数 C

C++中的两个取整函数,一个ceil和一个floor,很有用的。尤其在涉及到整数和边界问题的处理时,比起自己去编写要方便很多。

2011-11-29

C++类型转换总结

各种类型转换小结,学C++的话通常会用到的。有些转换一旦应用,能够为你的程序省去不少麻烦,让你全神贯注解决主要问题。

2011-11-29

数据算法 二叉树代码

清华大学 计算机系 数据算法 二叉树 。。。二叉搜索树的费递归实现,包括树构建,树删除,复制(深拷贝),插入,中序遍历和层序遍历等等。希望能够提供帮助。

2011-11-29

清华大学教授的编程之道

这是清华大学电子系著名老师的精彩编程指导,一定不容错过!!!也许你很会写代码了,但是你不知道也许你的有些习惯可能导致致命的错误。看看这个吧,让你更加深刻地认识编程。上升到艺术的高度!

2011-11-29

清华大学物理竞赛试题 含电磁学力学等

清华大学物理试题,让你更好的领略物理学科的魅力。想知道清华人怎么学习物理吗?那就看看这个吧。

2011-11-29

清华大学程序课程C语言代码

清华大学计算机系程序设计课程的精彩代码,帮助你答疑解惑。其中大概涉及到二十几个具体的C语言程序,能够帮助你自学,指导你更好的学习C++。

2011-11-29

string类的代码

C++ 类的构造实例.你可以通过这个类的实例了解类的构造的基本方法,也能够看到C++中string类是怎么写的。

2011-11-29

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除