码迷,mamicode.com
首页 > 移动开发 > 详细

从Eclipse到Android Studio——改变了什么

时间:2015-08-27 16:50:10      阅读:292      评论:0      收藏:0      [点我收藏+]

标签:android   android studio   eclipse   

你永远都不知道未来要做什么?只能先把手头上的事情做好。

ps.我是老人家,刚接触Android Studio。已经会的就略过此文吧。

技术分享


好吧,我承认我是一个比较怀旧的人,Eclipse已经伴随着我走过了不知道多少年风雨岁月。突然叫我换掉,还是真有点舍不得。主要是AndroidStudio卡。

刚出Android Studio的那些天,小伙伴们问我,为什么我不用as?我的第一反应就是as?Action Script?其实,我们从上面的Logo看得出来,两者都叫Android Studio,只是前者基于Eclipse后者基于IntelliJ。

现在已经是Android Studio比较成熟的阶段了,由于Google的大力推广,笔者也开始步入了Eclipse转向Android Studio的艰难过程。(个人习惯很难改变啊)


布局文件可是换

工程结构目录

工程目录结构的改变,确实让我在一开始使用的时候摸不着头脑。连代码在哪里写都搞不清楚,libs库该添加在哪里也不好说。

Eclipsed
Eclipse把所有的Android项目资源都放到了一级目录下,而且是固定的。如下,就是一个Eclipse的常见App工程目录截图。
技术分享
这个我不做过多的说明了,估计大家都清楚。

Android Studio
Android Studio的目录结构,发生了变化,即把所有的代码、编译风格、AndroidManifest.xml资源都放置到了src目录下。如下图所示:
技术分享

很明显,Android Studio不再以代码的功能逻辑来做一级目录区分,而是以:

  • 构建模块(gradle)
  • 代码逻辑模块(src)
  • 第三方库模块(libs)
  • 编译输出模块(build)

构建的方式来作为区分。


Project -> Modules、Workspace -> Project

在Eclipse中,最常见的就是Workspace了,已进入就让你选择。如下图所示:
技术分享

我们再熟悉不过了,对于Eclipse来说,一个Workspace就是对应PC上的一个文件夹目录而已。其中可以保存我们的很多项目,已经我们在开发中对Eclipse的依赖关系和配置逻辑。


而在Android Studio中,没有什么Wordspace的概念,只有一个Project的概念,很像Xcode的方式。一个项目就是一个Project,里面有可能有一个或者多个工程。但是,每个工程都是和这个Project相关的。

这里所说的Project和Eclipse中的Project不一样

技术分享

Modules

Modules是Intellij提出来的一个新的概念,即“一种独立的功能单元,可以运行、测试并且独立调试”和Eclipse project的概念有点像,但有几点不同。

  • 每一个Module需要有属于自己的Gradle build
    file(当你新建一个Module时会自动帮你生成的,当你导入一个Eclipse的项目时需自己创建)。这些Gradle文件包含了一些很重要的内容,比如所支持的安卓版本和项目依赖的东西,以及安卓项目中其它重要的数据。
  • 和Eclipse上的一样,一些Modules可能是”Library Modules”,功能上与”Library projects”一样的。

Ant/Maven -> Gradle

  • Ant是最早的构建工具,基于idea,好象是2000年有的,当时是最流行java构建工具,不过它的XML脚本编写格式让XML文件特别大。对工程构建过程中的过程控制特别好。

    Gradle用groovy来做为build脚本,比xml要易读易用得多。用过ant的人都知道,要在ant里面表达一个if分支功能有多么的麻烦,不直观。由于gradle的build脚本就是groovy程序,所以做分支循环等非常方便自然。

  • Maven它是用来给Ant补坑的,Maven第一次支持了从网络上下载的功能,仍然采用xml作为配置文件格式,它的问题是不能很好的相同库文件的版本冲突。Maven专注的是依赖管理,构建神马的并不擅长。

  • Gradle属于结合以上两个的优点,它继承了Ant的灵活和Maven的生命周期管理,它最后被google作为了Android御用管理工具。它最大的*区别是不用XML作为配置文件格式,采用了DSL格式,使得脚本更加简洁。

快捷键的改变

比这个人觉得,这个才是我的重点痛点所在,习惯了Eclipse的各种快捷键各种插件之后。这里,我之前的习惯完全不适用了。

虽然官方说有强大的提示功能,但是,个人感觉,其实上,在Eclipse中装个插件效果差不多。项目就总结了一下对比效果。

Android Studio 默认快捷键与Eclipse常用快捷键对比

Android Studio 含义 Eclipse 备注
Ctrl + Alt + L 格式化代码 Ctrl + Shift + F 貌似对//注释无效
Shift + Enter 任意位置换行(往下添加空行) Shift + Enter
Alt + / 代码提示 Alt + / AS默认(Ctrl + Space)与Windows输入法切换快捷键冲突,自行设置为其他
Ctrl + Y 删除当前行 Ctrl + D
Ctrl + Shift + Enter 完成代码 补充剩余代码和”;”
Ctrl + Shift + F10 运行当前项目 Ctrl + F11
Shift + Alt + Up/Down 当前行、选中行向上/向下移动 Alt + Up/Down 可以任意移动
Ctrl + Shift + Up/Down 效果同上一条,有个限制见备注 无法移出语句当前所在代码块,注释也一样
Ctrl + C 复制当前行或选中内容 没选中内容的情况下,复制当前行
Ctrl + D 粘贴当前行到下一行 Alt + Down
Ctrl + X 剪切当前行或选中的内容
Alt + Enter 自动修正 Ctrl + 1
Ctrl + Alt + O 自动导入需要的包和删除多余的包 Ctrl + Shift + O
Ctrl + Enter 在当前行的上一行插入新行,光标在行首时有效 光标不在行首时与普通Enter一样
Ctrl + / “//”单行注释 Ctrl + /
Ctrl + Shift + / /* … */ 添加(取消)多行注释 Ctrl + Shift + /
Ctrl + Backspace 按单词删除 在要删除的单词后面使用,直接删除光标前的一个单词
Alt + Left/Right 切换代码视图 Alt + Left/Right

当然,注意,这里是Windows版本的Android Studio的对比,Mac版本的Android Studio还是有少许的不同。


只想到这么多,如果说的不对请多包涵,笔者也是刚学Android Studio不久。

/*
* @author zhoushengtao(周圣韬)
* @since 2015年8月27日 15:31:22
* @weixin stchou_zst
* @blog http://blog.csdn.net/yzzst
* @交流学习QQ群:341989536
* @私人QQ:445914891
/
技术分享

版权声明:转载请标注:http://blog.csdn.net/yzzst 。 本文为博主原创文章,未经博主允许不得转载。

从Eclipse到Android Studio——改变了什么

标签:android   android studio   eclipse   

原文地址:http://blog.csdn.net/yzzst/article/details/48002187

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!