Swift开发一些注意地方

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014128241/article/details/88884208

犹豫中,终于写完第一个Swift的项目,一直都在用oc 写项目,之前没有机会使用swift 写项目。

我先说一下我这个项目的架构

1.项目整体是storyBoard 布局的
2.使用的是MVC 模式
3.解析数据是swift原生的解析
4.网络请求使用的是Alamofire自己封装的(后期像改成moya)
5.后台是PHP

注意PHP语言返回的数据类型

很多PHP 返回的是NSNumber 的类型 Swift 对数据类型很多都不友好
Swift提供的数据类型有:Int, Double, Float, Bool, String
Swift提供的集合类型包括:Array, Dictionary, Set
Swift提供的其他辅助类型: enum, Struct

所以要和后台确定一下返回的具体数据类型(这个地方会有很多坑)

原生解析的model(我用的结构体写的)

后台返回的数据

{
    "code": 200,
    "datas": {
        "versions": 1,
        "iosversions": 1,
        "content": "更新细节内容",
        "ioscontent": "更新细节内容",
        "downurl": "www.baidu.com"
    }
}

这是struct model的写法(也有很多同学用class)

import Foundation

struct VersionModel: Codable {
    
    var code : Int
    var datas: DataInfo
    struct DataInfo: Codable {
        var versions :Int
        var iosversions: Int
        var content: String
        var ioscontent: String
        var downurl: String
}
}

原生的数据解析 代码很简单我就直接贴代码了

           let decoder = JSONDecoder()
            let model = try? decoder.decode(VersionModel.self, from: json)
            self.versionModel = model

下面还会写一个闭包 也就是oc 的block 的使用 喜欢的关注一下。

猜你喜欢

转载自blog.csdn.net/u014128241/article/details/88884208