一个.net(web)初阶的迷茫和困惑,求解惑.

2018-05-16 17:31:49 +08:00
 AaronWang13

16 年普通一本高校毕业,大学当时是学的 c/c++,进了上一家公司开始做.net. 在上家公司做的就是搬运的工作,框架都是公司封装好的,而且任务量大 出差也多没有私人时间,工作上的都是复制粘贴,在标准本上修修改改 连深入接触框架的机会也没有 觉得很难获得技术上的沉淀所以 17 年年初就离职了

进了这家公司之后 工作任务相对轻松了很多 一年多几乎没有加班 用的技术栈也多了很多, 传统的 MVC 前端的 Typescript(因为老大说它的强类型特性很好用),Javascript,Jquery,Jquery-UI,Bootstrap,后端的 EF Linq 等等,都接触使用,私下也看了 Javascript 高设 Html5+Css3 Typescript 等一些书

但是现在对于自己的定位和发展方向就觉得特别困惑,往前端走 觉得自己缺少系统性的知识框架,都是很散乱的知识点 完整的前端实践几乎为 0,往后端走的话 发展方向又不清晰

而且现在在 web 这边 国内的(我在南京).net 大环境也不好 .net core 开源之后虽然反响不错 但在国内势头也没起来 身边很多的.net 都转了 java 或者前端

我在技术这条路上该怎么走呢 如果转前端 计划是自己系统地去学大半年前端的知识架构 框架之类的 但是又觉得技术转型在我这个时间段壁垒会不会很高(就是怕社招没人要) 如果不转 .net(web)这条路该怎么去走?.net 圈的技术氛围真的不会影响自身的技术发展么(如果在.net 呆了几年又去转别的技术栈 为什么不一开始就转?)?

8731 次点击
所在节点    程序员
91 条回复
AaronWang13
2018-05-17 09:58:01 +08:00
@qx4235 谢谢
xiaojunjor
2018-05-17 10:08:02 +08:00
想转趁早,挤出所有的空闲时间去转型,或者干脆辞职拿出半年一年的时间去转型
不想转就静下心,打好基础。然后少看一些 js,css 这种书,工作需要简单看一看可以,浪费太多时间在这上面不会对你的境界有多大提高。早点改变自己的工作思想,多想一想项目的搭建,性能的优化,业务的扩展。这些东西跟语言没关系,跟你的思想有关系
jydeng
2018-05-17 10:21:53 +08:00
毕业开始在前东家写.net ,3 年,传统 MVC 模式,平时开发要从 SQL 写到前端,伪全栈,压力一般,偶尔加班。
公司和项目原因,日常工作主要是业务堆积,缺少高并发经验,平时工作前端写的多,研究的多,也比较喜欢前端。
GenericClass
2018-05-17 10:22:39 +08:00
@AaronWang13 就是那种上来一个微软垃圾微软烂远离微软的货色
anyele
2018-05-17 10:35:45 +08:00
我的情况和你一样, 不过比你早毕业一年, 我个人觉得是语言没好坏, 甚至 C#比 Java 更好些, 但.net 平台生态摆在那, 确实在国内没什么前途(生态), 我建议是都做, 但重心放 Java 方向
anyele
2018-05-17 10:39:41 +08:00
其实说白了,生态其实就是满足我们这些伸手党, 拿来就用避免自己造轮子, 能快速出活就是好东西, 实际上只看急速而言, .net core 比 现在的 Java 好多了
anyele
2018-05-17 10:40:10 +08:00
急速而言 -》 技术而言
AaronWang13
2018-05-17 10:40:10 +08:00
@anyele 看了这么多建议之后 内心的想法也是 先往 Java 靠 C#也不会放弃练手
anyele
2018-05-17 10:43:07 +08:00
@AaronWang13 #48 现在.net 平台唯一吸引我的就是 winform, 在 Windows 平台上,如果有自己的兴趣爱好的话做个有界面的程序, 用 Java 简直想死, 不同的需求用不同的东西, 这才是正确的, 很多人只是为了上个班而已(写两个接口做个网站就感觉自己在程序这条路上走到死了)
AaronWang13
2018-05-17 10:45:20 +08:00
@anyele 客户端软件的话 WPF 也不错啊
galaxyyao
2018-05-17 10:46:37 +08:00
稍微详细讲一下为什么建议转 Java 吧。语言特性什么的是最次要的因素,技术视野和思维方式才是主要原因。
做.NET 项目,虽然也有一些开源项目,但整体思路还是:微软针对这个问题提供了什么解决方案,我就用什么解决方案。但围绕 Java,随着不断深入,你会接触到更广阔的天地。举个例子,对于.NET 的部署,我可能会优先考虑怎么用好 IIS,深入研究 IIS 的机制,性能优化。但对于 Java Web 的部署,我可能会需要了解 tomcat,jetty,resin,weblogic,jboss 等容器并进行比较,静态资源和反向代理我可能会需要了解 Nginx 和 Apache,高可用我可能会需要了解 HAProxy,操作系统我可能需要了解 RHEL,CentOS,Ubunto,容器我可能会需要了解 Kubernetes 和 Docker。前后端分离的话可能还要加上 Node。此外还有服务网关,中间件,分布式服务等等。并不是说.NET 不会用到这些,而是使用.NET 的话,思路容易不由自主地找微软的 best practice,而且 Windows Server 的操作系统也会前期就排除一些很好的解决方案。
此外,了解 Java 对熟悉 Hadoop 也有很帮助,但这个就是另外一个话题了。

关于楼上提到的辞职半年到一年专心来学,我以亲身经历劝你不要这样做。另外也不建议脚跨两条船,又学.NET 又学 Java。想继续做.NET ,就专心准备跳大公司;想转 Java,就找个做 Java 的公司放低身段从头开始学。
romisanic
2018-05-17 11:16:19 +08:00
.net 做做 差不多就转前端啊
滑稽脸
但是我有朋友确实转成功的,并且当前混的很不错
lonelygo
2018-05-17 11:45:30 +08:00
坐标:北京、苏州 的.net 可以勾搭下,我们主力技术栈 .net 、C++ 、Python,前端 TS/JS 都用 ,今年还会开 Java。
AaronWang13
2018-05-17 11:49:43 +08:00
@lonelygo 南京没有? 南京有的话我就投了 C++底子虽然丢了不少还是能捡起来的
lonelygo
2018-05-17 11:55:06 +08:00
@AaronWang13
南京暂时没有研发,只有实施和售前,未来一段时间估计也不会有。
g00001
2018-05-17 12:10:14 +08:00
C#做桌面客户端软件其实也麻烦,代码很啰嗦,运行库版本很多部署也是个麻烦问题,而且 C#写的 EXE 可以一键还原出源代码(包括工程文件)。

还不如 aardio,用已经熟悉的 Web 技术就可以写客户端软件,代码又简单。


aardio 还可以直接调用系统安装的 chrome 浏览器做软件,只要用 Javascript 就可以调用系统 API、访问本地文件,还不用像 CEF、Electron 那样打包几百 MB 的运行库。
kwklover
2018-05-17 12:45:30 +08:00
@g00001 看场景的,比如要一个日志分析的,需要多线程之类的,这种基于 web 做桌面软件的能否很好的支持?还有各种库,也形成一个技术生态,比如处理 html 的库,处理全文搜索的库,处理硬件串口通讯的,反正看场景选技术,好似没有万能的吧?
doubleflower
2018-05-17 13:00:11 +08:00
曾经的 MS 平台程序员告诉你:抛弃.net 越早越好,你会发现不但路多了思想也放开了

( MS 家的只有 typescript 可用一下,虽然我没用过)
shijingshijing
2018-05-17 13:02:43 +08:00
@g00001 做做涉及底层对性能有要求的工具类应用软件试试,商用的工具软件除了微软全家桶确实没什么好的解决方案,选来选去要么 Qt 要么微软全家桶,Qt 会的人少且要求高,找个稍微靠谱的 c++开发比找个随便看看 msdn 就能开撸的.net 码农难多了。

这就是为啥西门子,GE,飞利浦这种大公司还在大量需要.Net 码农的原因。
g00001
2018-05-17 13:46:29 +08:00
@kwklover 你说的没错,什么都是看场景。

但是,多线程没问题,你说的各种库,技术生态.....,包括你随便点名的几个,用 aardio 都很方便,aardio 的库非常多,而且 aardio 本身的特性胶水能力很强,可以调用 C、C++、Java、C#、Python 的函数,aardio 就是别人有什么轮子自己就不写什么,所以不缺库。

aardio 处理 html 的选择很多,例如轻便灵活的 string.xml


说到串口,用 aardio 也非常方便,参考 stm32cube.com 站长用 aardio 写的串口调试助手。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/455356

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX