首页 > 其他分享 >什么是计算机软件设计领域的 Edge Case

什么是计算机软件设计领域的 Edge Case

时间:2023-11-20 23:12:22浏览次数:48  
标签:Case 计算机软件 处理 购物车 商品 Edge 情况

在软件设计领域,Edge Case(边缘情况)是一个重要的概念。简单来说,Edge Case 是指在系统的输入、操作或使用环境达到一些极限或者特殊情况时的场景。这些场景通常在正常使用条件下不太可能出现,但是如果发生,可能会导致系统行为异常,比如性能下降、功能失效,甚至系统崩溃。因此,在设计和测试软件时,我们需要尽可能地考虑和处理 Edge Case

举个例子,假设我们正在设计一个在线购物网站。在这个网站上,用户可以将商品添加到购物车,然后去结算页面进行付款。在大多数情况下,用户可能只会添加几个或几十个商品到购物车。然而,理论上我们并没有限制用户添加到购物车的商品数量,所以一个 Edge Case 就是用户添加了数百万个商品到购物车。在这种情况下,购物车页面可能会加载很慢,甚至无法加载。付款系统也可能因为处理大量的商品而崩溃。这就是一个典型的 Edge Case

对于这样的 Edge Case,我们需要在设计阶段就进行考虑。可能的解决方案包括限制购物车的商品数量,或者优化购物车和付款系统,使其能够处理大量的商品。无论选择哪种解决方案,我们都需要在系统测试阶段尝试这种 Edge Case,确保系统在这种情况下仍然能正常工作。

在实际的软件开发过程中,Edge Case 的处理是非常重要的。如果忽视了 Edge Case,可能会导致在实际使用中出现各种问题,严重影响用户体验,甚至可能导致重大的系统故障。另一方面,如果过度关注 Edge Case,可能会导致开发资源的浪费,因为这些情况在实际使用中可能极少出现。因此,我们需要在处理 Edge Case 和优化常规功能之间找到一个平衡。

Edge Case 的处理也反映了软件设计的完整性和健壮性。一个优秀的软件设计应该能够处理各种各样的输入和操作情况,包括一些罕见的 Edge Case。这需要设计者有深厚的技术功底,丰富的经验,以及全面的思维。

在讨论 Edge Case 的时候,我们也不能忽视 Corner Case(角落情况)。Corner CaseEdge Case 的一个子集,指的是多个 Edge Case 同时发生的情况。

标签:Case,计算机软件,处理,购物车,商品,Edge,情况
From: https://www.cnblogs.com/sap-jerry/p/17845169.html

相关文章

  • 无涯教程-Ruby Class Case Study函数
    对于您的案Example研究,您将创建一个名为Customer的Ruby类,并将声明两个方法-display_details-此方法将显示客户的详细信息。total_no_of_customers-此方法将显示在系统中创建的客户总数。#!/usr/bin/rubyclassCustomer@@no_of_customers=0definitiali......
  • 【略读论文|时序知识图谱补全】Adaptive Path-Memory Network for Temporal Knowledge
    会议:IJCAI,时间:2023,学校:1中国科学院计算机网络信息中心,北京2中国科学院大学,北京3澳门大学智慧城市物联网国家重点实验室,澳门4香港科技大学(广州),广州5佛罗里达大学计算机科学系,奥兰多摘要:提出一种新的具有TKG关联特征的体系结构建模方法,即自适应路径-记忆网络(DaeMon)。......
  • 【略读论文|时序知识图谱补全】Temporal Knowledge Graph Reasoning with Historical
    会议:AAAI,时间:2023,学校:上海交通大学摘要:大多数时序知识图谱的推理方法高度依赖于事件的递归或周期性,这给推断与缺乏历史交互的实体相关的未来事件带来了挑战。本文提出一种新的基于历史对比学习训练框架的对比事件网络(CENET)的新事件预测模型。1.CENET学习历史和非历史依赖来区......
  • 【略读论文|时序知识图谱补全】Logic and Commonsense-Guided Temporal Knowledge Gra
    会议:AAAI,时间:2023,学校:北京航空航天大学文中谓词可以视为关系。以往的TKG补全(TKGC)方法不能同时表示事件的时效性和因果关系。为了应对这些问题,作者提出了一个逻辑和尝试引导嵌入模型(LCGE),从常识的角度共同学习涉及事件的及时性和因果关系的时间敏感表示,以及事件的时间无关表示......
  • Optimized Content Caching and User Association for Edge Computing in Densely Dep
    目录OptimizedContentCachingandUserAssociationforEdgeComputinginDenselyDeployedHeterogeneousNetworks1、问题背景贡献点:2、系统建模及问题公式化系统建模问题公式化联合内容缓存和用户关联策略智能内容缓存策略动态用户关联方法RA(RapidAssociation)Algorithm:DA......
  • Setence Case using Javascript/SQL Server
    Howto ChangeaaaorAAAtobeAaa<scripttype="text/javascript"language="javascript">functionCorrectName(e){if(e.value!=""&&/^[a-zA-Z]/.test(e.value)){e.value=e.valu......
  • wasmedge 轻量&可扩展&可移植的webassembly 运行时
    wasmedge是一个cncf的沙箱项目,提供了一个强大的webassembly运行时包含的特性高性能 利用了llvm进行AOT编译优化云原生的扩展 提供了非阻塞的网络以及webservice能力的rust,c,jssdk,包含了mysql数据库驱动,keyvalue存储,同时包含了ai的推理支持提供了比较完备的js支......
  • 安装open5GS时出现报错Meson test fails for 9 cases
    错误产生场景 执行下面代码时产生错误,有9个test都失败了$./build/tests/attach/attach##EPCOnly$./build/tests/registration/registration##5GCoreOnly产生原因未安装MongoDB或者未运行MongoDB,或者未运行tun设备解决办法安装open5GS前要先安装MongoDB,并且运......
  • umount 报错umount: /new_room: target is busy. (In some cases useful info
    挂载逻辑卷后,尝试更新逻辑卷的文件系统[root@serverlost+found]#umount/new_room/umount:/new_room:targetisbusy.(Insomecasesusefulinfoaboutprocessesthatusethedeviceisfoundbylsof(8)orfuser(1))报错说繁忙上网查发现我进入......
  • IPQ9574 vs IPQ9554|QCN9274vs QCN6274|WiFi 7Use Case
    IPQ9574vsIPQ9554vs QCN9274vsQCN6274 IndustrialApplications|WiFi7UseCaseAnticipatingtheFuture:ExploringPotentialUseCasesofWi-Fi7Astechnologycontinuestoevolveatarapidpace,theanticipationforthenextgenerationofwirelessconnecti......