关于.Net和Java的看法-一个小实习生经历
目录
- 背景
- 带着疑惑
- 生活中的迷茫
- 开始实训
- 实习
- 再看java
- 总结
背景
笔者是一个专科院校的一名普通学生,目前就职于某三线城市的WEB方面.Net开发实习生,在找实习期间和就业期间的一些看法,发表此文,纯个人想法,欢迎讨论,指正!哈哈轻点喷~
在校学习技术方面也是.Net方面,所以实习就是.Net开发实习生。我也很喜欢这门优雅的语言!
在还未上专科院校的时候,我就开始了解编程,从启蒙的VB,到简单的排序算法。我曾经感叹:简单的几行代码,就可以完成这么多好玩的东西!跟风在网络上看到程序员的高薪,身为一个农村的孩子,也想通过编程赚取高一些的薪资和在办公室办公。
但当我开始在B站(VB也是通过视频学习)等渠道,搜索编程语言,教程的时候,十之八九的视频教程都是建议学习Java,无论是就业还是薪资方面,仿佛都告诉我:选择java就可以走上人生巅峰!迎娶白富美!
当进入学校,大一的课程是Html Css Java的时侯,我觉得这样子的路线,和网上说的是一样的!参加了社团之后,有学长和我说,我们的主要学习技术栈是.Net方面,我当时也是一脸问号?没听过这个,好像也不出名。会不会是个坑?
带着疑惑
之前在网上看的什么介绍视频都是java这种的,给了我一种,java是最好的语言的感觉,大环境都使用他。以至于我一开始是不太喜欢.Net的,现在回头想想,还是太天真了~ 从大一下学期开始,我们的课程变成了C#,winfrom方面,我一看,这不是和VB有点相识吗,都是托拉拽,写事件的。在内心更不喜欢C#了,觉得有点低级 哈哈哈(Winfrom开发大佬别喷我),那也是再次加深了偏见,我和我们专业课老师也曾对话:
- 我:老师,我们为什么要学习这个语言,就业不会很困难吗?他好像不是这么流行?
- 老胡:不要纠结于语言,主要是编程思想和学习方法。
- 我:???,我觉得有点迷茫,不知道能做什么,我会了什么?
- 老胡:以前的学生也有过你这样的迷茫,大部分人都会有,我的建议是跟着一步一步走下来,还是想的太多做的太少,人才会迷茫。
在那时,我还是不理解为什么要选择这门语言,但我还是跟着老师一步学下来了,后来的的课程是Sql,.NetCoreMVC ,JavaScript,NodeJs,Vue,WebApi
生活中迷茫
在专科院校,我们学院算是管理比较严格的。辅导员和亲妈一样,一周查寝两三次,经常和你聊天,在课堂学习的时候,还会来抓人是否有玩手机,偷偷睡觉的。也是这种环境,让我没机会偷懒,很感谢我的两位辅导员(孙姐,琦姐)! 咳咳,跑题了
其实在宿舍我们也曾一起聊天这方面:
- 舍友:我觉得我们学的太杂了,一会学这个一会学那个,啥都是浅尝辄止,就怕到时候出去都没人要
- 我:我也是觉得啊,我自己找了java的学习路线,你要不要看看?
- 舍友:我瞅瞅
- 舍友:这也太长了吧,技术要点这么多吗?
- 我:对啊,我看到招聘软件上,就是写这么多技术要点?真的有大佬这么牛吗?
在这期间,我也自己在看javaSE的基础教程,发现和C#有点像啊这个语法?吃惊!
开始实训
时光飞快,我来到了大二的下学期,那时候刚学完WebApi和Vue,终于有点前后端的感觉了(第一次体验到前后端分离),在我们学院,大二的暑假是不放假的,在学校用两个月做实训,模拟企业开发,分组分工,大家一起做一个项目。
在分完组的时候,我就想:多分几个技术比较厉害的同学给我哈哈,我们做酷一点! 老师还是按平均水平给我们分好了,不好不坏。第一个项目是blog,一开始老师说是简单的完成功能就可以了,我心想:那不是很简单吗?
后来发现两周的时间,还是赶得半死才做出来!
从数据库建模,确认表关系、到前端页面的原型、页面的效果配色、后台的框架的搭建(.Net6 WebApi + EfCore + JWT +非常简单的借鉴DDD的分层概念)第一次感觉到团队的沟通协作和项目是如何从一堆报错到另外一堆报错的哈哈
两周的时间还是太短了,至少对于我这种第一次上路的新手司机,最后也是匆匆忙忙,直到验收会的前十分钟,还是修改部署到云服务器上。也是第一次感觉这么紧张且激动!
然后就是开始了第二个练手项目:教务系统,比第一个项目难度高了一个等级,就单纯表的确定,就讨论了两天,还是初步模型,后来改了N次 以及确定使用无显示外键这种关系。由于涉及到排课,我们还想着如果并发了,应该要加上锁的情况。还有如何更好的借鉴一下DDD这个思想。后端要用上什么新的技术,可以更好的性能。前端要小程序和网页版,区分教师和学生....
在第二个项目写的时候,就有一种感觉,都是CRUD,怎么有这么多花样,这么多玩法呢?
实习
很快到了八月底,我开始了投简历的时候,一共投了几十家,由于学历的问题也被拒绝了几次,给我整的有点灰心,也拿到了三个面试的机会
- 某苏州软件公司,人员在200人左右,主要使用Winfrom -失败
- 目标城市软件开发公司,人员在50人左右,.Net6等比较新的技术 -通过
- 目标城市软件开发公司 人员在300人左右,主要使用Winfrom -通过
在九月我就来到了目标城市准备入职啦,我记忆非常深刻的是:在和我同时入职的两个人,一个是软件测试主管,一个是八年的前端工程师。
- 我:大哥,你们都是入职什么岗位呀?
- 前端工程师:我做前端的。
- 前端工程师: 你是实习生吗?看起来挺小的。
- 我:对,我是.Net实习生。
- 前端工程师:现在还有在做.Net的实习呀,我都没听过几个了哈哈
- 我:.....
在入职之后,我才发现了,就我一个独苗.Net实习生,其他实习生都是做Java方向的。主要的维护以前的老项目。用的是Winfrom等技术。
再看Java
萌生了离职的想法,因为刚入职嘛,第三天就跑路了,主要是个人原因不是很能接受Winfrom,可能是我觉得他比较老旧了吧,和我想要的不一样哈哈(再次求轻点喷),后来入职了那家50人左右的公司,不卷不加班,大家人都很友好,技术方面也是比较前沿的,完美符合了我的要求!!
然后在工作的时候,就发现了,.Net太优雅了,对比Java,拥有太多语法糖,写起来很舒服。但也是因为微软帮我们做了太多的事情,反而让我们不知道底层原理,设计模式等。
我深知一门优秀的语言应该是易用易学,好上手的,这点上C#完胜!宇宙最强的IDE,一站式帮你配置好了!
反观Java,在环境变量配置,IDE的选择等等,就会劝退一些小白(我一开始也不知道怎么配置环境变量)。
但在我的想法中,也许底层原理,设计模式这些,作为一个程序员应该懂,然后再去使用这些语法糖,知其然又知其所以然!
我开始在博客园中大量的搜索关键词 .Net转java 发现了很多这样子的文章。也看到对立,引战的发生!这点让我写一篇文章十分害怕哈哈,再次声明,我只是分享我的一些经历!
我看到了自由飞大佬的文章,其实也发现了学校选技术的用意,java的竞争太过于激烈,而C#和Java相近,市场也有需求。先就业在择业,先入行在选择!
至此,我明白了当时老胡说的意思:不要纠结于语言,主要是编程思想和学习方法。
总结
现在我也仍然在学习.Net 和java。在工作上使用的是.Net ,回来看的视频教程是Java,我想通过java来更深入的了解一些底层一点的机制,学习更新的技术。也是因为java的教程确实比.Net更加丰富,生态会更好一点,不可否认!
但我依然喜爱这C#这门十分优雅的语言,喜欢它无处不在的语法糖!在工作上也仍然会继续深入研究它!
最后,也告诉自己:不要纠结于语言,主要是编程思想和学习方法。
关于.Net和Java的看法-一个小实习生经历的更多相关文章
- Java异常的一个小知识
有以下两个代码: package com.lk.A; public class Test3 { public static void main(String[] args) { try { int a ...
- 下载eclipse 配置eclipse 新建Java项目 写一个小程序 运行
为了更好的学习java,我打算下载个eclipse 地址:https://www.eclipse.org/downloads/packages/ 我们需要下载的版本是Eclipse IDE for J ...
- 【Java】一个小程序,计算它包含的代码所需的耗时
写一个小程序,用来计算它包含的代码所需的耗时.虽然简单,测试代码是否耗时还是有点用的,不用重新写嘛~ import java.util.Date; import java.util.concurren ...
- java连接mysql的一个小例子
想要用java 连接数据库,需要在classpath中加上jdbc的jar包路径 在eclipse中,Project的properties里面的java build path里面添加引用 连接成功的一 ...
- java操作xml的一个小例子
最近两天公司事比较多,这两天自己主要跟xml打交道,今天更一下用java操作xml的一个小例子. 原来自己操作xml一直用这个包:xstream-1.4.2.jar.然后用注解的方式,很方便,自己只要 ...
- java线程间通信:一个小Demo完全搞懂
版权声明:本文出自汪磊的博客,转载请务必注明出处. Java线程系列文章只是自己知识的总结梳理,都是最基础的玩意,已经掌握熟练的可以绕过. 一.从一个小Demo说起 上篇我们聊到了Java多线程的同步 ...
- 一个小栗子聊聊JAVA泛型基础
背景 周五本该是愉快的,可是今天花了一个早上查问题,为什么要花一个早上?我把原因总结为两点: 日志信息严重丢失,茫茫代码毫无头绪. 对泛型的认识不够,导致代码出现了BUG. 第一个原因可以通过以后编码 ...
- JDK9版本以上Java独有的一个轻量级小工具,你知道吗?jshell
jshell,是JavaJDK9这个大版本更新以来,带来的一个轻量级小工具.我们再也不用进入Java目录,编写一个Java文件,然后再去编译,最后才能执行它. 这里,你可以直接写一个小功能,就能去实现 ...
- Hutool :一个小而全的 Java 工具类库
Hutool 简介 Hutool 是一个小而全的 Java 工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的 ...
随机推荐
- Mysql之基础知识笔记
Mysql数据库基础知识个人笔记 连接本地数据库: mysql -h localhost -u root -p 回车输入数据库密码 数据库的基础操作: 查看当前所有的数据库:show database ...
- 2022-9-5 JavaSE note
Java SE 1.IDEA基本操作 psvm + 回车 : main() 方法声明 sout + 回车 : = System.out.println(); Ctrl + D : 把当前行复制到下一行 ...
- dotnet 为大型应用接入 ApplicationStartupManager 启动流程框架
对于大型的应用软件,特别是客户端应用软件,应用启动过程中,需要执行大量的逻辑,包括各个模块的初始化和注册等等逻辑.大型应用软件的启动过程都是非常复杂的,而客户端应用软件是对应用的启动性能有所要求的,不 ...
- 新渲染引擎、自定义设计和高质量用户体验的样例应用 Wonderous 现已开源
探索世界奇观,并体验 Flutter 的强大之处. Flutter 的愿景是让你能够在空白画布上绘制出不受限制的精美应用.最近,通过与 gskinner 团队的通力合作,我们打造了一个全新的移动应用 ...
- KubeOperator版本升级后有关nexus组件的密码问题说明
KO升级后,会覆盖原版本的nexus持久化文件,nexus密码会还原为默认密码admin123 在KO升级成功并用默认密码登录成功后,若想修改nexus密码,采用如下方式 1.先用默认密码登录nexu ...
- 使用SkyWalking监控nginx (以openresty为例)
安装使用SkyWalking先看这篇文章,地址:https://www.cnblogs.com/sanduzxcvbnm/p/15829781.html 使用SkyWalking监控nginx借助的是 ...
- 利用curl命令访问Kubernetes API server
kubectl 通过访问 Kubernetes API 来执行命令.我们也可以通过对应的TLS key, 使用curl 或是 golang client做同样的事. API 请求必须使用 JSON 格 ...
- 小白入行安全圈内必须知道的top10
OWASP Top10 前言 每年的Top10都在更新,但是一般不会有太大的改变,这里说明的是 2021年的Top10排行榜. A01:访问控制失效(Broken Access Control) 攻击 ...
- WPF 的内部世界(Binding)
目录 一.控件与布局 二.Binding基础 前言 "一桥飞架南北, 天堑变通途" 写于1956年,1957年武汉长江大桥建成, 称之为:一桥飞架南北,大堑变通途.它形象地描述武汉 ...
- 对vue中的data进行数据初始化
this.$data:是表示当前的改变后的this中的数据 this.$options.data():是表示没有赋值前的this中的数据,表示 初始化的data 一般可以使用Object.assign ...