ANDROID培训准备资料之项目结构

Android Studio项目结构初步主要介绍下面几个文件夹,后续再补充

(1)java文件夹的介绍

(2)Res文件夹的介绍

(3)R文件的介绍

(4)Manifests文件夹的介绍

我们先看看整个项目结构

 (1)java文件夹的介绍

java文件夹主要存放源代码,这里没有什么好讲的呢,主要讲下在开发过程中在这个文件夹下我们怎麼规划我们的代码,先来说说我怎么挖坑埋自己的吧,去年八月份吧,那时候刚出来,初生牛犊不怕虎,和另外一个实习生就直接着手开发商旅宝项目啦,一开始还按照正常的轨道前进,到后期一味的追求复用代码,也有担心后期维护的问题,但是但是没啥经验,就是你干,到最后我们竟然丧心病狂的把本来五六个Activity的内容全部集合到一个Activity中,布局页面也全集中到一个xml文件中,动态的判断该加载那个,反正最后就差一个项目用一个Activity,一个xml实现就得啦,这一年过去啦,现在我只要听到领导说维护下商旅宝,哪里哪里需要修改,我都开始颤抖啦,MD,这几十个if else if else我又得debug一行一行代码的走一遍啦,重要是当初还没有给代码加备注的习惯,真是日狗啦,反正到现在代码不好维护也不好扩展,就一句话吧,百无是处。好啦,回到正题吧。这也都工作一年啦,说说到底怎么规划我们代码吧,我觉得接手一个新的项目,我们首先得给他分模块,不用去考虑原形上那两个页面相似,那两个页面的逻辑代码差不多,我把它两给整一块去,这样是不正确的,我们应该按功能模块来划分package,而不是按层次来划分package,比如说一个项目主要有两个功能模块,一个是关于发型推荐的,一个是关于衣服搭配的,即使这两者有再多的页面相同,我们都要分成两块,一块hairstyle,另一块clothes,后期如果想复用一些代码,咱可以子类继承父类来实现。

(2)res文件夹的介绍

res 文件夹主要存放一些资源文件,比如说图片,音频文件,甚至数据库文件等等都可以,初始化主要有drawable,layout,menu,mipmap,values几个文件夹

drawable和 mipmap:两者主要都是存放图形资源的,之前在eclipse中是没有mipmap这个文件夹的 ,改用Studio作为开发工具后,一开始还真是蒙圈啦,干脆就把所有自定义的xml图形资源文件全扔在drawable中,美工切图的图形资源文件全扔miamap中,后来查了下资料 ,这样是不正确的,虽然两者在使用上是没有区别的,并且使用mipmap系统会在缩放上提供一定的性能优化,但是我们应该只把应用启动图标放在mipmap文件夹中,其他的都应该扔在drawable中,具体大家可以百度一下很多,这里就不再细述啦。

layout:layout文件夹主要存放用户界面资源文件,文件类型为xml。

menu:主要存放菜单文件

values/dimens:主要定义一些尺寸值

values/strings:主要定义一些字符串

values/styles:主要定义样式

我们还可以在values文件夹下定义一些例如colors(颜色资源文件),arrays(数组资源文件)之类的文件,方便我们管理

                             

(3)R文件夹的介绍

资源文件的使用分为在代码中使用和在其他资源文件中引用该资源文件。在我们编译一个Android应用时,Android会自动生成一个R类,在该类中根据不同的资源类型又生成了相应的内部类,该类包含了系统中使用到的所有资源文件的标示。

(4)Manifest文件夹的介绍

Manifest文件夹下主要有一个文件

时间: 2024-11-17 13:58:13

ANDROID培训准备资料之项目结构的相关文章

上门洗车APP --- Android客户端开发 之 项目结构介绍

上门洗车APP --- Android客户端开发 之 项目结构介绍 前言 虽然公司项目较紧,但还是抽出时间给大家继续更新.     o_O"~ 感谢大家的关注,很高兴和大家共同学习.前面给大家分享了项目中的以下内容: 上门洗车APP --- Android客户端开发 前言及业务简介 上门洗车APP --- Android客户端开发 之 网络框架封装介绍(一) 上门洗车APP --- Android客户端开发 之 网络框架封装介绍(二) 之前有很多朋友私信过来说想打包一份源码学习,由于本项目也是还

(1)-Android学习笔记之:初识Android系统架构和项目结构

Android系统架构 Android程序结构 创建一个Android项目,为初学便于理解,将程序项目结构切换为Project模式,项目结构如下 .gradle和.idea:这两个目录下放的都是Android Studio自动生成的文件,无需我们关心,也不需要手动编辑. app:项目中的代码.资源等内容几乎都放在这个目录下,开发工作基本在这个目录下进行. libs:如果项目引用了第三方jar包,就需要吧这些jar包放在libs目录下,此目录下的jar包都会自动添加到构建目录中. androidT

Android 第三课——项目结构及作用

● src-包含项目的.java源文件. 在本例中, 有一个文件:HelloWorldActivity.java.HelloWorld Activity.java文件是活动的源文件,您将在这个文件中编写应用程序的代码.这个Java文件在项目的包名下列出,在本例中这个包名为net.learn2develop.HelloWorld. 注意:这里是就是应用程序的源代码,所有的业务逻辑处理都能在这里找到,虽然也可以在源代码中采用面向对象的方式进行界面编程,但是这种编程方式显然增加了难度,所以Google

Android 培训准备资料(1)

project和module的区别? 现在我们来看看在Android studio中怎样新建一个project (1)file->new->new project. Application Name :项目名称 Company Domain:公司域名 Package Name :打包的App名称 Project location:项目存放路径 (2)设定兼容的Android最小版本(记不清可点击help me choose) (3)选择Activity的类型 (4)点击finish即可 我们现

Android培训准备资料之UI一些相似控件和控件一些相似属性之间的区别

这一篇博客主要收集五大布局中的一些相似控件和控件一些相似属性之间的区别 ImageView ImageButton Button 三者有啥区别? (1)Button继承自TextView,ImageView继承自View,ImageButton继承自ImageView                                              (2)Button支持android:text属性,而ImageButton和ImageView不支持,但是ImageView和ImageB

ANDROID培训准备资料之四大组件

Android四大组件是一个android app 最基本的组成部分,这篇博客主要给大家简单的介绍一下四种组件 (1)Activities (2)Services (3)BroadcastReceiver (4)ContentProvider (1)Activities 我们先看看 android api guide 对Activities的简单介绍 就像上面所描述,你所使用的App中所看到的屏幕内容其实就是一个Activity,至于Activity的生命周期分析以及注意点,大家可以从我的博客<

Android实际开发中的首页框架搭建(一、项目结构搭建)

前段时间忙得不可开交,一直想抽个时间写一个博客,然后就一直拖到了现在,确实感觉有点愧疚... 这段时间买了几本书正在看,想让自己好好沉下心来,又去慕课网看了些视频,确实发现以前自己落下了蛮多知识点,还是有点收获, 所以,在此呼吁一下,干我们这行,需要不断学习,只有在学习中,才能明白自己有多水,才能让自己不断变强! 好了,进入正题,这一次准备了一些很基础的东西,但也是非常重要的东西,对于我们实际开发真的很有帮助 知识点一:使用BaseFragment/BaseActivity的作用:抽象到父类的思

Android studio导入eclipse项目且不改变目录结构

Android studio的安装与配置论坛当中已经有很多在此就不在细说了,现在开始说下如何在Android studio当中导入eclipse的项目且不改变其目录结构和配置,让使用eclipse的同学也可以继续使用,当然使用android studio的同学也可以使用.废话少说上图 1. 使用open的方式打开一个已经存在的android项目(eclipse创建的) 2. 在项目属性当中配置sdk版本和output路径 3. 第三步很重要分为9个步骤,主要操作是先删除第一次打开项目的时候导入的

android第一行代码-1.项目结构

0.项目结构 一个简单的android项目结构大致如下 入口就是MainActivity这个类,如果对于一个陌生的项目,最好的办法是看AndroidMainifest.xml,如下 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="act