C#、C++、Java、Python选择哪个好? 一个好的程序员不能把自己绑定在一种语言上不能把自己就定义为JAVA程序员C#程序员等等。语言没有高下之分只有适用的场景。好的程序员应该有很快学会一种新的语言并解决实际问题的能力。在我二十年的程序生涯中有过不止一次因为项目一两天学一种语言的基本语法然后边Google函数和库用法边完成项目然后项目完成后就扔一边的经历。但是学习的顺序却是有迹可循的我们可以根据不同的重要程度来选择自己想要学习的语言接下来我们就来谈谈C#、C、Java、Python四种语言学习的优先程度。作为一个20年的老程序员来回答一下。1998毕业现在自己做一家IT公司依然喜欢写代码。工作这么多年正式项目用过的语言有 Pascal/Delphi,dBase/FoxBase,FoxPro,VB,VBScript,JavaScript,COBOL,C/C,Lua,Java,C#,各种数据库的SQL。最早学的是Pascal大学里面学数据结构用的毕业以后用delphi写了一个小项目然后再也没有用过。dBase/FoxBase也是学校里面学数据库的时候教的然后毕业以后用的是FoxPro也是做了一个小项目后面基本就没用了。VB/VBScript作为主力语言从1998年用到2002年对那时候做ASP。也用VB写过还算有规模的EXE的项目。至今书橱里面那本《VB5金典》依然保佑一席之地。VB做快速开发真的很好用。然而http://VB.Net就压根没看过。那已经不是VB了。因为Web开发基本上没有断过JavaScript一直陪我到现在。COBOL是原来在对日外包公司工作的时候接了日本一个野村证券的项目居然是COBOL然后作为新技术研发部的负责人当仁不让上了。边学边做项目做完就扔了。C是从开始编程就学的断断续续用一点点2003年做银行项目的时候用IBM小型机Tuxedo中间件然后只能用C/C语言编程那个时候银行还不怎么接受Java。然后自己开始创业做游戏用OpenGL做了一个游戏引擎跨平台的那种一次编写Windows、Android、iOS都能跑。C写的。中间尝试了一下Lua写了两个小游戏觉得对程序的掌控能力还是比C差远了就放弃了。最后就是Java和C#这对双子星是用的时间最长做过项目最多的。C#是从2001年开始beta版本开始学的。记得第一个项目是2002年6、7月的样子吧那时候公司接了一个比较大的Web项目本来是准备用ASP做的结果那时候我正好在学C#然后看了一下说是10月份会发布正式版时间大概是那样吧年数长了记忆有点模糊然后仗着自己是项目负责人外加老板不懂技术就擅自决定用C#/http://ASP.Net来做。项目做完大概是10月份在项目上线的前几天微软发了正式版ASP.Net1.0项目有惊无险的上线了。现在想想有点作死的感觉。如果微软把.Net正式版的发布时间往后推一个月很难想象老板会拿我怎么样。Java差不多跟C#同时学的然后一直做啊做从EJB做到SSH再到Android。那时候年轻学习的精力旺盛然后觉得C#和Java似乎差的不是太多。PHP看过没用过。Python看过没用过。还有Ruby看过没用过。我说看过的意思大概就是写过Hello World但是没有拿来做过项目。我是真的喜欢写程序所以有什么新奇的东西都喜欢拿来跑一跑。然后说说对编程的看法。首先我认为语言没有高下之分只有应用场景之分。作为一个技术决策者拿到任何一个项目首先第一个考虑的不是怎么做而是用什么做。如果你拿到的是一个Web项目我认为在很多情况下JSP、PHP、http://ASP.Net甚至Node.js基本上都是等价的应该都能够很好的完成项目的开发选择什么技术开发看自己所拥有的资源禀赋和具体情况。如果手下一帮弟兄都是搞Java的当然JSP啊如果手下小弟都是做C#当然http://ASP.Net啊。当然项目有特殊要求的除外比如如果甲方是银行那估计就没法用http://ASP.Net了如果是有客户端的项目当然C#WinForm啊如果是做安卓当然Java啊。其次作为一个好的程序员应该至少会三种以上语言这样你能够充分接受不同语言的风格更关键的是你会去关注不同技术社区的讨论开阔眼界对编程的本质会有更深刻的体会然后你会觉得看任何语言都是差不多的。我经常对公司的技术人员讲要用Java的编程思想来写C#的代码。这是不同技术社区的风格体现出来的。在Java的社区你能看到更多的对模式、框架的讨论而微软虽然自己做的东西很讲究模式和框架但似乎更喜欢做好一堆全家桶给你让你去做快速开发。第三对各种语言的感受写起来最爽最有成就感的当然是C那种一切尽在掌握的感觉是很奇妙的。不过我现在公司没有C/C程序员了因为公司不做游戏了我也有起码5年没碰C了。我最喜欢的还是C#我很崇拜安德鲁C#的语法和机制真的设计的很精妙泛型、delegate/event、Attribute、Lamda表达式、函数式编程总觉得这个语言的设计给人一种特别的精致美感能满足我对一门好的语言的所有的想象。自从.Net Core以后跨平台也不是问题了。相对Java来说我更喜欢C#。当然我是不会排斥Java的只要做Java能赚钱。第四我觉得数据结构真的非常重要如果你想成为高手的话。在学校里面一定要把这门课反反复复的学习。当然如果你只想做做Web开发写写网页的话当我没说。最后对计算机专业的学生来说我认为在大学就是要打好基础。语言的东西真的不难所有语言的编程思想都是想通的语法其实也都大同小异无外乎顺序结构、循环结构、分支结构。不用太焦虑应用型的开发这些东西其实学起来是很快的。重要的是基础。C语言是必学的学好C让你对计算机的原理数据结构、寄存器、内存、硬盘读写等等有更深刻的认识。然后为了工作学学Java学学C#。数据结构、编译原理这样的课程当你工作年限变长开始写架构、开始做性能优化的时候你会觉得特别有用。当然最开始的简单开发任务基本上用不着。不过不想做高手的程序员当然不是好程序员是吧还有其实我是非常建议作为程序员C#是必学的不是因为我个人喜欢C#是因为实际上按照我的习惯在做项目的过程中我经常会写一些小工具而这些小工具很多时候当然都是写成exe啦所以一般我都会选择用C#来写。以上就是一名工作了20年的老程序员的感言大家可以根据他的回答来排序自己的时间学习。文章来源网络 版权归原作者所有上文内容不用于商业目的如涉及知识产权问题请权利人联系小编我们将立即处理