文章目录何为架构?MVC - Apple版MVC – 变种MVPMVVM设计模式面试题 何为架构架构(Architecture):软件开发中的设计方案,类与类之间的关系、模块与模块之间的关系、客户端与服务端的关系。经常听到的架构名词:MVC、MVP、MVVM、VIPER、CDD、三层架构、四层架构等。MVC - Apple版Model-View-Controller 是iOS开发中常用的模式
转载 2023-11-22 20:31:46
53阅读
Android项目架构设计深入浅出MMVM组件化
App架构是软件设计的一个分支,它关心的是如何设计一个 App 的结构。我的理解结构设计分水平和垂直两个方向。垂直方向分:基础层、核心层、业务层、界面层。水平方向可以理解为对界面的的设计模式,目前比较通用的有MVC、MVP、MVVM三种,具体见下图:1、MVC - Apple版是 Cocoa app 中最为常⻅的架构,同时也是在 Cocoa 中讨论架构时所采用的基准线。1、实线部分代表编译期间的引
转载 2023-07-12 10:25:54
70阅读
苹果官方推荐的 APP 架构是 MVC 架构,实际上它并不是传统的三层架构,而是两层架构,即整个 APP 由“模型”和“视图控制器”两层构成。因此视图控制器显得尤其重要,它的重要体现在两个方面:ViewController 是 iOS APP 中最重要的“基石”,没有 ViewController 就没有 APP——iOS 9 以后,要求 UIWindow 必须要有一个 rootViewContr
IOS里面几乎所有的可视化类都封装在UIKit.framework里面; 和Mac os系统一样,都是基于Unix内核;一、iOS系统框架Cocoa Touch层 主要包含了大部分使用Objective-C的API,主要由Foundation和UIKit框架组成,Foundation提供了面向对象的文件访问,网络操作,数据,和集合类型;Media层 Media层主要提供了一些基本的绘图、声音和
转载 2023-08-15 12:57:16
74阅读
1点赞
了解一下。。  iOS是于UNIX内核,android基于Linux内核。  iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。下面是IOS系统结构图。 iOS结构图位于iOS系统架构最下面的一层是核心操作
转载 2023-07-21 15:05:55
71阅读
 一、概念            没有最好的架构,只有适合自己的业务的架构才是最好的架构,并且它是逐步地变强变大。           架构,又名软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。 二、iOS的系统架构分为四个层
本文是对我在知乎一个回答的整理,其中的内容大多是对我平时的阅读和实践的总结,希望对Android的开发者有所帮助。但毕竟是个人的一些思考,难免有疏漏,也欢迎对本文的内容提出建议。1. 架构设计的目的对程序进行架构设计的原因,归根到底是为了提高生产力。通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合。这样做的好处是使得程序在开发的过程中,开发人员只需要专注于一点,提高程序开发的效率,并且
微服务 2019年4月,本人所在公司承接了某法院的《在线诉服管理平台》,该系统以当事人在线立案功能为核心,分为案件基本信息查询、案件相关材料上传、开庭信息通知等功能。本人有幸在该项目中担任架构师一职,进行系统的架构设计并进行技术选型,本系统采用微服务架构设计,将整体系统拆分为:web 服务管理模块,用户信息管理模块,案件信息管理模块,材料信息管理模块,开庭信息通知通模块。系统以 zookeeper
在今天的博文中,我们将深入探讨“iOS开发 架构设计面试”中的一些核心概念和技巧。掌握这些将有助于我们在架构设计的面试中脱颖而出,展现出扎实的技术功底和清晰的逻辑思维。 随着iOS生态系统的发展,架构设计的重要性愈发凸显。一个好的架构不仅能够提高代码的可维护性和扩展性,同时也能提升开发团队的工作效率。在这个过程中,我们将运用到多种技术原理和设计模式,以便更好地应对面试中的各种挑战。 ### 背
原创 5月前
38阅读
# iOS架构设计指南 ## 1. 流程概述 为了帮助小白开发者了解iOS架构设计,我们将按照以下步骤进行指导: | 步骤 | 描述 | | ---- | ---- | | 步骤一 | 理解iOS架构设计的基本概念 | | 步骤二 | 确定应用程序的需求 | | 步骤三 | 选择适合的架构设计模式 | | 步骤四 | 实施架构设计 | | 步骤五 | 进行测试和调试 | | 步骤六 | 持续
原创 2024-01-06 08:46:24
86阅读
什么是架构设计软件架构设计指的是:对一个软件系统进行的架构定义、文档编写、维护和改进、并验证实现的一系列活动,架构设计的产物就是一个系统的架构。对架构设计的基本认识●架构设计是一门尚不够成熟的科学●架构设计是一门艺术,需要一定的创造力●架构设计是一系列的活动,是不断演化和完善的过程●架构要平衡系统利益相关者的需要●架构基于合理的证据使决策具体化●架构设计是系统利益相关者的共识●架构设计承认经验的复
转载 2019-01-03 22:31:18
1222阅读
iOS客户端应用架构看似简单,但实际上要考虑的事情不少。本文作者将以系列文章的形式来讨论iOS应用架构中的种种问题,本文是其中的第三篇,主要讲网络层设计以及安全机制和优化方案。前言网络层在一个App中也是一个不可缺少的部分,工程师们在网络层能够发挥的空间也比较大。另外,苹果对网络请求部分已经做了很好的封装,业界的AFNetworking也被广泛使用。其它的ASIHttpRequest,MKNetw
转载 2024-05-28 11:22:23
56阅读
其实对于iOS客户端应用的架构来说,复杂度不亚于服务端,但侧重点和入手点却跟服务端不太一样。比如客户端应用就不需要考虑类似C10K的问题,正常的app就根本不需要考虑。  这系列文章我会主要专注在iOS应用架构方面,很多方案也是基于iOS技术栈的特点而建立的。因为我个人不是很喜欢写Java,所以Android这边的我就不太了解了。如果你是Android开发者,你可以侧重看我提出的一些架构思想,毕竟
转载 2023-08-08 00:18:06
55阅读
数据库体系结构-进程和内存结构(Process and Memory Architecture)进程结构服务器进程postmaster后台工作进程后端进程内存结构本地内存区work_memmaintenance_work_memtemp_buffers共享内存区shared buffer poolWAL buffercommit log数据库启动过程数据库连接过程PostgreSQL是一个clie
iOS APP 架构漫谈(一) 最近看了一些有关server的东西,一些很简单的东西,不外乎是一些文档规范,另外结合最近看的wwdc的一些video,觉得对软件架构(software architecture)认识又清楚了一些,这里记录下来。 software architecture 听上去是一个很大的概念,实际上也包括很多东西,里面的争议也很多。在我看来软件架构最好放在小的场景中理解。问
构设计的层次是否越多越好? 我做(开发)架构的几个原则,根据优先次序高低排列:1. (逻辑)拆分越细越好 2. 依赖关细越少越好 3. 交互越少越好 ... 相互矛盾时,如果没有特殊理由,以优先权高者胜出。 由此启发,我觉得设计架构应该拆的越细越好。这样做有如下几点好处:对于大中型软件,层次越多,每一层就更单纯,更容易维护。团队成员只需了解一小部分业务,就能顺利进行开发。相对底层的模块,可以更
datecommentscategoriestagspermalinktitle 2020/3/15 true 5.8 架构设计原则案例分析 软件架构 前面介绍了架构设计的三条核心原则,即合适原则,简单原则和演化原则,我们在设计架构实践中应该时刻谨记,这3条原则
让我猜猜您看到这个标题时有何看法。难道这是另一篇烦人的博客文章,模仿了 MVC 并提供了一种替代的“super-duper pattern”,而实际上只留下了更多的问题?这就是我看到另一篇有关 iOS 架构的文章时的想法。MVC,MVP,VIPER,RIBLET,Clean Swift等。这样的文章有很多,它们的观点和架构截然不同。我们的社区一直在争论哪种“模式”是最好的。但是问题是他们全都是狗屎
转载 2024-09-28 21:51:22
27阅读
从今天开始,我将分4期,结合复杂度来源和架构设计原则,通过一个模拟的设计场景“前浪微博”,和你一起看看在实践中究竟如何进行架构设计。今天先来看架构设计流程第1步:识别复杂度。架构设计第1步:识别复杂度我在前面讲过,架构设计的本质目的是为了解决软件系统的复杂性,所以在我们设计架构时,首先就要分析系统的复杂性。只有正确分析出了系统的复杂性,后续的架构设计方案才不会偏离方向;否则,如果对系统的复杂性判断
转载 2023-07-18 13:33:23
159阅读
  • 1
  • 2
  • 3
  • 4
  • 5