Code Monkey home page Code Monkey logo

swiftarch's Introduction

swiftArch

首先这套东西是有一定门槛的, 但是只要你用上手了,真的可以快速开发业务,减少非常多的代码量

CI Status Version License Platform

提供了 脚手架的 模板 直接一键生成对应代码
https://github.com/manondidi/swiftArchTemplate

https://github.com/manondidi/swiftArchCodeTemplate

Todo

UI组件

​ 列表:

  • ​ 默认状态视图
  • ​ 可定制状态视图
  • ​ 上下拉(可定制)
  • ​ tableView(cell解耦)
  • ​ collectionView(cell解耦)

网络库

  • ​ rxAlamofire
  • ​ 自动解析模型<传入泛型>
  • ​ 参数封装
  • ​ url管理
  • ​ 网络日志
  • 上传(使用alamofire自带,已经很棒了)
  • 下载(使用alamofire自带,已经很棒了)
  • cookie(使用alamofire自带,已经很棒了)

业务层

  • ​ mock管理

页面

  • ​ 页面状态视图展示和个性化定制
  • ​ 分页计算策略模式
  • ​ 列表model解耦
  • ​ section支持
  • ​ 详细例子

Screenshot

image

image

image

image

image

image

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

swiftArch is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'swiftArch'

Author

czq, [email protected]

License

swiftArch is available under the MIT license. See the LICENSE file for more info.

swiftarch's People

Contributors

astao avatar flypigrmvb avatar manondidi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

swiftarch's Issues

PagingCollectionViewController 中CollectionView不支持section悬停

我的tableview中是支持 sectionHeaderModel的悬停的
但是PagingCollectionViewController中collectionView不支持sectionHeader(更别说悬停了)

原因如下
1 tableview sectionHeader悬停非常常见而且 tableview本身就支持这种功能,所以我一定会提供tableview的header支持
2collectionView header悬停 本身就不支持,要支持需要写相对大量的代码,所以我就不提供悬停功能,既然悬停都不提供了,那section的概念就没有了,你可以用collectionViewCell来做一个宽度=屏幕宽度的cell代替sectionHeader(不过不支持悬停)

这个swift开发框架基本功能都已经齐全了,而且扩展性很强非常灵活,基本成型了,所以接下来不在维护了,除非我又想到了什么好点子可以集成进去

通常在开发过程中要遵守开放封闭原则:尽量去扩展而不是去修改类,我这里也是希望在使用的过程中区扩展,但是难免的,会有一点修改,比如说我默认提供的 状态Cover,盖在页面上(loadingview),这套是支持扩展的,我也暴露出接口的用于个别页面的cover定制,但是做新项目的时候,直接设计出一套,替换掉我原来的那套也是很不错的,所以难免出现去修改的问题。但这种修改是一次性的。

leak

leak源自rxalamofire,等待官方修复,
可使用moya做promise处理

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.