目录

  1. 背景
  2. 带着疑惑
  3. 生活中的迷茫
  4. 开始实训
  5. 实习
  6. 再看java
  7. 总结

背景

笔者是一个专科院校的一名普通学生,目前就职于某三线城市的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的看法-一个小实习生经历的更多相关文章

  1. Java异常的一个小知识

    有以下两个代码: package com.lk.A; public class Test3 { public static void main(String[] args) { try { int a ...

  2. 下载eclipse 配置eclipse 新建Java项目 写一个小程序 运行

    为了更好的学习java,我打算下载个eclipse 地址:https://www.eclipse.org/downloads/packages/ 我们需要下载的版本是Eclipse IDE for J ...

  3. 【Java】一个小程序,计算它包含的代码所需的耗时

    写一个小程序,用来计算它包含的代码所需的耗时.虽然简单,测试代码是否耗时还是有点用的,不用重新写嘛~ import java.util.Date; import java.util.concurren ...

  4. java连接mysql的一个小例子

    想要用java 连接数据库,需要在classpath中加上jdbc的jar包路径 在eclipse中,Project的properties里面的java build path里面添加引用 连接成功的一 ...

  5. java操作xml的一个小例子

    最近两天公司事比较多,这两天自己主要跟xml打交道,今天更一下用java操作xml的一个小例子. 原来自己操作xml一直用这个包:xstream-1.4.2.jar.然后用注解的方式,很方便,自己只要 ...

  6. java线程间通信:一个小Demo完全搞懂

    版权声明:本文出自汪磊的博客,转载请务必注明出处. Java线程系列文章只是自己知识的总结梳理,都是最基础的玩意,已经掌握熟练的可以绕过. 一.从一个小Demo说起 上篇我们聊到了Java多线程的同步 ...

  7. 一个小栗子聊聊JAVA泛型基础

    背景 周五本该是愉快的,可是今天花了一个早上查问题,为什么要花一个早上?我把原因总结为两点: 日志信息严重丢失,茫茫代码毫无头绪. 对泛型的认识不够,导致代码出现了BUG. 第一个原因可以通过以后编码 ...

  8. JDK9版本以上Java独有的一个轻量级小工具,你知道吗?jshell

    jshell,是JavaJDK9这个大版本更新以来,带来的一个轻量级小工具.我们再也不用进入Java目录,编写一个Java文件,然后再去编译,最后才能执行它. 这里,你可以直接写一个小功能,就能去实现 ...

  9. Hutool :一个小而全的 Java 工具类库

    Hutool 简介 Hutool 是一个小而全的 Java 工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以"甜甜的 ...

随机推荐

  1. Unity2D-Dash && SpeedUp

    ​ Introduction 原理: 角色位置改变时,每隔一段时间记录角色的位置,然后在记录的位置上放置一个图片,在图片出现之后过一段时间就让图片渐渐消失 简述实现步骤: 1.在Unity中Creat ...

  2. torch.stack()与torch.cat()

    torch.stack():http://www.45fan.com/article.php?aid=1D8JGDik5G49DE1X torch.stack()个人理解:属于先变形再cat的操作,所 ...

  3. Java的线程状态

    在我们平时写code的时候,经常会使用到多线程.其中线程所处的状态就是我们需要进程思考的问题. 线程有哪些状态 NEW: 一个线程刚被创建,但是没有被使用就是处于这个状态 RUNNABLE: 一个线程 ...

  4. tar.gz方式安装nacos设置使用systemct进行service方式的管理并设置开机自启动--废弃不用这个

    nacos解压缩目录是:/opt/nacos 编写shell脚本 # vim /opt/nacos/bin/nacos.sh #!/bin/bash source /etc/profile workD ...

  5. 制造企业有可能自行开发ERP系统吗?

    当然可以啊! 生产企业对于ERP的需求是一直存在的,但市场上多为标准化的产品,与企业的个性化需求矛盾着. 有很多制造企业自行开发ERP系统啊!只是各个企业成效不同而已,毕竟不同企业的IT开发能力不同而 ...

  6. 洛谷P1395 会议 (树的重心)

    这道题考察了树的重心的性质,所有点到中心的距离之和是最小的,所以我们一遍dfs求出树的重心,在跑一次dfs统计距离之和. 1 #include<bits/stdc++.h> 2 using ...

  7. POJ3342 Party at Hali-Bula(树形DP)

    dp[u][0]表示不选u时在以u为根的子树中最大人数,dp[u][1]则是选了u后的最大人数: f[u][0]表示不选u时的唯一性,f[u][1]是选了u后的唯一性,值为1代表唯一,0代表不唯一. ...

  8. 关于click和onclick的区别

    click()和onclick()的区别: 1.onclick是绑定事件,告诉浏览器在鼠标点击时候要做什么 click本身是方法作用是触发onclick事件,只要执行了元素的click()方法,就会触 ...

  9. C++ 队列!还是要从 STL 中的说起……

    1. 前言 队列和栈一样,都是受限的数据结构. 队列遵循先进先出的存储原则,类似于一根水管,水从一端进入,再从另一端出去.进入的一端称为队尾,出去的一端称为队头. 队列有 2 个常规操作: 入队:进入 ...

  10. Period of an Infinite Binary Expansion 题解

    Solution 简单写一下思考过程,比较水的数论题 第一个答案几乎已经是可以背下来的,在此不再赘述 考虑我们已经知道了\((p,q)\),其中\((p \perp q) \wedge (q \per ...