大家来说说。本人是前端,想做全栈的话。选nestjs 还是python 还是java?
以 js 开发为主的会推荐你用 js。
以 java 开发为主的会推荐你用 java。
以 python 开发为主的会推荐你用 python。
你仔细想想这对吗?
作为一个 js、java、kotlin、python、c,都开发过的人,我最推荐你用的 c,但是 c 在目前的开发环境是很难遇到了,因此退而求其次,最推荐 java。
为什么?
1、学了 js、python,你再想用 java、c 会非常困难,因为它们太自由,有很多天马行空的实现方式,再回到 java 与 c 中时,你会觉得一切都很难理解。相反的是,学懂了 java 和 c,再用 js 或者 python 会很简单。
2、java 与 c 的语法、库、文档管理上更为规范,社区更加完善,已经拥有绝对成熟的设计模型,学习能够循序渐进,由浅入深,对更加接近底层的东西例如文件系统、线程、进程、socket等会理解的更好。
3、js 我是最不推荐的,因为相同水平的人用 js 写的后端大型项目,会比用 java 写的后端大型项目难维护的多,因为 js 的弱类型会导致变量的跟踪极为困难,代码更加难理解。
评论里有同学不理解为什么我说 Next.js 和 Nuxt.js 可以做全栈,这里补充一下。
服务器端渲染怎么做?拦截用户请求,找到对应的路由,渲染组件,输出页面。
很显然,这些都要在服务器端运行。所以,如果我们不输出页面,而是输出某种其它形态的响应体,是不是也可以做服务?当然可以。
实际上,Next.js 和 Nuxt.js 都对服务请求做了封装,可以很简单地开发 API。如果配合 Serverless 等服务,作为一般的服务后端是完全足够的。
我先客观的解释一下三种语言的普遍应用场景,可以让楼主有一个主观判断。
NestJS 是一个 Node.js 框架,它使用 TypeScript 编写。它提供了一些有用的功能,如依赖注入、模块化、中间件等。如果您已经熟悉了 Node.js 和 TypeScript,那么 NestJS 可能是一个不错的选择。
Python 是一种广泛使用的编程语言,它在 Web 开发、数据科学、人工智能等领域都有广泛的应用。如果您想要涉足这些领域,那么学习 Python 是非常有用的。
Java 是一种广泛使用的编程语言,它在企业级应用开发、Android 开发等领域都有广泛的应用。如果您想要从事这些领域的开发,那么学习 Java 是非常有用的。
最近一段时间,chatgpt开始带动了大数据模型的热度,因此如果楼主如果对于人工智能数据科学有兴趣,建议重点python的应用学习,如果楼主想继续在安卓开发中深入,那么建议java。
一般来说前端选择 NestJS 可能更容易入手, 毕竟不需要学习新的语言, 使用JS或TS就可以了
因为有语言基础特别是TS的基础重新学习Python或Java也蛮方便的而且Python 易于学习的语言,也有丰富的库和框架。比如: Flask 和 Django 等 Web 框架可以快速构建应用程序
Java 相对与Python难一些,但是Java的生态更加庞大, 也拥有大量的框架和库。比如SpringBoot
建议根据项目需求和自身技术背景来选择。
个人是在学习Java, Node也接触过, 发现Node的资料是远不如Java丰富的, 并且公司也是使用Java, 可以看公司的Java项目, 甚至用公司的项目作为练习.
这取决于,你是现在有需求要立刻以全栈的方式出产品,还是说你打算以全栈的方式进行学习?
如果是要出产品,以快为主,那你应该立刻用nestjs。因为你作为前端最熟悉js
如果是想打算学习,那我强烈推荐你换一门你以前没玩过的语言,推荐java。
前端想学点后端技术,可以先看看nodejs相关的,看看自己是否能学进去先
你问题中只有nestjs是nodejs的了,所以,就这个问题肯定是nestjs啦
顺便谈谈我的经历
我前端后面学了java(spring框架)
nestjs 有点像java的springmvc
反倒我是最近才看nodejs,从express → koa → nestjs
有过其他后端语言基础,学起来轻松很多
所以我建议你不要选择,不要给自己设限,成年人都要了
你可以都去看一下,看看哪个更适合你自己
8 回答4.8k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
8 回答3.8k 阅读
3 回答2.5k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
我也是前端转全栈的,学习路线比较简单,但是入门时间比较长