华人澳洲中文论坛

热图推荐

    特斯拉为什么使用.NET Core技术栈?

    [复制链接]

    2023-2-13 18:39:01 36 0



    【技术讨论】| 来源/知乎
    大家好,我是Edison。
    在知乎上有一个帖子十分热烈:“为什么特斯拉使用.net core技术栈 而不必 java?”
    回答1:Kasim
    这题我熟啊,现役Tesla员工(.net core full stack)来答一发。
    先肯定的是,Tesla外部虽然是.Net Core主流,然而Java,Golang,nodejs,PHP都有在用。所以不存在“不必java/go等”状况
    此外也不像某些答主猜的,咱们只要很少的办事在用Azure,还有得多不是。所以跟弱小的Azure没啥瓜葛,不外Azure确实好用。
    国际不必.net技术栈无非两个大缘故,开通的人会说“.Net技术栈的相干上上游软件免费太贵”,互联网相干的会说“.Net生态欠好没轮子”。
    对于收钱,.Net技术栈相干运用早就能选择廉价的的Linux+MySQL计划了。IDE也有VSCode能够用。所以钱早就不是问题了,相对于的有些中央花钱反而是为了省钱省时间,最间接的做.NET用VSCode有VS/Rider效力高?本人搭建办理机房和买云办事(阿里云/Azure/AWS)哪一个本钱高?
    对于轮子,小公司才看轮子,大公司到一定水平就不必太关怀轮子了,绝大少数根底业务的轮子(日志,RPC)个别都有,剩下的小众一点的轮子,让初级工程师、架构师来搞定,而后在企业内一致使用。
    而关乎一个企业招甚么人的一个很首要的要素,就是招聘本钱,在国际圈子里一个合格的.Net太难招了,不是在国企抱着.Net Framework曾经躺平了,就是刚入行天天CURD的菜鸟,再有一撮就是曾经在大企业干的风声水起的。头部的要不起,底部的不想要,两头的人材稀缺活动性差,天然没人用。哪一个部门的领导也不但愿本人定了个技术栈,而后等了大半年招不上人,始终开不了工,这是不打算干的节拍了。而Tesla的软件研发核心,次要都是在美国和中国,美国的市场招.Net就容易多了,所以即便国际招不下去人,能够先让美国的研发核心顶着,至多就是沟通本钱高点
    以上。
    回答2:AlseinX
    很简略,用是由于好用,机能和语法表示力/开发速度都比java/go强,干吗不必呢。
    国际是国际,技术社区原本就对比闭锁,不肯意承受新的,更好的技术,能用就行,再加之国际大厂的带头,所以大都以Java为主。
    加之培训班根本都是宣传Java python的,当初加个Go,在舆论权上铺天盖地,弄得得多初学者乃至没据说过.NET,逢人就是甚么“有Java就行了,为何还要弄出各种其余的言语”“Python不是初级言语,是超级言语”之类的经典舆论,而后这些速成出来的人少量涌入各大中小公司开卷,工资低,人好招,公司固然也喜爱。
    而.NET呢,在国际黑微软是政治正确的条件下,不懂技术的清淡领导们也不喜爱听,也不懂甚么叫开源,他们只会讲一句古话:“Java是开源的,.NET是闭源的”,“Linux好,.NET就只能Windows”,至于.NET开源跨平台好多年、github是微软的、Linus Torvalds因Microsoft的改动而地下声称接收Microsoft,他们基本不知道,也不肯意知道。
    所以在问这些问题以前,先见见市面,看看里面的世界,不要把目光局限于培训班和国际那些在清淡领导们手下烂掉的国企与传统中小型企业,多理解理解下列一些外资的,或者金融行业的之类的企业,把真正国内上主流的技术理解比较一番,知道了甚么是真正有出产力的,甚么是中国式随声附和吹出来的。真搞明确了,你是不会问这个问题的。
    上面放个展览柜,展览一下评论中泛起的上古先贤。












    『见渔人,乃大惊,问所历来。具答之。便要还家,设酒杀鸡作食。村中闻有这人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外世间隔。问今是何世,乃不知有汉,无论魏晋。这人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停很多天,辞去。此中人语云:“缺乏为外人道也。” 』
    回答3:知乎用户
    外企选择这类货色没有太多顾忌地.net和java和go都能很随便的选择,有选择顾忌的是中国企业,国际企业不选择.net罢了
    特斯拉招.net core的人,还写分明能够从java转到.net,人家没这么在意。
    有人说.net生态不行,那可能特斯拉要开发的货色对现有生态依赖少,有更多地原创性,用.net开发更快?
    有的人说.net哪里哪里都要免费,那可能特斯拉有钱,就需求微软优质的办事?
    有的人说关上VS都要半分钟,本人早就在记事本里做完了,那特斯拉可能需求员工长时间开着VS,压根不需求封闭,而后用VS高效力的开发少量的代码,而不是关上个记事本写两行就可以关掉了?
    其实关于传统企业来讲,能用sqlserver的根本都在用sqlserver,凡是是数据需求不乱性,需求有人帮助担任的,sqlserver算很廉价了,oracle贵得多,你们别看当初国际数据库这么多,一旦到了数据审计首要的症结之处,需求GMP之处了,基本看不到国产数据库的,哪怕这类中央在想方法国产化,然而根本没有人会认国产的软件的。所以人家特斯拉哪怕真的用.net + windows + sqlserver,哪里都得花钱又如何?需求GMP的大药企和做疫苗的,还有各种瓜葛到人生平安的制作业食物业,不也都是windows + sqlserver,他们可能c++多一点,C#也有一点,找微软担任比找甲骨文担任可廉价太多了。
    并且当初车企用C#的确不算少,wpf在传统企业仍是有不错的作用的,C#是多数做桌面靠谱的,做办事靠谱的,做外部零碎靠谱的,java桌面没啥人用,go做外部零碎没人用,nodejs做这些都没人用,怎么了?用C#欠好么?
    面对这类问题,都不需求提C#语法舒服效力高啥的,就凭微软能把一整套都给你担任好,服侍好你,就足够选择C#了。
    回答4:倪静风
    .net core美国,欧洲那边用很多。
    .net core是.net跨平台版本。
    由于.net始终在企业使用得多(非互联网),像一些硬件通讯使用.net技术也很便利。
    之前也有得多写量化买卖的用.net,次要是开发时速度,不必像java同样搞一层层的框架绑住了手脚。
    还有得多游戏用的是开发言语用的是c#,外面用的是一个虚构机能够调用c/c++的接口。
    .net技术好之处就是如何使用微软的IDE,能够疾速写代码,代码的提醒准确性很高。
    java次要在电商畛域,由于互联网需求程度扩展一类的顺序,需求跨平台,需求收费,需求开源,需求定制,需求大数据组件。
    不外跟着学习人数的过量,当初也有饱和景象,也就是java的得多功用曾经很成熟,都是套路化的,得多培训班也有教这些,过量的培训班也致使竞争适度。
    得多做量化买卖的python,其实用c#也挺好,由于开发速度快,得多代码不需求那末精密,比python不合适写大型工程无关。
    特斯拉次要是办事于车主,相对于于车主的互联网拜候量不是太大,不像根底互联网运用同样需求极少量的高并发,次要以功用为主。
    go言语当初次要用于写云计算根底办事,java次要用于linux办事器上用于业务零碎言语,像java由于jvm的缘故,可能在某些机能方面不如.net core,或者有相似像unity3d同样只是一种c#脚本言语,只是看下来看c#言语,实际履行时是c#脚本。
    回答5:知乎用户
    首先,.net在国外十分盛行,不必疑心。你能够用indeed搜一下国外次要城市的职位,十分多,好比facebook在伦敦都有得多.net职位,在国际是否很难想象呀,这可是寰球顶级的互联网公司。
    其次,特斯拉是十分典型的汽车+制作业案例,其实寰球大部份车厂都用.net(中国好像纷歧定,我知道上汽团体是用的),好比bmw、德国公众、Daimler AG等,所以tesla用.net我一点不奇怪。
    据我经过外部渠道理解,目前tesla次要用.net core 3/.net 5来写warp drive erp,这玩意的配景颇有趣,它是从spacex拷贝过去的,至关于一个branch,次要是为了代替SAP,musk可能一方面感觉SAP太贵了,另外一方面musk喜爱啥零碎都DIY,这样能力造成共同竞争力,且无奈复制。所以呢,.net这下又多了个航空航天案例,仍是寰球独一一家掌握可复用火箭技术的企业。固然据我的动静,我国的神舟也用.net,次要是测试顺序,我大学的某传授就接了神舟的名目,详细怎么接的我就不知道了,反正他接名目才能始终很强,前几年他好像跟我提过一嘴,我过后还有点小诧异。
    再来,其实国外的厂其实不太喜爱没事换言语换架构,这么干本钱过高,得多时分在做无用功,个别一个零碎保护十几年不换技术栈,这是常事。我待过的公司里,最少有2个外资厂的零碎保护10年以上了,有个厂仍是asp和http://asp.net一同用的零碎,听下来是否很陈旧,但业务能跑就行。也只要国际的某些CTO们喜爱拿技术栈来为业务债和名目办理债背锅,反正前CTO用的技术栈都是渣滓,换就行了。其实次要仍是人的问题,和技术好坏有关。
    总结,.net在制作业和传统行业始终处于领导位置,有些货色java无奈代替,特别是和产线打交道的行业,上位机职位全是.net的。只是这行业没有互联网公司有钱,所以职位的薪资偏低一些,通常行业抉择薪资,而不是技术自身。
    =======更新=======
    略微廓清下,tesla其实用go的名目也得多,java名目也有,并非只用.net。仍是那句话,不同言语用于适合的场景和零碎,没故障
    假如你想知道国际哪些公司在用.NET,能够看这个列表,根本是按照目前在招职位手工整顿的,也有外部的小火伴告诉的。也欢送大家提PR,独特保护这个列表。
    url:http://github.com/dotnet-cn/jobs
    Edison所在的西门子就在使用.NET Core/.NET 6开发技术,假如你是.NET开发者,欢送私信找我内推哦!全国各次要城市均有site和HC哦!

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    返回列表 本版积分规则

    :
    注册会员
    :
    论坛短信
    :
    未填写
    :
    未填写
    :
    未填写

    主题26

    帖子38

    积分176

    图文推荐