首页 文章 精选 留言 我的

精选列表

搜索[多规格],共10000篇文章
优秀的个人博客,低调大师

[多图] GitHub 程序语言流行趋势

RedMonk分析师 Donnie Berkholz分析了开源项目托管平台GitHub上的编程语言流行趋势(如图),并对上述语言的趋势进行了解释:Ruby的下降和Java、PHP和Python等的同时上升显示了GitHub走向了主流, 更多的语言社区拥抱了GitHub,更多来自Java、 C++、C#、Obj-C和Shell的开发者加入了GitHub;JavaScript的崛起反应了JavaScript开发框架的流行和 JavaScript鼓励共享复用代码的开发哲学;Windows和iOS的开发语言几乎没有任何变化显示,C#和Objective-C两大生态系统不 鼓励或积极的阻止开源代码。 文章转载自 开源中国社区 [http://www.oschina.net]

优秀的个人博客,低调大师

如何使用 Zadig 治理并使用集成环境:用以支持上千开发者、多业务线、多环境协作

Zadig on Github/Zadig on Gitee 阅读原文/加入 Zadig 技术交流群 这些场景你肯定遇到过 “数千微服务已经上了 K8s,没有业务边界,环境不稳定出了问题,所有人吃大锅饭” “开发无法本地联调自测,集成测试环境 “脏,乱,差”极不稳定,总被其他人干扰” “测试同时验证多个分支,集成合并冲突不断,自动化测试遥遥无期,测试全靠人工验证” “运维无脑排障、重启、删节点,沦为工具人……” 其实这种场景非常普遍,很多企业通过云厂商一股脑把微服务上了云,而配套设施并没有使用云原生方式,CI/CD 工具不是云原生的,系统架构不是云原生的,工程师缺乏云原生的技能... 不要怕!Zadig 可以通过托管项目解决以上问题,并且对现有集群无任何的侵入性,平滑实现云原生 DevOps 开发模式。不同业务线可以清晰的管理所属的服务,开发者也可以方便的对服务进行查看、管理和更新,比如服务查看、Pod Debug、实时日志等。 原理如下: Zadig 托管项目对集成环境进行治理 下面以 joseph-ring 项目为例,来演示如何通过 Zadig 托管项目对集成环境进行治理。 这是一个真实的脱敏业务场景,该企业有 5 条业务线,Java 技术栈为主,包含前后端开发、测试、运维等角色,2000+ 微服务混合部署在一个 K8s 集群若干 Namespace 中,以下将演示如何配置托管项目为该业务线开发和测试同学提供便利性,包括日常开发联调、自测、集成测试验收等。 Step 1 配置集成 K8s 集群 集成已有的 K8s 集群到 Zadig 系统 点击系统设置->集群管理,添加集群: 执行 Agent 安装脚本 Step 2 创建托管项目 创建项目 基于Kubernetes+托管现有环境的特点组合创建项目 Step 3 按需配置集成环境 创建 dev 环境用于日常开发调试 设置目标环境名称,选择要托管的 K8s 集群和命名空间 选择需要被托管管理的服务后,点击下一步 创建 qa 环境用于服务的集成测试验收 进入集成环境,设置环境名称:qa,选择 K8s 集群和命名空间 类似的操作,可以按需为不同业务线、不同角色配置相应的集成环境。 开发者如何使用集成环境 进入集成环境页面可以查看服务访问入口,服务状态、管理服务 进入服务详情页面可以查看服务入口、切换服务镜像、调整副本、查看实时日志、登入容器做 PodDebug(调试) 等。 集成环境得到有效的治理后,更多进阶操作建议: 新建不同的托管项目应对不同业务线的服务治理 通过配置角色权限,可以清晰管理不同角色的权限和审计 通过添加 Zadig 构建步骤,实现服务自动更新到集成环境 Zadig 托管项目屏蔽集群背后的复杂度,使得组织的业务边界更加清晰明确、服务更新的过程也清晰可追溯、权限得到有效管理。一线开发者通过接入 Zadig 获得流畅的软件开发体验,可以更多的关注自身业务单元模块的迭代。 关于Zadig Zadig 是基于 Kubernetes 设计、研发的开源分布式持续交付 (Continuous Delivery) 产品,为开发者提供云原生运行环境,支持开发者本地联调、微服务并行构建和部署、集成测试等。Zadig 内置了面向 Kubernetes、Helm、云主机、大体量微服务等复杂业务场景的最佳实践,为工程师一键生成自动化工作流 。 加入开源吐槽群🔥

优秀的个人博客,低调大师

【原】Github系列之二:开源 一行代码实现多形式多动画的推送小红点WZLBadge(iOS)

更新日志 V1.2 2015.09.25 1.UITabBarItem badge is supproted; 2.Enable change badge properties when badge is showing; 3.Other code optimization. V1.1 2015.08.12 UIBarButtonItem badge is supported. UIBarButtonItem is kind of NSObject and its displayed view is invisiable. This version makes usage of UIBarButtonItem badge as to UIView. Slight adjustment for code structure to fit future extension. Other code optimization. V1.0 at 2015.06.16 Base functions are completed, which is able to meet most of requirements. 概述 今天我们来实现一个在iOS中让人又爱又恨的推送“小红点”WZLBadge。那什么是badge呢?当后台有数据更新需要让用户知道时,在按钮或者其他控件上显示一个“小红点”提醒用户。注意,这里的“小红点”仅仅是泛指,实际的视图可以天马行空,在这个版本中我们先实现以下几种: 小红点 红底白字“new” 红底白字数字 为了让小红点显示后更加醒目,在这个版本中我又实现了三种不同的状态动画(status animation): 心脏跳动效果(WBadgeAnimTypeScale) 呼吸灯效果(WBadgeAnimTypeBreathe) 横向抖动(WBadgeAnimTypeShake) 静止状态(WBadgeAnimTypeNone, 默认) WZLBadge还有以下优点: 支持横竖屏 支持iOS5~iOS8 允许高度定制化,包括“红点”的背景颜色,文字(字体大小、颜色),位置等 我们还是先看两张示例图片吧: 分析 想要使得实现出来的badge接口调用方便,我采用的是对UIView做category的方式,接口统一为实例方法。通过这种方式,可以给任意的UIView及其子类添加badge,而且接口简单。接口应该类似于这样: 1 [someView showBadgeWithStyle:WBadgeStyleRedDot value:0 animationType:WBadgeAnimTypeShake]; 现实往往是这样的,使用者使用起来越简单,接口提供方就需要做的越多。我们知道,小红点应该具有多个属性,比如大小、背景颜色、文字颜色等。想让badge具有更强的可定制性,就需要开放这些丰富的属性。那么问题来了,category中理论上只能添加方法,无法添加属性。这时候就需要一些运行时runtime方面的技巧了。我们可以在运行时为UIView添加属性,需要使用到的两个runtime api为: 1 2 OBJC_EXPORT id objc_getAssociatedObject(id object , const void *key) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_1); 1 2 OBJC_EXPORT void objc_setAssociatedObject(id object , const void *key, id value, objc_AssociationPolicy policy) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_1); 例如,假设我们现在想给UIView动态添加badgeBgColor属性,用来操纵badge角标的背景色“ 1 2 3 4 - (UIColor *)badgeBgColor //getter { return objc_getAssociatedObject(self, &badgeBgColorKey); } 1 2 3 4 - ( void )setBadgeBgColor:(UIColor *)badgeBgColor //setter { objc_setAssociatedObject( self , &badgeBgColorKey, badgeBgColor, OBJC_ASSOCIATION_RETAIN); } 关于动态添加属性的知识在这里就不具体展开了,想要了解更多的可以参考我的这篇《iOS运行时runtime初探(强制获取并修改私有变量,强制增加及修改私有方法等)》。这个知识点也是本文开源的WZLBadge的核心点,实际上这也是大多数开源工具的常规做法。另外,对于WZLBadge的其他技术细节在这里就不再细述,具体可以到文章末尾处转去Github查看。 使用方法 由于WZLBadge采用对UIView扩展category的方式,因此,所有的UIView及其继承子类(UIControl等)都可以无缝使用,当前版本开放的接口主要有以下几个: 1 2 3 4 /** * show badge with red dot style and WBadgeAnimTypeNone by default. */ - ( void )showBadge; 1 2 3 4 5 6 7 8 /** * showBadge * * @param style WBadgeStyle type * @param value (if 'style' is WBadgeStyleRedDot or WBadgeStyleNew, this value will be ignored. In this case, any value will be ok.) * @param aniType */ - ( void )showBadgeWithStyle:(WBadgeStyle)style value:( NSInteger )value animationType:(WBadgeAnimType)aniType; 1 2 3 4 /** * clear badge */ - ( void )clearBadge; 本文转自编程小翁博客园博客,原文链接:http://www.cnblogs.com/wengzilin/p/4633937.html,如需转载请自行联系原作者

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册