不用纠结语言的限制,思想上都没有太多区别,无非是应用场景不同。
第一:明确并强硬反驳楼主“ Node 其实做为前端的后端语言入门,如果想深入,不写 C 扩展是没多大意思的”。
在普通的 web 开发方向上,写 C 扩展能有几层人口,如果有一天项目已经被逼到要写 C 扩展了,我想楼主也不用纠结这里的发帖。事实上,Node 在 web 开发领域有着很多优势,深入学习并无不可。
第二:明确反驳“爬虫 python 用的多,前端也有用”。
这两句话没有任何错误,但是因为这 2 处去学 python 实际上对前端毫无提升,爬虫无非是对获取数据的攻与防,在以前的脚本语言中,python 简洁快速,所以才有好用的 python 爬虫框架出现。相反,在做爬虫时,很多时候分析的是前端的数据处理、隐藏,甚至要看引用的 JS 混淆、猜测代码,和 python 本身并无多大关联。
最后,针对楼主的问题给与我自己的理解:
- 如果说要想了解大型软件的设计模式、思想规范、架构,且自己有主动并强烈意愿补充这方面意见,可以学习 Java,因为 Java 在这方面拥有足够的范本可供学习。
- 如果只是想让前端的思想更加开阔,提升自己前端的话语权威,我觉得 Node 完全足够,nest.js 一样拥有 java 体系内的依赖注入思想,Node 也同样能胜任目前绝大多数 web 开发场景(微服务、分布式较弱)
- 如果想开阔架构视野,那么可以学习 Go,因为在分布式、微服务场景中,Go 有比 java 更易上手的优势,Go 也拥有大量身边的生态支持,足够学习了
- 至于 python 把玩即可,运维爬虫更多的是尝试那些工具。当然我没有嘲讽 python 的意思,python 在适合他的场合优势极大,但是和楼主要对自己的知识补充要求不符。
最后,怎么说呢,说了一大堆,加点广告,写了一些笔记,大佬们轻喷:
JS 方向的:
https://github.com/overnote/JavaScriptGo 方向的:
https://github.com/overnote/Golang推荐书籍:
https://github.com/ruyuejun/polaris完善度还很低,一直在更新维护,我热爱多维度学习,也期待有朋友能分享些东西给我....
溜了
PS:强硬反对这种词语并不是对楼主不满哈,只是针对这些语句的反对的级别....