iOS项目搭建

今天开始一个新的项目,也是入职公司之后第一个完整的项目,直播相关的,大概35个页面,计划三周完成所有功能的开发。
去年入职之后,只做了三个月的iOS开发,之后就是前端的工作,所以对iOS开发有些生疏了,不过最近有看公司的项目熟悉了一些,希望可以按计划完成工作吧!

一、准备资料

  1. 项目设计UI
    找UI设计师拿到设计图,最好是带标注的设计稿
  2. 后台接口
    找后台工程师拿接口,一般项目前后端都是同时进行的,所以这时候应该没有实际的接口,但是设计文档或者接口文档应该是有的,可以大概浏览一下后端的接口格式。有了更好,没有也没关系,之后画完页面,剩下时间都是来调试接口的。
  3. 创建项目
  • 工程名字
  • UI Interface
  • LifeCycle
  • Language
  • Use Core Data
    根据自己的项目需求来确定,因为项目就我一个人开发,所以我这里选择了Storyboard;SwiftUI还没用过,之后学习一下。
    因为里面用到了一些直播的功能需要使用第三方库用的OC,所以就选了Objective-C;Swift还没真正用到项目中,并且好久没写也快忘记了。
    Core Data,可能会用到,暂时不写,之后用到在添加。
  1. 配置项目
  • iOS Deployment Target
  • Device Orientation
  • Organization
    选中Project设置iOS Deployment Target
    选择Target - Deployment Info,设置支持的设备方向Device Orientation
    选择Project,在最右边的Project Document中设置组织名称Organization
  1. 使用CocoaPods
    关掉项目,在终端中打开项目路径
    (1) pod init初始化pod
    (2) pod install安装,生成.xcworkspace文件
    (3) 以后都打开.xcworkspace文件来打开项目
  2. 使用Git
  • 创建项目的时候默认选中的有git,项目目录里面一般有git
  • 如果没有选择,可以打开项目根目录,使用git init命令初始化git仓库
  • 打开项目目录,运行touch .gitignore生成文件
  • vim .gitignore编辑文件,加入需要忽略的文件夹或后缀名即可
  • git status查看所有文件状态,git rm --cached删除要忽略但是已经有记录的文件
  • git add .添加文件到暂存区
  • git commit -m "first commit"提交文件到本地仓库
    Xcode已内置git功能,可以直接在菜单里进行git操作,个人还是更喜欢用命令行,对整个过程更熟悉更有把握

二、项目内容

  1. 项目架构
    默认所有的文件都在同一个文件夹下面,看起来比较乱,需要稍微整理一下,并添加一些文件夹用于防止不同类型的文件;
    项目架构使用tree -l ./命令生成,需要先用brew install tree安装;
    ├── Category
    ├── Classes
    │   ├── Live
    │   ├── Login
    │   │   ├── LoginViewController.h
    │   │   └── LoginViewController.m
    │   └── Video
    ├── Common
    │   ├── BaseViewController.h
    │   └── BaseViewController.m
    ├── Macro
    ├── Main
    │   ├── AppDelegate.h
    │   ├── AppDelegate.m
    │   ├── Base.lproj
    │   │   └── Main.storyboard
    │   ├── SceneDelegate.h
    │   ├── SceneDelegate.m
    │   └── main.m
    ├── Supporting Files
    │   ├── Assets.xcassets
    │   │   ├── AccentColor.colorset
    │   │   │   └── Contents.json
    │   │   ├── AppIcon.appiconset
    │   │   │   └── Contents.json
    │   │   └── Contents.json
    │   ├── Base.lproj
    │   │   └── LaunchScreen.storyboard
    │   └── Info.plist
    └── Tool
    
    markdown列表中插入代码段导致列表混乱,需要缩进,并且代码段后的文字也要缩进;
  2. 第三方库
    第三方库管理最好使用cocoapods,如果确实有一些需要手动导入的库,放在tool文件夹下面
  3. 相似页面或功能提取
    项目中通用的功能类或基类放在common里面
  4. 按功能模块实现代码
    具体的功能实现代码在class里面按模块编写,如果超过一个可以分成单独的model,view,controller文件夹

之前一直用的sublime,今天体验了一下vscode,发现确实好用,比如markdown可以直接编写并实时预览,很方便。我决定之后都用vscode来写东西了,_

原文地址:https://www.cnblogs.com/shenyuiOS/p/14063327.html