web开发中应该知道的一些概念
ruby是什么?
//Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。
性质简介
Ruby 是开源的,在Web 上免费提供,但需要一个许可证。[1]
Ruby 是一种通用的、解释的编程语言。
Ruby 是一种真正的面向对象编程语言。
Ruby 是一种类似于 Python 和 Perl 的服务器端脚本语言。
Ruby 可以用来编写通用网关接口(CGI)脚本。
Ruby 可以被嵌入到超文本标记语言(HTML)。
Ruby 语法简单,这使得新的开发人员能够快速轻松地学习 Ruby。
Ruby 与 C++ 和 Perl 等许多编程语言有着类似的语法。
Ruby 可扩展性强,用 Ruby 编写的大程序易于维护。
Ruby 可用于开发的 Internet 和 Intranet 应用程序。
Ruby 可以安装在 Windows 和 POSIX 环境中。
Ruby 支持许多 GUI 工具,比如 Tcl/Tk、GTK 和 OpenGL。
Ruby 可以很容易地连接到 DB2、MySQL、Oracle 和 Sybase。
Ruby 有丰富的内置函数,可以直接在 Ruby 脚本中使用。
rvm是什么?
Ruby Version Manager,RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.
翻译:RVM是一个命令行工具,你可以很容易的安装,管理,和译员多Ruby环境工作组的宝石。
看了一些资料,我总结rvm就是一个为了方便而开发的管理不同的ruby虚拟机的工具。
Gem是什么?
gem是一种rubygems命令,也可表示某个ruby软件包,ruby gems 是用于ruby程序和程序库的一套打包系统,它让开发人员可以把自己的ruby程序库打包成一种易于维护和安装的形式。ruby gems 对应的gem命令是用来安装ruby世界的第三方软件包。
Gemset是什么?
Gem集合(gemsets)gemset可以理解为是一个独立的虚拟gem环境,每一个gemset都是相互独立的。比如你有两个项目,一个是rails 2.3 一个是 rails 3. gemset可以帮你便捷的建立两套gem开发环境,并且方便的切换。gemset是附加在ruby语言版本下面的,例如你用了1.9.2, 建立了一个叫rails3的gemset,当切换到1.8.7的时候,rails3这个gemset并不存在。
Bundle是什么?
bundle格式的文件是Unix/linux系统中的一种可执行文件。用户可以在终端中使用./***(文件名).bundle命令使其运行。必要时需要使用sudo执行以提供超级用户权限,并且需要提供管理员密码。
在android中bundle是一种传递参数的类。用于Android的Activity之间传递数据
bundler是什么?
bundler主要用于管理Ruby应用程序的依赖关系,并按照此依赖关系安装所需的Gems。当运行bundle install命令来安装Gems时,bundler会使用当前目录下的名为Gemfile的文件来处理依赖关系。
Gemfile是什么?
貌似是一个装gem文件的目录
我们的应用为什么可以跑在android上?
默认的情况下,每个应用都运行在自己的Linux进程里。当应用代码需要执行的时候,Andorid将会启动这个进程;不需要的时候就结束这个进程,然后释放其他应用需要的资源。
每个进程都有自己的java虚拟机,所以每个应用之间都是隔离运行的。默认情况下,每个应用都会分配一个唯一的Linux用户ID。同时赋予用户权限,于是应用文件对用户就是可见的了,但是仅限于自己的应用。当然也有办法把他们导入其他应用中。两个应用共享一个用户是可以,这种情况下,两个应用就可以互相访问其文件,可以节省一些系统资源,两个应用共享一个ID也意味着可以两个应用在一个Linux进程里运行,并共享虚拟机。
我们的html页面怎么跑在android上?
我们的html页面是怎么发短信的,背后的机制是什么?
haml是什么?
Haml是一种用来描述任何XHTML web document的标记语言,它是干净,简单的。而且也不用内嵌代码。Haml的职能就是替代那些内嵌代码的page page templating systems,比如PHP,ERB(Rails的模板系统),ASP。不过,haml避免了直接coding XHTML到模板,因为它实际上是一个xhtml的抽象描述,内部使用一些code来生成动态内容。Haml 是一种简洁优美的模板语言,可以应用于Ruby on Rails、 PHP等Web开发平台,可以大大缩减模板代码,减少冗余,提高可读性。并且Haml是一种完备的模板语言,没有牺牲当前模板语言的任何特性。
css,js,html之间的关系
js的加载顺序是什么?
页面上的Javascript代码是HTML文档的一部分,所以Javascript在页面装载时执行的顺序就是其引入标记<script />的出现顺序,
<script />标记里面的或者通过src引入的外部JS,都是按照其语句出现的顺序执行,而且执行过程是文档装载的一部分。
JSON是什么?
JSON(JavaScript Object Notation,javascript对象表示法) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。
MVC框架是什么?
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
commit是什么?
COMMIT命令用于把事务所做的修改保存到数据库,它把上一个COMMIT或ROLLBACK命令之后的全部事务都保存到数据库。
commit comments是什么?
Comment 对象表示文档中注释节点的内容。
Comment 节点表示 HTML 或 XML 文档中的注释。
使用由 CharacterData 接口继承的 data 属性,或使用由 Node 接口继承的 nodeValue 属性,可以访问注释的内容。(即 <!-- 和 --> 之间的文本)。使用由CharacterData接口继承的各种方法可以操作注释的内容。
push是什么?
堆栈操作指令,实现压入操作的指令是PUSH指令;实现弹出操作的指令是POP指令.
提交流程是什么?用命令行怎么做?添加,修改,删除分别怎么处理?
branch是什么?
网络服务
git repository是什么?
repo为git工具的仓储,就是一个git工具的文件夹。。。并且里边有.git/的子目录
repo也是google为android开发的一套专门用来操作android代码的工具,通过manifest文件来批量下载git仓储(repo)及仓储内的代码,因为一套android代码中有上百的git仓储