목차
回复内容:
백엔드 개발 파이썬 튜토리얼 为什么Windows不内置Perl,Python等编程语言环境?

为什么Windows不内置Perl,Python等编程语言环境?

Jun 06, 2016 pm 04:23 PM
javascript perl powershell python script

OS X和绝大部分Linux发行版都内置Python,Perl,Ruby等编程语言环境,无论是对开发者还是普通用户都是好事,开发者在写程序的时候会有很多选择,不用担心目标机器上没有这一种语言环境而寻找替代,用户也可以拿过去直接运行;运维人员在大规模部署一些脚本的时候也可以省心很多。 为什么微软却不这样做呢?是怕威胁到自家推的产品吗?

PS:微软自家的Script Center里也有Perl和Python的分类。
Powershell, VB Script, SQL and JavaScript
为什么Windows不内置Perl,Python等编程语言环境?

回复内容:

其中一个原因是需求吧。比如说 FreeBSD 系统曾经把 perl 默认安装,作为系统级别的组件。后来因为种种原因又把 perl 剔出系统,用 awk 做了个替代。因此,现在默认安装最新版的 FreeBSD 里面没有 python,也没有 perl 更别提 ruby 了。

而 Mac OS X 和 Linux 默认安装这些语言肯定是有原因的。有的可能是其他软件的依赖,比如 GNOME 桌面就非常依赖 python。一些服务软件依赖 perl,而 FreeBSD 一个流行的包管理系统就依赖 ruby 等。

反观 windows,这个系统根本没有这些需求。不安装也在情理之中。(FreeBSD 这一点倒是和 windows 类似) 要是Windows内置了Python,你现在写程序的时候,照顾Vista你只用兼容到Python 2.5,还要还考虑XP,你连Python 2.1甚至Python 1.6都要兼容。 Windows 也内置了很多编程环境啊
VBScript
PowerShell
这些都是啊,只不过都是微软自家出品 Ubuntu虽然自带了python,却连C/C++的基本编译环境都没有,码农安装之后第一件事儿就是安装build-essential。
这说明了,Ubuntu自带python,不是让用户写脚本用的,而是因为系统里很多模块是需要运行在python环境里
(Ubuntu软件中心就依赖于python,就因为它依赖2.7,导致我想系统默认使用2.6都难,可我偏偏有一些2.6的pyc程序需要运行,你知道有多别扭么?)
显然,Windows就不用。
=========
Linux发行版、Mac OS,讲究的是包管理,模块分离,版本依赖。当你需要安装某个软件,相关依赖的底层模块会被自动安装。
Windows讲究的是一个完整的安装包,除了微软自己的.Net Framework、Direct X等通用底层平台外,绝大部分软件都是将自己需要的模块打包在一起安装。
以上这两种模式,都不需要预先安装一堆各种编程语言底层平台(目标机器上有没有啊,大规模部署怎么办啊)。这可以说是从不同方向探索出来的两套可行方案。
=========
Linux发行版、Mac OS,其平台上的软件很多来自于社区贡献,所以难免基于多种语言。
Windows都是微软自己开发的,底层平台统一,这是它的优势。 Windows跟Linux是两个不同风格的体系。

Win:简单易用,但是开发上略显粗犷。重视简单操作。
Linux:开源化、多元化。CGI还是很常用的,不可避免地需要各种功能强大的脚本类或者shell类脚本。

相比之下,我觉得Windows提供的更多的是“整机”。而Linux提供的更多的是“零部件”。而出于这个原因,Linux下面也就需要各种“加工厂”(也就是Perl啊Python啊之类的了)。当然,各有各的好处。整机对使用者的要求更多的是如何去操作,而加工厂则要求使用者学会一定的设计才能够得心应手。后者的起点会高一些,但是达到一定层级之后,Linux下一个使用者则会明显感觉到自己的自由度会很高。

说道为什么不内置,那其实原因也很简单了。日常中需要完成的大部分操作应该已经有存在的软件了,小部分的循环性操作,批处理也差不多搞定了。偶尔遇到一个开发,一般的IDE也可以搞定了,makefile什么的也就不一样了。

从微软的利益角度考虑来看的,那就不只是这些了。如果内置了这么多东西,让大家都去使用这些工具,接受Unix思想的洗礼,那么微软的生态环境以及产品还如何更好推广呢?

差不多了,我觉得我考虑的就是这些。 主要是因为内置了也没人用……而且自己去下载一个安装包安装也不是什么难事…… Windows 带了 ScriptHost 呀,直接上 VBS 或者 JS 就是了。呀,您就喜欢 perl/python ?M$ 不喜欢行不行? 其实我也不确定,猜的。

1. 系统面向群体,windows本来就是面向普罗大众,Perl和Python这些语言,除了增加系统体积,完全没用。如果是工程师,安装起来也很简单吧。

2. 系统内核,Win 系统一向只附带自己的产品,从内核到外部所有的东西都是Microsoft自家的,加上这些开源的语言,同时是个闭源的系统,实在别扭。Linux等等本身就偏Geek,同时这些语言也是优先在这个平台上产生,也是开源软件,基因相同。

以上,可能都是错的。 因为Windows是GUI系统。而GUI应用基本都是用C API(Windows API)和.NET API开发的 @李遥 提到了 GUI,挺对。

但我以为,问题的实(cao)质(dian)还能进一步——

因为 Windows 的 GUI 做不到家,于是想方设法要和「命令行」划清界线。
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Windows 8에서 코드를 실행할 수 있습니다 Windows 8에서 코드를 실행할 수 있습니다 Apr 15, 2025 pm 07:24 PM

VS 코드는 Windows 8에서 실행될 수 있지만 경험은 크지 않을 수 있습니다. 먼저 시스템이 최신 패치로 업데이트되었는지 확인한 다음 시스템 아키텍처와 일치하는 VS 코드 설치 패키지를 다운로드하여 프롬프트대로 설치하십시오. 설치 후 일부 확장은 Windows 8과 호환되지 않을 수 있으며 대체 확장을 찾거나 가상 시스템에서 새로운 Windows 시스템을 사용해야합니다. 필요한 연장을 설치하여 제대로 작동하는지 확인하십시오. Windows 8에서는 VS 코드가 가능하지만 더 나은 개발 경험과 보안을 위해 새로운 Windows 시스템으로 업그레이드하는 것이 좋습니다.

VScode 확장자가 악의적입니까? VScode 확장자가 악의적입니까? Apr 15, 2025 pm 07:57 PM

VS 코드 확장은 악의적 인 코드 숨기기, 취약성 악용 및 합법적 인 확장으로 자위하는 등 악성 위험을 초래합니다. 악의적 인 확장을 식별하는 방법에는 게시자 확인, 주석 읽기, 코드 확인 및주의해서 설치가 포함됩니다. 보안 조치에는 보안 인식, 좋은 습관, 정기적 인 업데이트 및 바이러스 백신 소프트웨어도 포함됩니다.

터미널 VSCODE에서 프로그램을 실행하는 방법 터미널 VSCODE에서 프로그램을 실행하는 방법 Apr 15, 2025 pm 06:42 PM

vs 코드에서는 다음 단계를 통해 터미널에서 프로그램을 실행할 수 있습니다. 코드를 준비하고 통합 터미널을 열어 코드 디렉토리가 터미널 작업 디렉토리와 일치하는지 확인하십시오. 프로그래밍 언어 (예 : Python의 Python Your_file_name.py)에 따라 실행 명령을 선택하여 성공적으로 실행되는지 여부를 확인하고 오류를 해결하십시오. 디버거를 사용하여 디버깅 효율을 향상시킵니다.

PHP와 Python 중에서 선택 : 가이드 PHP와 Python 중에서 선택 : 가이드 Apr 18, 2025 am 12:24 AM

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

PHP와 Python : 다른 패러다임이 설명되었습니다 PHP와 Python : 다른 패러다임이 설명되었습니다 Apr 18, 2025 am 12:26 AM

PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

Python에서 비주얼 스튜디오 코드를 사용할 수 있습니다 Python에서 비주얼 스튜디오 코드를 사용할 수 있습니다 Apr 15, 2025 pm 08:18 PM

VS 코드는 파이썬을 작성하는 데 사용될 수 있으며 파이썬 애플리케이션을 개발하기에 이상적인 도구가되는 많은 기능을 제공합니다. 사용자는 다음을 수행 할 수 있습니다. Python 확장 기능을 설치하여 코드 완료, 구문 강조 및 디버깅과 같은 기능을 얻습니다. 디버거를 사용하여 코드를 단계별로 추적하고 오류를 찾아 수정하십시오. 버전 제어를 위해 git을 통합합니다. 코드 서식 도구를 사용하여 코드 일관성을 유지하십시오. 라인 도구를 사용하여 잠재적 인 문제를 미리 발견하십시오.

vScode를 Mac에 사용할 수 있습니다 vScode를 Mac에 사용할 수 있습니다 Apr 15, 2025 pm 07:36 PM

VS 코드는 Mac에서 사용할 수 있습니다. 강력한 확장, GIT 통합, 터미널 및 디버거가 있으며 풍부한 설정 옵션도 제공합니다. 그러나 특히 대규모 프로젝트 또는 고도로 전문적인 개발의 경우 VS 코드는 성능 또는 기능 제한을 가질 수 있습니다.

vscode가 ipynb를 실행할 수 있습니다 vscode가 ipynb를 실행할 수 있습니다 Apr 15, 2025 pm 07:30 PM

Code vs Code에서 Jupyter 노트북을 실행하는 핵심은 Python 환경이 올바르게 구성되어 있는지 확인하고 코드 실행 순서가 셀 순서와 일치하고 성능에 영향을 줄 수있는 큰 파일 또는 외부 라이브러리를 알고 있어야합니다. VS 코드에서 제공하는 코드 완료 및 디버깅 기능은 코딩 효율성을 크게 향상시키고 오류를 줄일 수 있습니다.

See all articles