首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么文件小写?

"文件名建议只使用小写字母,不使用大写字母。" "为了醒目,某些说明文件文件名,可以使用大写字母,比如README、LICENSE。" 网友看见了,就提问为什么文件小写? ?...但是,如果两个文件名只有大小写不同,其他都相同,跨平台就会出问题。 foobar Foobar FOOBAR fOObAr 上面四个文件名,Windows 系统会把它们都当作foobar。...二、易读性 小写文件名通常比大写文件名更易读,比如accessibility.txt就比ACCESSIBILITY.TXT易读。 有人习惯使用驼峰命名法,单词的第一个字母大写,其他字母小写。...另外,某些常见的配置文件或说明文件,也采用大写的文件名,比如Makefile、INSTALL、CHANGELOG、.Xclients和.Xauthority等等。...所以,用户的文件都采用小写文件名,就很方便与上面这些目录或文件相区分。 如果你打破砂锅问到底,为什么操作系统会采用这样的大写文件名?

72350
您找到你想要的搜索结果了吗?
是的
没有找到

为什么文件小写?

上周,《中文技术文档写作规范》加入了文件的命名规则。 "文件名建议只使用小写字母,不使用大写字母。" "为了醒目,某些说明文件文件名,可以使用大写字母,比如README、LICENSE。"...网友看见了,就提问为什么文件小写? ? 说实话,虽然这是 Linux 传统,我却从没认真想过原因。赶紧查资料,结果发现四个很有说服力的理由,支持这样做。 下面就是这四个理由。...但是,如果两个文件名只有大小写不同,其他都相同,跨平台就会出问题。 foobar Foobar FOOBAR fOObAr 上面四个文件名,Windows 系统会把它们都当作foobar。...另外,某些常见的配置文件或说明文件,也采用大写的文件名,比如Makefile、INSTALL、CHANGELOG、.Xclients和.Xauthority等等。...所以,用户的文件都采用小写文件名,就很方便与上面这些目录或文件相区分。 如果你打破砂锅问到底,为什么操作系统会采用这样的大写文件名?

73860

为什么业务分析师学 PowerBI DAX - 历史演化篇

为什么业务分析师学 Power BI 尤其是 DAX 呢?我们分三文来说清楚。 书接上回。 上回说到: 作为业务分析师,必须具备强大的逻辑。 如果不具备强大的逻辑,无法分析好业务。...下面,最经典的一幅图诞生了: ? 这幅图太经典了,它融合了十年的市场声量历史,没有作假,全部真实。 Excel,代表了基于业务常识可以从零上手的纯业务分析工具。...为什么业务人员学习 DAX ,请大家继续关注,我是罗叔。这就是走了二号路线,即: 基于 Excel 30 年已经证明的业务分析第一范式:单表透视,进一步实现:复杂数据。...下一篇,我们会为你用严密的逻辑揭示为什么必须要学习 DAX。...参考: 为什么业务分析师学 PowerBI DAX - 破解乱象篇 PowerBI 是不是商业智能领域的法拉利 你怎么看

1.7K20

为什么CC++分成头文件和源文件

C/C++将代码分为头文件(.h)和源文件(.cpp)的主要目的是为了提高代码的可重用性和编译效率。 头文件(Header File)通常具有.h的文件扩展名。...头文件中不包含实际的代码实现,主要用于定义接口和提供声明,这使得其他源文件可以调用头文件中定义的函数、类或变量。头文件类似于一个合同,它告诉其他文件可以期望调用的函数名、参数类型和返回值类型。...源文件(Source File)通常具有.cpp的文件扩展名。它包含了具体的代码实现,即定义函数、类和变量的具体细节。源文件中通过包含相应的头文件,可以使用头文件中定义的函数、类或变量。...①可重用性:头文件中通常包含类、结构体、函数的声明,而源文件包含这些实体的具体实现。将声明和实现分离可以使头文件成为代码的接口,方便其他文件调用和重用。...而将声明放在头文件中,可以让编译器仅编译需要更新的源文件和引用了该头文件的其他源文件,从而提高编译效率。 ③接口隐藏:模块的接口声明放在头文件中,可以隐藏模块的具体实现细节,只向外展示必要的接口信息。

62110

世界难题-JAVA为什么生成Class文件

后来仔细查了一下class文件的作用。我想javaer都清楚class文件是作为jvm的可执行文件,与C/C++的机器码文件不一样,它是字节码文件。...字节码文件的好处: 1、对源代码文件进行语法检查、语义分析,这一步骤消耗了大量的时间和资源,所以对jvm来说就要轻松多了。 2、更加抽象,一次编译到处执行,这是java的宣传口号。...当然字节码文件是与平台无关的。(这点是在别资料上看到的,感觉源代码文件跨平台也是没问题的,例如python) 3、字节码文件可以看作是对源代码文件的压缩封装,占用更少的存储空间以及更快的传输速度。...自己再扩展下问题:考虑大胡子James在设计java时为什么要求在执行之前,先编译成class文件?如果是我,更倾向于将源文件直接交给jvm执行,省去javac的步骤进而由jvm自己编译。...好处是程序员不用关注编译路径是否配置、源代码文件是否都编译通过、是否有个别文件的class文件没有生成、源代码与class版本是否一致等问题。

1.1K30

WPF 的 Dispatcher 为什么创建一个隐藏窗口?

然而 C 不满足于只看到这个结论,他更期望知道为什么 WPF 一定要创建这个隐藏的窗口。其实对这个问题我也不知道答案,但在和他深入的探讨以及不断寻找资料的过程中,我们逐渐得知了缘由。...当然,特别感谢 C 提出了这个问题,并在讨论过程中给出了关键性的推理。...可是,为什么会丢失呢? 隐藏窗口的解答 我和 C 的探讨差点在上述阶段终止时,C 猛然意识到了上述现象的本质原因。是的,这就是本文疑问的最本质解答!...而开发者们为什么自己去开消息循环呢?这不就是众所周知的“模态”吗???弹模态对话框的本质就是开了一个新的消息循环处理消息的同时,阻塞原来的消息循环。...另外,拖拽文件、拖拽窗口,本质上都是开了一个新的消息循环处理消息。

18120

为什么创建以开发人员为中心的 Kubernetes 平台,以及如何创建

为什么创建以开发人员为中心的 Kubernetes 平台,以及如何创建 翻译自 Why Create a Developer-Focused Kubernetes Platform and How 。...让我们看看为什么创建一个有意义的,然后探索构建它所需的组件。 在不断增长的云原生开发领域中,Kubernetes 已经成为组织的事实标准。...考虑到这一点,让我们看看为什么创建一个以开发人员为中心的 Kubernetes 平台是有意义的,然后探索构建它需要哪些组件。...创建一个面向开发者自助服务平台可以使他们专注于战略项目并支持持续改进。 集中关键数据。团队需要实时数据来收集洞察力,以了解哪些有效,哪些无效。...在此步骤中创建的开发环境和工作流程有助于实现每个组织所追求的开发人员生产力提高目标,这就是为什么正确处理平台的这一部分至关重要。

7510

为什么使用SaveFileDialog创建文件需要删除权限?

假设有一个文件夹,用户有几乎所有权限,但没有删除的权限,如下图所示: ? 这时候使用SaveFileDialog在这个文件夹里创建文件居然会报如下错误: ? 这哪里是网络位置了,我又哪里去找个管理员?...更奇怪的是,虽然报错了,但文件还是会创建出来,不过这是个空文件。不仅WPF,普通的记事本也会有这个问题,SaveFileDialog会创建一个空文件,记事本则没有被保存。具体可以看以下GIF: ?...问题原因 其实当SaveFileDialog关闭前,对话框会创建一个测试文件,用于检查文件名、文件权限等,然后又删除它。...所以如果有文件创建权限,而没有文件的删除权限,在创建测试文件后就没办法删除这个测试文件,这时候就会报错,而测试文件留了下来。 有没有发现SaveFileDialog中有一个属性Options?...protected int Options { get; } 本来应该可以设置一个NOTESTFILECREATE的标志位,但WPF中这个属性是只读的,所以WPF的SaveFileDialog肯定会创建测试文件

84520

面试题:你为什么无法创建一个文件

“你为什么无法创建一个文件”,就是好问题,而“如何在 NodeJS 中执行 XYZ”或“如何配置 NGINX”,就不是一个好问题。 现在,来梳理一下这个问题。...1、磁盘空间不足 这可能是最简单的答案之一,文件需要保存在磁盘上,无论服务器是 Windows 还是 Linux,无论是本地创建还是远程创建,只要磁盘空间不足,那一定是无法写入文件的。...space」排除这个原因很简单,查看磁盘空间即可: Windows: Wmic logicaldisk Linux: df -h 2、权限问题 最常见的是 Linux 普通用户在不属于自己家的目录下创建文件会报错...创建文件同样消耗 CPU 和内存,资源不足时,创建文件的进程长时间处于等待状态,此时也是无法创建文件的,这种情况的现象是卡住,而不是报错。...7、Linux Inode 耗尽 一个操作系统的文件数量也是有限的,超过了最大的文件数量,就无法再创建文件。Inode 存储了一个文件或目录的元数据,Inode 的数量很难耗尽,但并不意味着不可能。

52610

docker部署dist文件重新创建新镜像和容器吗

重新创建新镜像和容器:如果你的dist文件发生了更改,一种方法是构建一个新的镜像,将最新的dist文件添加到其中,然后使用这个新的镜像创建一个新的容器。...创建一个新的容器:使用原始镜像创建一个新的容器,并将新的dist文件挂载到容器中。你可以使用docker run命令,并使用-v参数将主机的dist目录映射到容器内部的相应位置。...在新容器中将新的dist文件复制到合适的位置,替换原有的dist文件。退出临时容器。创建一个新的容器:使用原始镜像创建一个新的容器。...在Docker中,"build" 是指使用 Dockerfile 文件和相关的上下文(包含构建所需的文件)来创建一个新的镜像的过程。...定义容器启动时执行的命令或程序:使用 CMD 或 ENTRYPOINT 指令定义容器启动后执行的命令或程序。

22120

阿里面试官鬼得很,问我为什么他们阿里禁用Executors创建线程池?

通过线程池复用线程有以下几点优点: 减少资源创建 => 减少内存开销,创建线程占用内存 降低系统开销 => 创建线程需要时间,会延迟处理的请求 提高稳定稳定性 => 避免无限创建线程引起的OutOfMemoryError...【简称OOM】 # Executors创建线程池的方式 根据返回的对象类型创建线程池可以分为三类: 创建返回ThreadPoolExecutor对象 创建返回ScheduleThreadPoolExecutor...对象 创建返回ForkJoinPool对象 本文只讨论创建返回ThreadPoolExecutor对象 # ThreadPoolExecutor对象 在介绍Executors创建线程池方法前先介绍一下...Integer.MAX_VALUE,可能会创建大量的线程,从而引起OOM异常 这就是为什么禁止使用Executors去创建线程池,而是推荐自己去创建ThreadPoolExecutor的原因 # OOM...CachedThreadPool,往线程池中无限添加线程 在启动测试类之前先将JVM内存调整小一点,不然很容易将电脑跑出问题【别问我为什么知道,是铁憨憨甜没错了!!!】

47420

编辑器VSCode使用心得

vscode是我今天重点介绍的一款编辑器,微软开源,github-star:66k 官网地址:https://code.visualstudio.com/ 大概是从去年年初的时候接触到vscode,...查看文件的前一个副本。 查看和搜索历史 查看一个或所有分支的历史(git日志) 查看文件历史记录 查看文件中某一行的历史(Git fault)。...查看作者的历史 比较: 比较分支 比较有 跨提交比较文件 其他特点: Github化身 挑选提交 重新提交 从提交创建分支 树状视图中的视图提交信息(所有更改的快照) 合并和变基 ?...关于vscode的一些小建议 vscode支持命令行,可以通过命令行按照依赖包,类似于:npm install 但是不建议在命令行中启动项目,类似于:npm start 为什么?...当你重启编辑器的时候,服务也会跟着重启,你会说了,我为什么重启编辑器呢?

1.3K30
领券