从解释器的角度看, Java 和 Python 的解释过程原理是一样的吧?
那么,python 不是也跟 java 一样了?,先转换成中间字节码,再做解释执行.
只不过,java 通常称为虚拟机,似乎比解释器更加高大上一些?
只不过,java 通常称为虚拟机,似乎比解释器更加高大上一些?
张口就来可不是个好习惯呢 ヘ(。□°)ヘ
哦,玩具语言支持了最近十年深度学习的发展,催生了几千亿的产业(你去看看凭啥蚂蚁金服能让银行出 98% 的钱和它搞联合贷款,结果利润大头还给蚂蚁金服)。支持了大型虚拟化云的运维。就这两点就不能是玩具。
结果到你俩这里就是玩具咯
或者仅仅是无知而自大?
C 语言是弱类型,原来是玩具 /狗头 /
python 在执行前一般会生成 __pycache__ 文件夹,里面是 pyc 。有了对应的 pyc,你把 py 源文件删了也能跑。
发布时可以用 compileall 模块编译出 pyc, 只发布 pyc,但注意:印象中 pyc 和解释器版本绑定了,另外有些商业软件会魔改解释器,这样它生成的 pyc 一般工具难以反编译一些。
这种就是郭德纲说的那个“火箭该用精煤”的情况
1 + ‘1’ = Error => 强类型;
1 + ‘1’ = ’11’ => 弱类型;
其实无论何种编程语言,最终的目标都是要把自然语言代码转化为机器代码.
由于历史原因,先后出现的编程语言需要解决的侧重点都不太一样.
在计算机科学发展的早起,最先出现的汇编,主要是要解决从 0 到 1 的问题.我们一般把它定位为低级编程语言.
随后出现的各种编程语言都是要解决之前一种语言的某些不太顺手的特性.比如 C 语言,是为了解决汇编语言欠缺直观的逻辑性的能力.
而在之后出现的很多高级编程语言,基本都是在 C 的基础上继承或者扩展的(python,java,go,php),主要也是因为 C 不太好用.
在业界,大部分事件的本质,就是站在巨人的肩膀上去做事情,我们会为了更好的效率(性能仅是第二需要考虑的问题)持续不断的改进现有的工具和方法,以满足对效率的需求.
这也是为什么大家都喜欢不断造轮子的一个主要原因.
我想起在《程序员修炼之道 : 通向务实的最高境界》中一句印象深刻的话:
“在某些方面,编程就像绘画。你从一张空白的画布开始,只有一些非常基础的原料。你糅合了科学、艺术、工艺手段来决定用这些原料做点什么。你勾勒出一个整体的形状,绘制出潜在的基调,然后再装点细节。你不断地带着批判的眼光回顾自己已完成的部分。你会时不时地扔掉一张画布,然后重新开始。”
这是什么奇葩脑回路??
按照主的说法,,Visual C++可以编译 C++,GCC 可以编译 C++,CLang 也可以编译 C++
就好比一把锁可以被多把钥匙打开,说明 C++这把锁坏了 ~~~^_^~~~