iOS 项目的文件夹结构能看出你的开发经验

近期有师弟去面试iOS开发,他谈论到,面试官既然问他怎么分文件夹结构的,并且还详细问到每一个子文件夹的文件名称。

文件夹结构确实非常重要。面试官问他这些无疑是想窥探他的开发经验。清晰的文件夹结构,可让人一眼知道相应文件夹的职能。这也能体现开发人员的经验和架构能力。

眼下。我接触过的项目中,比較常规的两种结构:

1.主文件夹依照业务分类,内文件夹依照模块分类(主文件夹依照MVC架构分类。内部依据项目模块分类)

长处:能比較快定位相应的业务。

缺点:模块相关类太过分散。须要来回切换文件,不方便开发。

2.主文件夹依照模块分类,内文件夹依照业务分类

长处:对某一模块用到的类集中化。方便管理与开发,对新手来说。不用来回在其它文件里切换、寻找相应的模块类。

缺点:当几个模块公用一些类时,不太好归类。

比方简书iOS程序文件夹分类(非官方):

  • 1.主文件夹依照业务分类,内文件夹依照模块分类

  • 2.主文件夹依照模块分类。内文件夹依照业务分类

注意: 以上仅仅是我个人经验得出的分类,肯定会有其它开发人员是不赞同的,或有自己的见解。我虚心接受各位的意见,毕竟此类资源相对照较少。

网上也非常少有开源整个项目的,所以大家在这方面的经验得不到交流。

时间: 2024-08-02 21:37:36

iOS 项目的文件夹结构能看出你的开发经验的相关文章

Android 项目中文件夹的说明与作用(转)

(转自:http://blog.csdn.net/goodshot/article/details/11529731) Android 项目中文件夹的作用 1. src:存放所有的*.java源程序. 2. gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID. 3. assets:可以存放项目一些较大的资源文件,例如:图片.音乐.字体等. 4. res:可以存放项目中所有的资源文件,例如:图片(*.png.*.jpg).文本等. 5. res\drawable

关于idea中新建web项目 webapp文件夹没有小蓝点 ,启动服务,访问不到解决方案

第一步: 选中项目按F4键,找到你的项目. 第二步: 选中项目下的web,如果没有web点击左上角的加号,找到web最下面,添加进去 第三步: 点开type下的节点,出来弹框, 第四步: 点击弹框的选择文件夹按钮,找到你的web 就OK啦!

iOS中读取文件夹下所有文本的行数

#import <Foundation/Foundation.h> int codeLineCount(NSString *path) { //1.获得文件管理者 NSFileManager *mgr = [NSFileManager defaultManager]; //判断path是文件夹还是文件路径 BOOL dir = NO; // 标记是否为文件夹 //这个路径是否存在 BOOL exist = [mgr fileExistsAtPath:path isDirectory:&

Delphi 项目 结构 文件夹 组织

Delphi Project Structure Folder Organization http://delphi.about.com/od/delphitips2008/qt/project_layout.htm I've been developing in Delphi for the past 10+ years (from Delphi 1). Every version brings some new features - new controls, new build optio

iOS中计算文件夹中文件大小

通常用于删除缓存的时,计算缓存大小 //单个文件的大小 - (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manager = [NSFileManager defaultManager]; if ([manager fileExistsAtPath:filePath]){ return [[manager attributesOfItemAtPath:filePath error:nil] fileSize]; }

将android项目assets文件夹下的文件复制到SD卡中

<pre name="code" class="html">package com.lapel.activity.html; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import android.content.Context; /** * * 将assets文件夹下的文件复制

ios计算某文件夹大小

//-----计算某文件夹大小----- //------获取到某文件夹(该例子为名为homePath路径的文件夹)下所有子文件 NSArray* subFiles = [manager1 subpathsAtPath:homePath]; //用于统计每个文件大小 long sum = 0; for (NSString* subPath in subPaths) { //拼接字文件完整路径 NSString* path = [homePath stringByAppendingPathComp

iOS沙盒文件夹及获取路劲方法

iPhone沙盒中有四个文件夹,分别是:documents.tmp.app.library. 1.Documents :用户生成的文档或数据,或者应用不能重新新创建的数据,存储在/Documents目录下,并且会被自动备份到iCloud: 2.AppName.app :应用程序的包存储在/app目录下.由于应用程序必须经过签名,所以该目录下的内容不能修改,否则程序可能无法启动: 3.tmp:临时文件存放在该目录下(应用程序再次启动时不需要的信息,应用需要写到本地存储,内部使用的临时数据,但不需要

log4j日志输出到web项目指定文件夹

感谢 eric2500 的这篇文章:http://www.cxyclub.cn/n/27860/ 摘要:尝试将log4j的文件日志输出到web工程制定目录,遇到了很多问题,最终在eric2500的指导下搞定,下面是记录. 其原理在于log4j的配置文件支持服务器的vm的环境变量,如${oss.log4j.path},在log4j加载配置文件之前,先用 System.setProperty("","")设置好日志文件路径,这一操作通过一个初始的servlet来实现.