PHP 是一门高级语言吗?为什么总是被其他语言黑?
ps。 我知道高级语言不一定“高端”。但问题是,既然属于高级语言,既然图灵完备,为什么会“低端”。哪里招惹其他语言了?
回复内容:
N卡和A卡其实都很牛逼,但是你看N卡党和A卡党还不是互相黑来黑去的?iOS 和 Android 其实都很牛逼,但是你看 iOS 党和 Android 党还不是互相黑来黑去的?
同理,来来来,题主你告诉我有哪个编程语言是不被黑的?
编程语言大体可分两种:1) 被人黑的 2) 没人用的
——奥斯托洛夫斯基
楼上说得对这个话题经久不衰
——卡巴斯基
XXX语言才是真正的程序员。
XXX编辑器才是程序员的最终归宿。
XXX语言在未来是一种趋势,必将干掉XXX。
你看他们讨论出来什么了吗?
我好想把这些XXX补上,为了避免大规模战争,还是算了吧。

话说PHP low确实是入手简单,写起来也快,内置函数多,基本都大多数人用。
没啥设计模式,随便怎么写都能run,运行成本低(是个空间就能跑)
PHP是高级语言,同时也是被黑次数可以与java抗衡的语言。
另外,PHP写得快是因为不会有下面这种类名 。。。。。
临走前黑下java。喏,你看
javax.swing.plaf.nimbus.InternalFrameTitlePaneMaximizeButtonWindowNotFocusedState Class Reference
链接:JavaDevelopmentKit(JDK)1.7.0_03: javax.swing.plaf.nimbus.InternalFrameTitlePaneMaximizeButtonWindowNotFocusedState Class Reference 呵呵,哪个语言不被黑?就算再优秀,那也不可能被所有人喜欢。 维基百科是这样解释低级语言的:
低级语言(英语:Low-level programming language),在计算机科学之中,是电脑编程语言的一类。该类编程语言之所以被称为低级,是因为该类语言在运作时无法进行进一步的抽象化,而与中央处理器的机器语言或指令直接对应,因此一般亦被指是原始的编程语言。即使是与高级语言相对,但这并非指低级语言较高级语言为差,相反,低级语言由于无需大量的编译动作即可被中央处理器所运行,因此以该类编程语言编写的源代码编译和运作效率一般较高级语言的源代码为高。有一篇博文是这样解释高级语言和低级语言的区别:
低级与高级其实只是相对的概念,Java对比C语言可以被认为是一种相对高级的编程语言。
我是这样认为的:一般来讲高级语言和低级语言有一下特点:
高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好
低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差
我们都知道CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码,但是为什么实现会有以上众多差异呢?下面以C语言为高级语言代表,汇编语言为低级语言代表来解释一下。
越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,使编写程序的过程更符合人类的思维习惯,并且极大了简化了人力劳动。也就是说你用高级语言写一句,会被转换成许多底层操作,大部分的工作交给了负责转换的机器(即编译器),从而人力得到了解放。因为机器就是用来为人类提供便利的,所以说高级语言的出现是计算机发展的必然结果。
下面重点解释为何低级语言的执行效率更高:
1.低级语言可以通过控制硬件访问来优化效率
越低级的语言月接近底层,即控制硬件访问的能力越强,对硬件资源的利用效率越高。比如说汇编语言能够访问寄存器,而C语言就做不到。通过对寄存器等硬件的访问,我们可以将程序的运行效率优化到最大,而像C这样的高级语言用的最多的是堆栈这样的内存结构,访问速度自然不如寄存器了。
2.高级语言程序存在工作冗余,有效率损失。
各种语言需要通过编译器翻译成机器码,不管编译多么智能和强大,都是会产生冗余。这里的冗余不是指指令的多少,而是有没有做没有必要的事情。 产生冗余的多少关键要看语言跟机器指令之间的耦合度。耦合度越大,编译器翻译过程越简单,产生的冗余越少。对应汇编来书,由于与机器码一一对应,所以翻译后基本没有冗余。而高级语言由于进行了抽象和封装,所以与机器指令间的耦合度较低,因此整个翻译过程较复杂,因此在高级语言在具体化的过程中不可避免会产生较多的冗余。据说C语言有10%的效率损失。
3.效率高不高,还取决于程序员水平。
一个差的程序员用汇编写程序,可能存在很多没有用的操作,而程序高手用c语言写,可以将程序优化到最大。最终的结果可能是汇编的程序跑不过C语言程序。
总之,完成一项工作的工作量是不变的,机器做的 多了,人就做的就少了,同时人对程序的很多细节的控制性也减弱了。各种语言都是在这个平衡点附近纠结。从C/C++的注重机器运算效率的优化,到C#/JAVA注重开发效率的优化。人操作起来更加方便了,更高效了,代价就是,机器要处理的东西更多,运算效率被进一步压缩。但是这个压缩在许可范围内,那么这也是一种进步。
- 低级语言可以直接操控计算机硬件,而达到一些功能,(可以直接操作硬件CPU 和 内存)如果程序员的水平够好的话,直接可以写出高性能的程序,但是由于,每次开发程序都需要对程序的重新编程,代码量比较巨大,于是出现了封装。
- 封装的优点是,复用率高,可以质性强,但是缺点也有就是封装后的东西为了适应计算机的各种环境,和复用,不得不牺牲掉内存,和CPU,不够简洁。但是利大于弊,随着科技的发展,计算机硬件不在这么值钱。
- 高级语言也就是低级语言的封装,封装成一系列的函数,便于程序员学习,和开发,不必要再学习一些以后用不到的东西。由于低级语言可以直接操控硬件,提高程序的性能,和大部分高级语言的底层语言,也就不会被淘汰。
高级不等于高端。 对于 PHP 有一篇完整的吐槽 PHP: a fractal of bad design / fuzzy notepad,没有什么要补充的了。 一群傻逼没事干。

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제









Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

PHP 로깅은 웹 애플리케이션을 모니터링하고 디버깅하고 중요한 이벤트, 오류 및 런타임 동작을 캡처하는 데 필수적입니다. 시스템 성능에 대한 귀중한 통찰력을 제공하고 문제를 식별하며 더 빠른 문제 해결을 지원합니다.

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

Alipay PHP ...
