首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/687010

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

计算机基础原来可以如此好懂!——「面向抽象编程」

“面向抽象编程,面向接口编程”这句话流传甚广,它像一面旗帜插在每个人前进的道路上,引导大家前行。每个程序员都免不了和抽象打交道,差距可能在于能否更好地提炼。 这句话包含两部分含义:“面向抽象编程”本质上是对数据的抽象化,“面向接口编程”本质上是对行为的抽象化。 本文我们先谈“面向抽象编程”,即数据的抽象化。 3.1 抽象最讨厌的敌人:new 因为直接讲什么是抽象不太好讲,容易描述的话那就不是抽象了,所以我们换个角度,先聊聊抽象的反面:什么是具体。在具体里,有个先锋人物,就是我们都熟悉的new。大家知道,new是最简单和最常见的关键字,用来创建对象。但被创建出来的一定是具体的对象,所以new代表着具体,它是抽象最讨厌的敌人。 大家要有这种敏感:什么时机创建对象,在哪里创建,是很有讲究的。为了阐述这个话题,我们先看下面这行代码: Animal animal = new Tiger(); // Animal是抽象类 我曾经对这句简单的赋值语句思考很久:左边抽象,右边具体,感觉不对等,这样写好不好?答案不简单啊。 接下来,我们分成两个方向细细讨论。 假设一:如果它是某个类的成员变量的定义。例如...

grafana部署高可用架构

为了获得高可用性的服务,需要对单台部署grafana的服务器进行扩充。 图片引自grafana文档 这个过程中需要做两件事: 配置一个公共数据库,使所有的grafana服务器可以将配置写入公共数据库中而不是存在本地; 选用一个会话存储方案,这一步可以通过让负载均衡启用会话保持功能解决 数据库配置 grafana为数据库提供多种可选方案,包括:mysql,postgresql,sqlite3(default)。配置文件为: vi /etc/grafana/grafana.ini 配置项为database部分: # You can configure the database connection by specifying type, host, name, user and password # as separate properties or as on string using the url properties. # Either "mysql", "postgres" or "sqlite3", it's your choice type = mysql ;数据库类型 ho...

相关文章

发表评论

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

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

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

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

用户登录
用户注册