精华内容
下载资源
问答
  • 项目架构

    万次阅读 2020-04-19 12:25:33
    项目架构 前言 FireTeam目前项目均采用SpringBoot、Dubbo等技术框架以及DDD(Domain Driver Design)设计思想搭建。书写这篇文档一方面是帮助新加入的小伙伴更快地熟悉项目,另一方面是形成团队规范、保持代码风格统一...

    项目架构

    前言

    FireTeam目前项目均采用SpringBoot、Dubbo等技术框架以及DDD(Domain Driver Design)设计思想搭建。书写这篇文档一方面是帮助新加入的小伙伴更快地熟悉项目,另一方面是形成团队规范、保持代码风格统一,接下来讲主要通过以下几个方面进行介绍:

    • 名词与概念
    • 目录结构
    • 项目模块
    • 设计理念

    文献

    1. 领域驱动设计DDD和CQRS落地
    展开全文
  • 项目架构分析

    千次阅读 2016-11-18 11:16:17
    项目架构分析 1.1-什么是架构 1.2-从系统层次进行架构分析 1.2.1-iOS系统框架介绍 1.2.2-软件架构分析 1.3-从应用层次进行架构分析 1.1-什么是架构? 我们人类在做事之前喜欢先把它的整体结构设想一下,就像盖一座...

    项目架构分析

    1.1-什么是架构?

    • 我们人类在做事之前喜欢先把它的整体结构设想一下,就像盖一座大厦,可能会想用砖盖,还是用最新的环保隔声材料盖,里面的格局是采用中式的还是欧式的,彩色主色采用什么等等,这些相关的数据都需要提前规定好,事实上项目架构也是这样

    • 在一个好的架构下编程,不仅对于开发人员是一件赏心悦目的事情,更重要的是软件能够表现出一个健康的姿态;而架构设计的不合理,不仅对于开发人员是一件受苦受难的事情,软件本身的质量更是受到严重威胁。

    1.2-从系统层次进行架构分析

    1.2.1-iOS系统架构介绍

    • 我们在开发中去架构一款软件,很大程度上我们参考了iOS系统自身的架构,这样获取更加具有说服力

    • iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)

      • Core OS是位于iOS系统架构最下面的一层是核心操作系统层,它包括内存管理、文件系统、电源管理以及一些其他的操作系统任务。它可以直接和硬件设备进行交互。作为app开发者不需要与这一层打交道
      • Core Services是核心服务层,可以通过它来访问iOS的一些服务
      • Media是媒体层,通过它我们可以在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果
      • Cocoa Touch是可触摸层,这一层为我们的应用程序开发提供了各种有用的框架,并且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作

    iOS系统架构

    这里写图片描述

    1.2.2-软件架构分析

    • 每个人对软件的架构分析是不一样的,在不影响具体开发的情况下,没有人能说自己的架构是好的,别人的架构就一定是不好的,以下只是本人多年开发经验积累的一些感悟,仅供参考

      • 衡量一个软件架构的好坏,最有说服力的就是它的存活性,即能够在原有的架构师迭代几个版本,维护多少年~
    • 软件标准的四层架构如下

      • 1.展示层:负责系统与客户的交互
        • 我们的MVC属于展示层
      • 2.业务逻辑层:负责处理系统的业务逻辑
        • 主要是将应用的核心业务进行分离封装,复用性很高
      • 3.数据访问层:负责处理数据,与不同的数据打交道
        • 如我们软件开发中的单例模式
        • 如开发中对AFN框架的二次封装(单例模式实现AFNetworkingManager)
      • 4.服务层:负责与其他系统进行数据交互和业务集成
        • 如开发中的网络层:负责我们软件与后台之间的数据交互
        • 如开发中的硬件层:负责与硬件设备交互(硬件都是二进制,需要底层封装)

    1.3-从应用层次进行架构分析

    • 有了系统层次的分析,我们需要将系统层次的架构具体的反应到我们的工程中,并且针对应用开发来搭建我们工程的目录结构

    • 1.模块划分

      • 分析项目需求,进行模块划分
        • MVC或者MVVM或者MVP
    • 2.通用组件
      • 1.通用宏
      • 2.通用工具
        • 自定义类
        • 系统分类
      • 3.通用UI
    • 3.核心服务层
      • 网络层
      • 硬件层
    • 4.通用模型
      • 跨模块数据层
    • 5.第三方框架
    • 6.应用资源
      • 音频、视频

    这里写图片描述

    展开全文
  • 分布式项目架构

    千次阅读 2019-03-10 21:20:14
    分布式项目架构 根据业务需求进行拆分成N个子系统,多个子系统相互协作才能完成业务流程子系统之间通讯使用RPC远程通讯技术。 优点: 1.把模块拆分,使用接口通信,降低模块之间的耦合度。 2.把项目拆分成若干...

    分布式项目架构

    根据业务需求进行拆分成N个子系统,多个子系统相互协作才能完成业务流程子系统之间通讯使用RPC远程通讯技术。

    优点:

    1.把模块拆分,使用接口通信,降低模块之间的耦合度。

    2.把项目拆分成若干个子项目,不同的团队负责不同的子项目。

    3.增加功能时只需要再增加一个子项目,调用其它系统的接口就可以。

    4.可以灵活的进行分布式部署。

    有优点就有缺点,缺点如下:

    1.系统之间交互需要使用远程通信,接口开发增加工作量。

    2.各个模块有一些通用的业务逻辑无法共用。

    为了解决上面分布式架构的缺点,我们引入了soa架构,SOA:Service Oriented Architecture面向服务的架构。也就是把工程拆分成服务层、表现层两个工程。服务层中包含业务逻辑,只需要对外提供服务即可。表现层只需要处理和页面的交互,业务逻辑都是调用服务层的服务来实现。

     

    什么是项目集群

    多台服务器部署相同应用构成一个集群

    作用:通过负载均衡设备共同对外提供服务

    展开全文
  • vue项目架构

    千次阅读 2016-05-16 23:25:58
    项目架构前几天刚刚了解了一些iOS项目的架构,觉得感慨万分,如果在我的项目成型之前读到这些文章该多好,至少我的项目架构会考虑的更全面一些。 吃一堑,长一智,所以手头上的vuejs搭建的kd云之家的项目架构要提前...

    项目架构

    前几天刚刚了解了一些iOS项目的架构,觉得感慨万分,如果在我的项目成型之前读到这些文章该多好,至少我的项目架构会考虑的更全面一些。
    吃一堑,长一智,所以手头上的vuejs搭建的kd云之家的项目架构要提前考虑好。
    公司没有人搞过vue,前端工程师姐姐也是第一次搞,何况我这个iOS出身的。百度吧,百度不行就谷歌。


    搜到一个项目,和一篇文章。项目不错,文章有指导意义,虽然作者很谦虚。。。

    1. 看项目最直观的是网络 api 的封装,分两层,网络请求封装为一层(get,post),对外业务层封装为一层
    2. 项目不大,其他最重要的倒是对vue的准确适用

      • router API
        router API在vue页面中
        route: {
        data(transition) {
        var params = transition.to.params;
        api.cafe.topics(params.slug, params.page, resp => {
        transition.next({
        pagination: resp.pagination,
        topics: resp.data,
        });
        });
        }
        },

      在激活阶段被调用,在 activate 被断定( resolved ,指该函数返回的 promise 被 resolve )。用于加载和设置当前组件的数据。


      可见对于页面的初始化加载,用这个比用ready,create要正当一些
    • computed
      computed: {
      user() {
      return this.$root.user;
      },
      canWrite() {
      var permission = this.cafe.permission || {};
      return permission.write;
      },
      isAdmin() {
      var permission = this.cafe.permission || {};
      return permission.admin;
      }
      },

      你应该注意到 Vue.js 的计算属性不是简单的 getter。计算属性持续追踪它的响应依赖。在计算一个计算属性时,Vue.js 更新它的依赖列表并缓存结果,只有当其中一个依赖发生了变化,缓存的结果才无效。因此,只要依赖不发生变化,访问计算属性会直接返回缓存的结果,而不是调用 getter。

    可见compute 可以使用缓存机制,对于增加速度是有帮助的。

    • 组件命名
      计算科学中最难的两件事是命名和缓存失效。
      由于vue采用组件化开发,每个组件都是一个文件,文件比较多,所以命名要提现出该控件的通用性。不要觉得命名短才是好,命名应该尽量表达清晰意义。
    展开全文
  • Java项目架构类型

    千次阅读 2019-05-13 16:39:51
    Java项目架构类型 JavaEE企业级应用经过多年的发展,出现了很多不同的架构类型, Java应用架构发展主要经历了一下四段历程,分别是单一应用架构,垂直应用架构,分布式服务架构和流动计算架构 单一应用架构 ...
  • Java项目架构的演变

    千次阅读 2019-04-26 22:59:56
    但这些架构也不是突然就出现的,而是经过不但演变才出现及流行起来的,本文就给大家来梳理下java项目架构的演变历程。 系统架构演化历程 单体架构   大型网站都是从小型网站发展而来的,网站架构也是一样,是从...
  • Unity之项目架构

    2019-06-04 16:23:53
    转载自 UNITY_项目架构设计 视频资料: Unity项目架构设计与开发管理 EmptyGO 将所有的代码放到一个空的游戏对象中 使用 GameObject.Find() 来找到目标进行使用 项目越来越大的时候难以灵活管理;不适合大型项目。...
  • 项目架构图工具

    千次阅读 2019-10-30 15:19:25
    在线画项目架构图的工具
  • Android项目架构搭建

    万次阅读 多人点赞 2016-06-12 14:54:08
    1. 前言安卓属于小团队开发,架构的重要性在很多公司其实不是那么的明显,加上现在的开源框架层出不穷,更好的帮助我们上手android项目的开发。我前两年也在公司主导过项目开发,搭建过不少项目,以前主要的倾向是...
  • Java项目架构类型与项目分类

    千次阅读 2017-12-27 20:59:30
    Java项目架构类型JavaEE企业级应用经过多年的发展,出现了很多不同的架构类型, Java应用架构发展主要经历了一下四段历程,分别是单一应用架构,垂直应用架构,分布式服务架构和流动计算架构单一应用架构当网站流量...
  • ios APP项目架构心得

    千次阅读 2018-07-13 15:34:42
    ios项目架构 ,如图所示
  • Django项目开发流程&项目架构

    千次阅读 2018-06-01 20:49:12
    项目架构 1. 软件开发的一般流程   1. 需求分析及确认: 由需求分析工程师与客户确认甚至挖掘需求。输出需求说明文档。 ​ 2. 概要设计及详细设计: 开发对需求进行概要设计,包括系统的基本处理流程,组织...
  • 安卓项目架构浅谈

    千次阅读 2018-09-12 16:50:00
    项目架构,从最初的单module代码级分包到如今的基于module的模块化演变;而单module内部代码结构,从mvc(不算是)到mvp再到结合google新出的带有生命周期的viewmodel、livedata等构建的mvvm演变。谈一谈自己的安卓...
  • 大数据之电信项目架构

    千次阅读 2019-01-18 21:23:49
    目录 一、通话日志来源 二、 flume日志采集 ...项目架构图如下: 本项目是一个离线项目,主要是监控采集数据到hbase,然后将hbase上的数据进行分析处理,将处理后的结果存放到MySQL中,然后将分析...
  • laravel-项目架构设计

    千次阅读 2018-05-25 18:32:27
    这里我先贴一个项目: 有时间在写我为什么这样做。 项目架构 1 :Route 模块化 appApi(Android ios) userRoute DescRoute webApp(小程序) userRoute DescRoute w...
  • 结合实例谈项目架构设计

    千次阅读 2018-01-17 16:28:15
    作为一个移动端开发人员来讲,是很难接触到后端项目架构的,所幸,从2015年开始,负责部分管理工作,参与了项目架构相关的工作。项目从小到大,架构也越来越复杂,特别是最近做的一个跨国型项目,涉及到国内国外...
  • vue.js项目架构详解

    千次阅读 2019-02-21 11:24:35
     通过vue create xxx创建好项目之后,看到项目架构如下:  可以看到main.js是这个程序入口,这里面调用了App这个组件,也就是说App组件对整个项目来说,为最上级的父组件,components里面的我们创建的子组件,...
  • Spring Boot 单体项目架构搭建

    千次阅读 2019-02-22 14:33:39
    Spring Boot 单体项目架构搭建 GitHub:文章目录springboot-single架构介绍技术栈技术详情 架构介绍 此次搭建的架构是面向前后端分离开发,纯后台服务,未集成前端模板内容。 技术栈 JDK 1.8 Spring Boot ...
  • RoadFlow项目架构分析

    千次阅读 2015-08-11 11:19:02
    RoadFlow开源工作流源码-项目架构分析 项目文件结构:   很明了一个标准的三层架构的系统。 表示层:Web 业务层:Business 数据访问层:Data 另外存在缓存层:Cache缓存 增加公共使用类库:Utility   下面以一个...
  • 项目架构

    万次阅读 2018-11-28 10:19:30
     传统企业架构(垂直架构):无论项目大小以及业务复杂性,统一在一个项目中实现。 特点:优点:结构简单、易于开发;  缺点:耦合度高(各个模块不易分离、模块间影响较大一个模块出现问题同样也会导致其他模块...
  • ReactNative 开发基本项目架构

    千次阅读 2016-11-01 19:54:15
    ReactNative 开发基本项目架构
  • 要让对方掌握项目架构,一个清晰的介绍架构和顺序可以事半功倍。 项目背景 在介绍项目架构之前,首先要介绍一下项目本身的意义和目的,便于对方了解项目背景 解决了什么问题,满足了什么需求等? 目标用户是谁?...
  • 项目架构设计总结:基于阿里云搭建的轻量级架构 前言 从项目启动到现在差不多快有一年了,在这一年里经历了很多大的版本的改变,业务模式经过不断的磨合也逐渐稳定。在这个时候,总结一下之前项目的...
  • 摘要: 本文对项目采用的架构进行介绍,并说明每一个模块在架构中扮演的角色。 本文隶属于新手图文教程《IDEA+Maven搭建Spring+SpringMVC+Mybatis项目骨架》 下一篇:图文示范IDEA创建Maven项目和子模块 目录 &...
  • Android中级第十二讲项目架构配置

    千次阅读 2016-12-14 22:34:39
    ...    架构这个话题比较大;从组织结构来说,CEO是一家公司的架构师,将公司划分为销售部、市场部、技术部、行政部、财务部、客服部等,每个部门...项目架构主要目的是解耦、灵活开发,让后端成为产品的瓶颈,而...
  • guozilanTK 企业级项目架构设计实例和用法。 由于涉及内容比较多,因此在 8月18号时通过 QQ 讨论组分享本文的内容。 缘由 如果你使用了类似 Maven 的依赖管理工具,本 分享...
  • 【Unity3D】项目架构设计与开发管理

    千次阅读 2017-11-22 14:35:06
    Unity项目架构设计与开发管理笔者是观摩刘钢先生讲解的Unity项目架构设计与开发管理后所总结记录的。
  • 本篇文章将介绍SharpStreaming项目架构的二次调整。在本系列的文章中,笔者曾经有一篇关于项目工程结构调整的文章,里面比较粗略地谈到了该项目大致划分。今天这里要谈的是该项目架构的二次调整,并将在下一篇文章中...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,416
精华内容 32,566
关键字:

项目架构