问题

这种代码的思路是什么?

回答
你给的代码,我来给你好好掰扯掰扯。

首先,它不是那种直接告诉你“这样做”或者“那样做”的死板指令。它更像是在教会你一种思考问题的方式,一种解决问题的套路。你想啊,编程就像是在跟机器对话,让它按照我们的想法去办事。这代码呢,就是我们用来跟机器“沟通”的语言,但它里面蕴含的,是一种“智能”的逻辑。

想象一下,你在玩一个游戏,有很多关卡,每个关卡都有不同的挑战。你不可能一套招式打天下,对吧?得根据关卡的情况,灵活运用你的技能。这代码也是类似。它不是给你一杆子打死的答案,而是给你一套工具箱,里面装着各种“招式”和“策略”。

它的核心思路,我觉得可以概括为“分而治之”和“迭代优化”。

“分而治之”,听起来有点高大上,其实就是把一个大问题,拆解成一个个小问题。就像你面对一大堆衣服,你不会一股脑儿全洗,而是会先分类:白色的、彩色的、需要手洗的、可以机洗的。这代码也是一样,它把一个复杂的任务,拆成了一小段一小段的、更容易理解和处理的部分。每个小部分都有自己的任务,完成了自己的任务,再把结果汇集起来,最终就完成了整个大任务。这样一来,问题就不那么吓人了,也更容易找到解决的办法。

“迭代优化”,这个也好理解。你第一次写代码,可能不是最好的,也可能有很多bug。你会发现问题,然后去修改,去改进,让它运行得更顺畅,结果更准确。这个过程就是迭代。代码里的很多东西,就是在不断地尝试、反馈、修正中变得越来越好。它不是一次就到位,而是像一个不断学习和进步的过程。你可能会看到一些循环,一些判断,这些都是它在“试错”和“调整”的证据。

再具体一点,这代码可能还在告诉你“数据驱动”。它不是凭空想象,而是要处理实际的数据。这些数据就像是原材料,代码就是加工厂。它会根据数据的特点,去进行计算、分析、转换,最终得出有用的结果。所以,理解数据是什么,它有什么样的规律,对理解这段代码至关重要。

还有一点,它可能在强调“模块化”。就像乐高积木一样,你可以把不同的积木组合起来,搭建出各种各样的东西。代码也是这样,把它分成一个个独立的功能模块,每个模块负责一件事,然后把这些模块像乐高一样拼起来,就能实现更复杂的功能。这样做的最大好处是,当你想修改某一部分功能时,你只需要动那一个小小的模块,而不会影响到其他部分,大大提高了效率。

总的来说,这段代码传递的不是一个简单的“怎么做”,而是一种“怎么想”的哲学。它鼓励你去理解问题的本质,去拆解复杂性,去用一种灵活、迭代的方式去解决它。它让你成为一个“问题解决者”,而不是一个简单的“指令执行者”。它是在培养你的一种编程的“韧性”和“智慧”。

网友意见

user avatar

这个"F1 M 20,20L 24,10L 24,24L 5,24"是路径描述语言,是W3C搞的,

画SVG就要用这个。

以前微软搞自己的,你们说他封闭;

现在人家遵守W3C的规则。你们嫌他丑。

真难伺候。

&#x221A 是HTML编码,你没写过,就去找个网站F12。看看人家特殊符号是怎么表示的。

明明是自己无知,还要把标准批判一番。

这些人还真是……

------------------------------

目测没有人提改进的,全是在护软。

来来来,我强行护个软给你看。

为什么要提供路径描述语言的解决方案?

这需要解释么?因为自由啊。

我不清楚微软这个方案能不能用路径生成不规则的icon,但是至少应该是可以弄出不规则的icon背景的。

只要字符串就可以随心所欲的绘制icon,然后靠修改fill属性就能制造一组表示不同action的icon,比起缓存一堆PNG不知道高到哪里去了。当然,缺点是这种只能画矢量的,也就是微软modern风格的icon。

计算方法在这里:

d - SVG | MDN

为什么不把html编码都做成枚举?

说你naive你还不信。

这东西做成枚举改个好读的名字真能提高可读性改善开发效率的话,

W3C早做了,还轮得到微软来搞?

HTML URL 编码

你当然可以自己弄个变量存自己常用的,但是这么多都起个名,某些字符的代号可能会长得让人恶心,完全起不到改善编程体验的作用。

而且M$家的VS是可以直接查看这些蛋疼的编码的,鼠标指上去就行了,并不会显著影响阅读。

至于这个

Symbol enumeration

,这是人家M$特有的,不是W3C的,当然不能用人家的编码方式,万一W3C加个字符然后冲突了,蛤蛤蛤蛤蛤。

还好我的工作不是在微软平台上写代码,看这个纯为找茬。

说实话,我写这个也并不是为了科普,就是看题主觉得瑟觉得不爽,上来弹压弹压他。

-----------------------------------

最后,利益相关:

WPF和ASP.NET使用者

user avatar

你首先要搞清楚这是不是微软设计的。



我也很不喜欢这种东西啊。

我还很讨厌XML/HTML/SGML里面表示连续的可以换行的空格都要用各种黑科技呢。


但是微软应该重新发明一套标记语言来描述界面么?

到时候估计你爽了,大家都骂娘了。

所以说,你兹辞不兹辞根本没人在意好不。括弧笑。



===================================================================

问题修改后的补充

官方文档一共写了四个Example,描述了四种怎么搞个AppBarButton的方式,然后你说这文档写的好烂啊,为啥不用第一种方式呢?

旁友,你这黑微软的思路真的是很惊奇啊。


Quickstart: Adding app bar buttons (Windows)

文档截图附于下:






====================================================================

我们还是别来谈代码的思路了,还是来谈谈您黑微软的惊奇的思路吧。

首先最初的问题是指出XML Entity和SVG的可读性很差,这个我不反对,我一直觉得W3C那群书呆子从来没有一个优美的方案出来,全TM充斥着各种奇怪的语法规则。譬如说XPath的里面的表达式,加是+,减是-,乘是*,除是div。

然而,然而,这俩奇葩的语法根本就不是微软发明的啊。


被人指出错误后,阁下马上改口,表示,我见的多了,美国那个华莱士,比你们不知道高哪里去了,,,,,,这种东西我还会不知道么,我就是说微软明明有更好的方案,为啥要写这么恶心的东西在这里呢?


然而,然而,这是Example啊,微软列举了四种方案,没有非要你用哪一种,而是根据实际情况选择最合适的。



然后阁下又要改口了,连理由我都帮您想好了。

你看微软搞个图标都这么多种方案,没有一个好用的,就是垃圾。



嗨,您要黑微软就直说嘛,假惺惺的提问干啥?搞得我们还以为是什么初学者没被W3C虐过诉苦来了。


话说我们大家根本不是什么护软,而是您这黑的实在太低级了。

.NET那一堆黑点找哪个不好,,,

譬如说那个该死的cache-control自动给值的问题直到4.5.2才加个破属性来关闭:

HttpResponse.SuppressDefaultCacheControlHeader 属性 (System.Web) Google那个事儿逼非说这么个破Header影响这影响那,搞得我只好写个HttpModule强行注入进去干掉(.NET Framework 4.5.2之前)。


譬如说这个莫名其妙的强修Bug的方法:

HttpCachePolicy.SetOmitVaryStar 方法 (System.Web)

譬如说这个Host标头在.NET Framework 4之前是不能被设置的:

HttpWebRequest.Host 属性 (System.Net)

还有Uri类型对传进去的URL字符串到底是编码了还是没编码的纠结处理太多槽可以吐了。

您要来一起吐槽我们也是很欢迎的,但是这种侮辱大家友善度的东西,还是少点吧。

类似的话题

  • 回答
    你给的代码,我来给你好好掰扯掰扯。首先,它不是那种直接告诉你“这样做”或者“那样做”的死板指令。它更像是在教会你一种思考问题的方式,一种解决问题的套路。你想啊,编程就像是在跟机器对话,让它按照我们的想法去办事。这代码呢,就是我们用来跟机器“沟通”的语言,但它里面蕴含的,是一种“智能”的逻辑。想象一下.............
  • 回答
    开源代码里一个函数长得吓人,这可不是什么好事。 一个好的函数,或者说一个编写得当的函数,通常都应该像一个精密的工具,各司其职,短小精悍。 当你在开源项目中看到一个函数,它像一本小册子一样长,里面塞满了各种逻辑,那绝对是一个危险信号。首先,这种超长的函数往往意味着它承担了过多的职责。 一个设计良好.............
  • 回答
    这事儿啊,真挺让人琢磨的。教授那么说,估计是想给大家打个预防针,意思是想在大厂混出头,光会写个小 demo,或者写点三瓜两枣的逻辑,那肯定是不够的。但如果说“没写过一千行以上代码的程序就别想上大公司”,这话可能就有点绝对了。咱们得这么看,大公司招人,特别是技术岗,看重的不止是代码量。你看啊:首先,得.............
  • 回答
    关于纳斯达克股票代码的选择,事实上是有一些规则和考量的,并非完全随意。但之所以我们看到一些中国公司使用了类似GAME、DATE、JOBS这样富有含义的单词作为股票代码,这背后其实涉及到一些市场运作的惯例和历史因素。首先,纳斯达克对于股票代码的“含义”其实更多的是一种巧合,而非主动的设计。纳斯达克作为.............
  • 回答
    看到麻省理工博士胡渊鸣用代码实现“冰雪奇缘”这样的壮举,确实会让人产生一种既兴奋又有些失落的感觉。兴奋的是看到了技术能达到的高度,失落的是觉得自己与这种创造力、才华还有一定的距离。这种“自卑感”的出现是很自然的,它是一种对自身不足的认知,但关键在于我们如何处理这种情绪,让它成为我们前进的动力,而不是.............
  • 回答
    .......
  • 回答
    好的,咱们来好好聊聊这几行代码,就像跟老朋友聊天一样,把它们的意思掰开了揉碎了讲清楚,保证让你明白它们到底在干什么。首先,我需要看到你想让我解释的代码。请你把那几行代码发给我。一旦我看到了它们,我就会像一个经验丰富的师傅,耐心地为你剖析每一部分: 它们是做什么用的? 它们是不是在给变量赋值?是不.............
  • 回答
    好的,咱们一起来聊聊怎么看懂这两份代码的时间复杂度,保证说得清清楚楚,就像咱俩面对面唠嗑一样,一点AI痕迹都没有。首先,咱们得知道,时间复杂度是个啥东西。简单来说,它就是衡量一个算法跑起来需要多久,但不是精确到秒,而是看它随着输入数据量的增大,运行时间大概会怎么增长。我们通常用大O表示法(O(n)).............
  • 回答
    你提供的这段代码,想要了解它具体是怎么引发报错的,我需要先知道代码本身是什么样子。毕竟,不同的代码,报错的原因和过程千差万别。不过,我可以先给你讲讲,通常情况下,我们是怎么一步步找到并理解代码错误的,以及可能出现的一些常见报错场景。这样,当你把代码发过来时,你也能更好地理解我的分析。一、 报错的“诞.............
  • 回答
    哈哈,哥们儿,一个多小时写这点代码,我可太能理解你了!这速度嘛,别太往心里去,毕竟你刚入行,新手期这都是必经之路。让我来跟你掰扯掰扯,这大概是个啥水平,以及为啥会这样。首先,咱们得明确一下,“手速”这个词在编程里,跟打字速度那可不是一码事。打字是纯粹的肌肉记忆和指法熟练度,而编程呢,它是个脑力活儿,.............
  • 回答
    英国王室所代表的君主立宪制度,从其根基而言,确实带有“生来不平等”的属性。这一点毋庸置疑。毕竟,君主制最核心的特征就是世袭制,权力与地位从父及子,一代代传承下去,与个人的能力、品德或后天努力毫无关系。出生在王室,就意味着天生拥有了普通人难以企及的特权、财富和影响力。这种制度设计本身,就与现代社会推崇.............
  • 回答
    .NET 中利用 Razor 引擎生成代码,本质上是赋予你的 HTML 标记动态能力。Razor 视图引擎允许你将 C 代码片段无缝地嵌入到 HTML 标记中,从而实现服务器端的数据渲染。这种方式让你可以根据服务器上的数据动态地构建 HTML 结构,让页面内容变得鲜活起来。我们来深入探讨一下这个过程.............
  • 回答
    .......
  • 回答
    .......
  • 回答
    这段 Java 代码中的局部变量,理论上确实存在被提前回收的可能性。不过,这里的“提前回收”并非我们直观理解的,在代码执行完毕前就完全从内存中消失。更准确的说法是,这些局部变量的内存占用可以在其生命周期结束后,但不等到方法执行结束就被JVM判定为“无用”,从而有机会被垃圾回收器(Garbage Co.............
  • 回答
    别急,我这就给你把这段代码扒个底儿掉!咱们一步一步来,确保你完全明白它怎么回事,就像是你自己写出来的一样。保证让你觉得“这事儿我懂了!”为了让解释更清晰,请你把代码发给我。我需要看到具体的代码内容,才能给你最准确、最贴切的解释。当你把代码发过来之后,我会按照这个思路给你讲解:1. 代码的整体定位:.............
  • 回答
    这句话呀,用大白话来说,就是C语言之所以被誉为“代码的精髓”,是因为它让你能够非常深入地接触和理解计算机最底层的运作方式,这就像打开了一扇通往全新世界的门,让你看到平常玩手机、用电脑时你看不到的那些“幕后故事”。你想想,我们平时用的很多软件,比如操作系统(Windows、macOS),或者很多其他语.............
  • 回答
    一个程序员写的代码质量差,导致后续维护困难,这事儿吧,从法律角度讲,情况挺复杂的,不能一概而论说“一定有责任”或者“绝对没责任”。得看具体情况,细掰扯一下。首先,我们要明确一个概念:合同关系。一般情况下,程序员为公司或客户写代码,是建立在某种形式的合同关系上的。这个合同可能是劳动合同(如果是公司内部.............
  • 回答
    《这就是铁甲》里的极速代码,那绝对是让人看了心潮澎湃的存在。要说它为什么这么厉害,得从好几个方面细细道来。首先,最直观的,就是它名字里就带着的“极速”。在那个所有机甲都在争分夺秒的赛场上,速度就是生命,就是胜利的敲门砖。极速代码的动力系统和传动系统,肯定是经过了极致的优化和调校。你想想,在无数次高强.............
  • 回答
    关于“老外代报案”这个说法,其实有点笼统,也可能指向一些不太清晰的灰色地带。我们得先弄清楚,这里说的“代报案”具体是指什么,才能更准确地判断它是否涉及什么“耻辱”的问题。首先,得明确一点,在中国,无论什么国籍的人,遇到任何违法或需要警方介入的情况,最直接、最正规的途径就是直接报警。拨打110,或者前.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有