目次
回复内容:
ホームページ バックエンド開発 Python チュートリアル 最「全能」的编程语言是什么?

最「全能」的编程语言是什么?

Jun 06, 2016 pm 04:23 PM

最全能的编程语言是……

回复内容:

题主是想挑个头让咱们这帮程序员互相撕,然后他在暗处偷偷笑而已。 真没哪个语言在我印象里是全能的, 比如C虽然是高级"机器语言", 但是很多时候开发一些东西会很不方便啊.
如果真要比全能性的话, C/C++还算是比较全能的了, 但是(二进制)跨平台就不如JVM上的那些语言们, 也不如脚本语言.
C/C++当然可以用作Web服务, Apache就是90%以上的C写成的, 用C++当然更可以,
C++还可以用Qt来创建GUI应用, 可以用NDK做安卓开发,
但是C++开发的周期不是一般的长, 而且包也没Java多, 所以写C++的感觉就是自己造轮子. 在我不知道有stl之前, 连vector都照着.NET/Java里面的List自己实现了一个. 从Java/C#转过来的人想死的心都要有了. 当然这年头牛人都是自己写自己用的舒服的API的, 那么这一点姑且算个优点.
当然你硬要说写操作系统内核之类的, 那我也没办法, 脚本语言比如Python目前连编译到native的编译器实现都还没有呢, 要写kernel我觉得不可能...
所以尽可能地就是利用现有的工具, 把事情做好, 语言不难学, 最夸张的时候一天学了三个, 现在都不屑于罗列自己都学过哪些语言了 真正有用就好.

现在总结一下, 如果你有一个紧急的任务要你学一门新语言, 基本上除了Haskell或是Lisp(Scheme/Common/Clojure) 基本上可以从这样的sequence入手:
0.搞清楚Hello World程序的结构, 只有一行的除外
1.搞清楚脚本语言还是bytecode还是Native, 编译器/解释器/运行环境长啥样 代码里哪些是注释编译器会忽视, 哪些代码是预处理
2.看好是动态类型还是静态类型, 是强类型还是弱类型, 变量如何声明, 命名规范有哪些, 整数和浮点数有没有明显的区分, 比如3/2是等于1还是1.5 整数范围多少, 有没有溢出风险
3.学+ - * / 之类的运算符, 有没有++自增运算符, 能不能用 i += 1, 以及 Math library, && & || | > >>> ^ 能不能正常用
4.流程控制 if...else if...else switch for foreach while 等等, 这个我想说下, 现在很多语言不能把for loop写的像C一样, 这一点很不爽
4.看函数的声明, 是否需要返回类型声明, 是否需要声明函数原型, 是否默认引用传值, 是否支持重载之类 是否支持递归, 函数能不能放进一个变量里
5.看基本的数组等数据结构, 数组到底是指针还是对象, 有那些Collection, 如果有内建的数据结构可以说是新手最喜欢的东西了
6.看字符串的表示处理, 字符串是指针还是对象
7.异常处理, 有没有checked exception, 怎么抛异常又怎么抓
8.有没有OOP, 支不支持继承封装多态, class是怎么声明的, 如果是静态类型怎么用泛型/模板
没有OOP的有没有struct, union? 还是全部都有?
9.支不支持显式指针, 是否支持不安全代码, 内存管理(malloc free new delete), 垃圾回收
10. Lambda表达式, 函数指针/引用, 以及闭包函数, 他们是不是仅仅是语法糖? (比如Java 8就大体上是语法糖) function callback这个东西啊, 一颗赛艇!
11. 多线程, Concurrency, Synchronization
12. 文件IO, stdio

还有什么补充?
基本上就这样.
这么长的答案没这么个段子有点不像话...:

我的意思不是说C语言已经不要学了, C语言是编程之根本我们能不学? 我就明确告诉你这一点.
不要想搞个大新闻, 说C语言已经要没用了, 再把K&R批判一番. 你们呐 naive.
难道不是注释语言???

无害性 支持任何编译器

跨平台可移植性 分布式

面向理解

语法随意易理解 可读性高

比任何机器,汇编,高级语言简单易学 不是English吗? c, 有机器语言的地方,就有c
python,脚本语言中的瑞士军刀 python不行我直播日电灯泡 最「全能」的编程语言是什么? 0101010101010110101010101010101010 很明显是brainfuck。。运算能力等同于图灵机,能实现任意语言的算法 最「全能」的编程语言是什么? 大多数编程语言都是图灵等价的。所以一种语言能干的事情其他语言也能干。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? Apr 01, 2025 pm 05:09 PM

LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? Apr 01, 2025 pm 11:15 PM

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

人気のあるPythonライブラリとその用途は何ですか? 人気のあるPythonライブラリとその用途は何ですか? Mar 21, 2025 pm 06:46 PM

この記事では、numpy、pandas、matplotlib、scikit-learn、tensorflow、django、flask、and requestsなどの人気のあるPythonライブラリについて説明し、科学的コンピューティング、データ分析、視覚化、機械学習、Web開発、Hの使用について説明します。

uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? Apr 01, 2025 pm 10:51 PM

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

文字列を介してオブジェクトを動的に作成し、Pythonでメソッドを呼び出す方法は? 文字列を介してオブジェクトを動的に作成し、Pythonでメソッドを呼び出す方法は? Apr 01, 2025 pm 11:18 PM

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...

正規表現とは何ですか? 正規表現とは何ですか? Mar 20, 2025 pm 06:25 PM

正規表現は、プログラミングにおけるパターンマッチングとテキスト操作のための強力なツールであり、さまざまなアプリケーションにわたるテキスト処理の効率を高めます。

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

See all articles