期间:2015
188app彩票ios重构代码以加载文档
许多现代web服务器代码与返回JSON数据的上游服务进行通信,对JSON数据做一些处理,然后使用流行的单页应用程序框架将其发送到富客户端web页面。在与使用这种系统的人交谈时,我听到了一些关于他们需要做多少工作才能操作这些JSON文档的挫折感。这种挫折可以通过封装加载策略的组合来避免。
列表和哈希
现在在许多编程环境中,将数据结构表示为列表和散列表的组合很常见。大多数主流语言现在都提供了这些数据结构的标准版本,特别是提供了大量的操作收集管道,操纵他们。这些数据结构非常灵活,允许我们以易于处理和操作的方式表示大多数层次结构形式。
不断发展的出版物
当我开始我的写作生涯时,我开始为技术杂志写文章。现在,当我写文章长度的文章时,它们都是为网络而写的。纸质杂志仍然存在,但数量正在减少,可能注定要灭绝。然而,尽管纸质杂志正在凋零,许多关于纸质杂志的假设仍然牢牢地控制着作家和出版商。这一点在最近与我想在我的网站上发表文章的人的交谈中尤其明显。
企业架构师在精益企业中的角色
当一个组织接受敏捷心态时,企业架构不会消失,但企业架构师的作用也会发生变化。188比分直播网 坚持原创企业架构师不再做出选择,但帮助他人做出正确的选择,然后辐射该信息。企业架构师仍然需要形成愿景,但随后需要在团队之间建立桥梁来建立学习的社区。这些将允许团队探索新方法并互相学习,并在该增长的合作伙伴中与企业架构师一起探索。
188app彩票ios重构为自适应模型
我们的大多数软件逻辑都是用我们的编程语言编写的,这些语言为我们提供了编写和发展这种逻辑的最佳环境。但是在某些情况下,将逻辑转移到我们的命令式代码可以解释的数据结构中是有用的——我称之为自适应模型。在这里,我将展示一些用JavaScript编写的产品选择逻辑,并展示如何将其重构为一个用JSON编码的简单产品规则系统。这个JSON数据允许我们在使用不同编程语言的设备之间共享这个选择逻辑,并在不更新这些设备上的代码的情况下更新这个逻辑。
远程办公与异地办公
没有简单的远程与共同工作的工作二分法,而是有几种分布模式对于团队,每个人都有不同的权衡和适合于它们的有效技术。虽然无法确定确凿的证据是不可能的,但我的意识是,大多数群体都更加富有成效,以共同定位的方式工作。但是,您可以使用分布式工作模型构建更高效的团队,因为它可以让您访问更广泛的人才池。
188app彩票ios重构模块依赖项
随着程序规模的增长,重要的是将其划分为模块,这样您就不需要理解所有模块来做一个小的修改。这些模块通常可以由不同的团队提供并动态组合。在这篇重构文章中188app彩票ios,我使用表示域数据分层分解了一个小程序。然后重构这些模块之间的依赖关系,引入Service Locator和依赖注入模式。这些重构在不同的语言中应用,但看起来不同,因此我用Java和无类JavaScript两种风格展示了这些重构。188app彩票ios
所需接口
所需的接口是由交互客户端定义的接口,该界面指定了所需组件需要做的事情,以便它可以在该交互中使用。
软件组件
从我进入这个行业以来,将软件开发从辛苦地编写代188比分直播完整手机版码转变为通过简单的组件组装来构建强大的系统的理念一直是我的目标。它的目标有时是瞥见的,但从未真正实现——尽管许多技术都以工业再利用为诱饵。
表示域数据分层
将信息丰富的程序模块化的最常见方法之一是将其划分为三个大的层:表示层(UI)、域逻辑层(即业务逻辑)和数据访问层。因此,您经常看到web应用程序被划分为了解处理HTTP请求和呈现HTML的web层、包含验证和计算的业务逻辑层和整理如何管理数据库或远程服务中的持久数据的数据访问层。
反模式
安德鲁·科因格首先在JOOP中的文章中创造了“反派”一词,可悲的是在互联网上没有提供。重要的想法(如我记得的)是,一个反attern是一个似乎在你开始时一个好主意,但引起你陷入困境。从那时起,这个术语通常被用来表明任何坏主意,但我认为原始焦点更有用。
对齐地图
对齐地图是组织信息散热器,帮助可视化持续工作与业务结果的对齐。这项工作可能是常规的功能添加或技术工作,如重新架构或偿还技术债务或改善构建和部署管道。团队成员使用对齐地图来了解他们日常工作的业务结果是为了改善。业务和IT赞助商使用它们来了解持续的工作如何与他们关心的业务成果有关。
188app彩票ios使用循环和收集管道进行重构
循环是处理集合的经典方法,但是随着在编程语言中更多地采用第一类函数,集合管道是一个有吸引力的替代方法。在本文中,我将通过一系列小示例介绍如何将循环重构为收188app彩票ios集管道。
开发运维文化
敏捷软件开发188比分直播完整手机版打破了需求分析、测试和开发之间的隔阂。部署、操作和维护是其他与软件开发过程的其他部分存在类似分离的活动。188比分直播完整手机版DevOps运动旨在消除这些竖井,鼓励开发和运营之间的协作。
Microservice权衡
许多开发团队已经发现微服务建筑风格是单片架构的卓越方法。188比分直播网 坚持原创但其他团队发现他们是一种生产力 - 吸取力的负担。与任何架构风格一样,微服务带来成本和福利。为了使您能够理解这些选择并将其应用于您的特定上下文。
收集管道
收集管道是一种编程模式,在这种模式中,您将一些计算组织为一系列操作,这些操作通过将一个操作的输出作为集合并将其输入下一个操作来组成。(常用的操作有filter、map和reduce。)这种模式在函数式编程中很常见,在具有lambdas的面向对象语言中也很常见。本文通过几个如何形成管道的示例来描述该模式,以便向不熟悉该模式的人介绍该模式,并帮助人们理解其核心概念,以便更容易地将思想从一种语言转换到另一种语言。
《神秘博士指南
《神秘博士》是一部长时间播放的电视剧,但你不必花太多时间就能开始欣赏它。挑选优秀的独立剧集是很容易的。
Tor对技术人员来说
Tor如何工作以及如何使用它的摘要。它还涵盖了Tor浏览器捆绑包,隐藏服务,尾巴,并着眼于围绕Tor的一些争议。
不要从巨石开始
在过去的几个月里,我反复听到这样的说法:获得成功的微服务体系结构的唯一途径是首先从一个单一的体系结构开始。188比分直播网 坚持原创转述Simon Brown的话:如果你不能构建一个结构良好的庞然大物,你凭什么认为你可以构建一组结构良好的微服务?最近的——和往常一样,非常有说服力的——对这个论点的解读来自Martin Fowler在这个网站上。当我有机会对之前的草稿发表评论时,我有一些时间思考这个问题。我确实这么做了,尤其是因为我发现自己通常和他意见一致,而其他一些我通常持有相同观点的人似乎也和他意见一致。
我坚信从巨石开始通常是错误的。
庞然大物第一
当我听到关于使用A团队的故事微服务架构188比分直播网 坚持原创我发现了一个共同的模式。
- 几乎所有成功的微服务故事都是从一个庞然大物开始的,它变得太大了,然后被拆分了
- 几乎所有我听说过的从头构建为微服务系统的系统,最终都遇到了严重的问题。
这种模式导致我的许多同事认为您不应该用微服务开始一个新项目,即使您确信您的应用程序足够大,值得这样做。.
Yagni
Yagni最初是一种代表“你不会需要它”的首字母缩写。这是一个口头禅极限程序设计这通常在敏捷软件团队中使用。这是一个声明,我们假设我们的软件未来需要的一些能力不应该现在就构建,因为“你不会需要它”。
Microservice溢价
的微服务建筑风格一直是去年的热门话题。在最近的O'Reilly软件架构会议188比分直播网 坚持原创,它似乎每次会议谈到微服务。足以让每个人过度炒作的除毛探测器上升和闪烁。其中一个后果是,我们已经看到团队太渴望接受微服务,而不是意识到微服务在自己的帐户上引入复杂性。这增加了一个项目的成本和风险 - 一个经常将项目变成严重麻烦的费用。
188app彩票ios重构访问外部服务的代码
当我编写处理外部服务的代码时,我发现将访问代码分离到单独的对象中是有价值的。在这里,我将展示如何将一些凝固的代码重构为这种分离的公共模式。
数据湖
数据湖是这个十年来出现的一个术语,用来描述数据分析管道的一个重要组成部分大数据.其理念是为组织中任何人可能需要分析的所有原始数据建立一个单一的存储。通常人们使用Hadoop处理湖中的数据,但是这个概念比Hadoop更广泛。
www.dawgtracker.com在2014年底的状态报告
运行Martinfowler.com网站是我想法的很大一部分。金宝搏亚洲体育博彩传统上,它比我们的主要网站有更多的流量,尽管我们的主要网站有所改善,因此令人愉快地被改变。我的网站是我们为我们支柱的一部分影响行业的车辆。
微服务谈话
就像任何新的体系结构术语一样,很难对微服务有一个像样的定义,因此本文将基于James和我的文章开始讨论这个问题。然后,我将微服务与SOA进行比较,将体系结构与更单一的方法进行比较,并概述在部署微服务应用程序之前188比分直播网 坚持原创必须做好的重要事情。
多样性平庸幻觉
我经常参与故意增加一群人的多样性的讨论。软件中最常见的情况正在增加女性的比例。两个例子是招聘和会议扬声器名单,我们讨论试图让女性比例到高于平常的水平。对推动更大多样性的常见争论是它将降低标准,提高多样化但平庸的集团的幽灵。
预备重构的一个例子188app彩票ios
通过首先重构代码来使更改更容易改变更改以使更改变得简单的简单示例。188app彩票ios