X-Y问题

什么是X-Y问题

X-Y问题就是有人想解决问题X,他觉得Y可能是解决X的方法但不知道Y怎么做;在我们的工作中,需求方给出的来的是Y,而软件工程师不知道需要解决的X是什么。

我理解的X-Y问题是没有找到问题的本质,而在错误的解决方案上浪费时间

避免X-Y问题

遇事目标要明确,多探究问题的本质

下面引用书中的一个例子:

Q :我怎么用Shell取得一个字符串的后3位字符
A1: 如果这个字符的变量是 $foo,你可以这样来, echo${foo:-3}
A2: 为什么你要取后3位?你想干什么?

Q: 其实我就想取文件的扩展名。
A1: 天呐,原来你要干这件事,那我的方法不对,文件的扩展名并不保证一定有3位啊。
A1: 如果你的文件必然有扩展名的话,你可以这样来做, echo${foo##*.}

Original: https://www.cnblogs.com/daydreamer-fs/p/16753683.html
Author: fogey
Title: X-Y问题

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/616632/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • C++实现双向RRT算法

    C++实现双向RRT算法 背景介绍 RRT(Rapidly-exploring Random Trees)是Steven M. LaValle和James J. Kuffner J…

    Java 2023年6月8日
    071
  • java类型转换的例子

    犹由于java是强类型语言,所以进行一些运算的时候,必须进行类型转换运行中不同类型数据先转为同一类型再进行运算 /*注意点:1.不能对布尔值进行转换2.不能把对象类型转换为不相干的…

    Java 2023年6月6日
    065
  • Spring-AOP

    AOP操作 百度百科:在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一…

    Java 2023年6月8日
    082
  • springboot: mchange-commons-java-0.2.11.jar (系统找不到指定的文件)

    Springboot框架,引入C3P0,启动出现Bug The Class-Path manifest attribute in D:\develop\maven\reposito…

    Java 2023年5月29日
    063
  • Java连载154-IO总结(一)

    一、类图 基本上IO可以分为字节流和字符流 二、字符大小 一般来说一个字母占用一个字节,一个汉字占用两个字节。具体还要看字符编码,比如说在 UTF-8 编码下,一个英文字母(不分大…

    Java 2023年6月13日
    078
  • 注解和反射

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月7日
    079
  • Markdown基本操作

    Markdowm学习 1)添加标题 一 ~ 六级标题的添加: 一级:# + 标题 二级:## + 标题 ……………&#8…

    Java 2023年6月15日
    072
  • 从一个类上获取不到注解的原因

    从一个类上获取不到注解的原因 场景 定义一个注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) pub…

    Java 2023年6月8日
    069
  • 机器学习(6)K近邻算法

    k-近邻,通过离你最近的来判断你的类别 例子: 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近的样本中大多数属于某一类别),则该样本属于这个类别 K近邻需要做标准化…

    Java 2023年6月8日
    070
  • Arrays.asList() 示例

    1 package Test.others; 2 3 import java.util.Arrays; 4 import java.util.Collections; 5 impo…

    Java 2023年6月8日
    092
  • 线程不安全

    众所周知,多线程访问同一公共资源会带来线程的不安全,本文探讨一下这个问题的若干细节。 关于线程安全的基本问题 有关线程安全常涉及两个概念: 竞态条件:当两个线程竞争同一资源时,如果…

    Java 2023年5月30日
    062
  • JAVA正则表达式判断元音

    /* 判断字符串”qaq”中间的字符是否是元音* aeiou* AEIOU**/ (1)正则表达式 (2) (3) Original: https://ww…

    Java 2023年6月5日
    079
  • springAOP和AspectJ有关系吗?如何使用springAOP面向切面编程

    不知道大家有没有这样的感觉,平时经常说aop,但是对aop中的一些概念还是模糊,总感觉很飘渺,今天来梳理下关于aop的知识。 一、概念 我们知道现在开发都是spring,讲的最多的…

    Java 2023年6月9日
    098
  • 「免费开源」基于Vue和Quasar的前端SPA项目crudapi后台管理系统实战之数据库逆向(十二)

    基于Vue和Quasar的前端SPA项目实战之数据库逆向(十二) 回顾 通过之前文章基于Vue和Quasar的前端SPA项目实战之动态表单(五)的介绍,实现了动态表单功能。如果是全…

    Java 2023年6月6日
    0146
  • 3、StringBuffer类

    StringBuffer类 java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删 很多方法与String相同,但StringBuffer是可变长…

    Java 2023年6月7日
    077
  • 权限管理系统之SpringBoot集成LayUI实现后台管理首页

    万事开头难,昨天一直在构思用户权限管理系统怎么实现,实现哪些需求,采用什么技术等,也在网上百度了好多,计划使用SpringBoot + Mybatis + thymeleaf + …

    Java 2023年5月30日
    0151
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球