關於.Net和Java的看法-一個小實習生經歷

来源:https://www.cnblogs.com/xiaofangcode/archive/2022/11/09/16871193.html
-Advertisement-
Play Games

前言 之前想用Markdown來寫框架文檔,找來找去發現還是Jekyll的多,但又感覺不是很合我的需求 於是打算自己簡單弄一個展示Markdown文檔的網站工具,要支持多版本、多語言、導航、頁內導航等,並且支持Github Pages免費站點 組件選擇 我自己呢比較喜歡C#,恰好現在ASP.Net ...


目錄

  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#,WinForm 方面,我一看,這不是和VB有點相識嗎,都是托拉拽,寫事件的。在內心更不喜歡C#了,覺得有點低級 哈哈哈(WinForm 開發大佬別噴我),那也是再次加深了偏見,我和我們專業課老師也曾對話:

  • 我:老師,我們為什麼要學習這個語言,就業不會很困難嗎?他好像不是這麼流行?
  • 老胡:不要糾結於語言,主要是編程思想和學習方法。
  • 我:???,我覺得有點迷茫,不知道能做什麼,我會了什麼?
  • 老胡:以前的學生也有過你這樣的迷茫,大部分人都會有,我的建議是跟著一步一步走下來,還是想的太多做的太少,人才會迷茫。

在那時,我還是不理解為什麼要選擇這門語言,但我還是跟著老師一步學下來了,後來的的課程是Sql,.NetCoreMVC ,JavaScript,NodeJs,Vue,WebApi

生活中迷茫

在專科院校,我們學院算是管理比較嚴格的。輔導員和親媽一樣,一周查寢兩三次,經常和你聊天,在課堂學習的時候,還會來抓人是否有玩手機,偷偷睡覺的。也是這種環境,讓我沒機會偷懶,很感謝我的兩位輔導員(孫姐,琦姐)! 咳咳,跑題了
其實在宿舍我們也曾一起聊天這方面:

  • 舍友:我覺得我們學的太雜了,一會學這個一會學那個,啥都是淺嘗輒止,就怕到時候出去都沒人要
  • 我:我也是覺得啊,我自己找了java的學習路線,你要不要看看?
  • 舍友:我瞅瞅
  • 舍友:這也太長了吧,技術要點這麼多嗎?
  • 我:對啊,我看到招聘軟體上,就是寫這麼多技術要點?真的有大佬這麼牛嗎?

在這期間,我也自己在看javaSE的基礎教程,發現和C#有點像啊這個語法?吃驚!

開始實訓

時光飛快,我來到了大二的下學期,那時候剛學完WebApi和Vue,終於有點前後端的感覺了(第一次體驗到前後端分離),在我們學院,大二的暑假是不放假的,在學校用兩個月做實訓,模擬企業開發,分組分工,大家一起做一個項目。
在分完組的時候,我就想:多分幾個技術比較厲害的同學給我哈哈,我們做酷一點! 老師還是按平均水平給我們分好了,不好不壞。第一個項目是blog,一開始老師說是簡單的完成功能就可以了,我心想:那不是很簡單嗎?
後來發現兩周的時間,還是趕得半死才做出來!
從資料庫建模,確認表關係、到前端頁面的原型、頁面的效果配色、後臺的框架的搭建(.Net6 WebApi + EfCore + JWT +非常簡單的借鑒DDD的分層概念)第一次感覺到團隊的溝通協作和項目是如何從一堆報錯到另外一堆報錯的哈哈

兩周的時間還是太短了,至少對於我這種第一次上路的新手司機,最後也是匆匆忙忙,直到驗收會的前十分鐘,還是修改部署到雲伺服器上。也是第一次感覺這麼緊張且激動!

然後就是開始了第二個練手項目:教務系統,比第一個項目難度高了一個等級,就單純表的確定,就討論了兩天,還是初步模型,後來改了N次 以及確定使用無顯示外鍵這種關係。由於涉及到排課,我們還想著如果併發了,應該要加上鎖的情況。還有如何更好的借鑒一下DDD這個思想。後端要用上什麼新的技術,可以更好的性能。前端要小程式和網頁版,區分教師和學生....
在第二個項目寫的時候,就有一種感覺,都是CRUD,怎麼有這麼多花樣,這麼多玩法呢?

實習

很快到了八月底,我開始了投簡歷的時候,一共投了幾十家,由於學歷的問題也被拒絕了幾次,給我整的有點灰心,也拿到了三個面試的機會

  • 某蘇州軟體公司,人員在200人左右,主要使用WinForm -失敗
  • 目標城市軟體開發公司,人員在50人左右,.Net6等比較新的技術 -通過
  • 目標城市軟體開發公司 人員在300人左右,主要使用WinForm -通過

在九月我就來到了目標城市準備入職啦,我記憶非常深刻的是:在和我同時入職的兩個人,一個是軟體測試主管,一個是八年的前端工程師。

  • 我:大哥,你們都是入職什麼崗位呀?
  • 前端工程師:我做前端的。
  • 前端工程師: 你是實習生嗎?看起來挺小的。
  • 我:對,我是.Net實習生。
  • 前端工程師:現在還有在做.Net的實習呀,我都沒聽過幾個了哈哈
  • 我:.....

在入職之後,我才發現了,就我一個獨苗.Net實習生,其他實習生都是做Java方向的。主要的維護以前的老項目。用的是WinForm 等技術。

再看Java

萌生了離職的想法,因為剛入職嘛,第三天就跑路了,主要是個人原因不是很能接受WinForm ,可能是我覺得他比較老舊了吧,和我想要的不一樣哈哈(再次求輕點噴),後來入職了那家50人左右的公司,不捲不加班,大家人都很友好,技術方面也是比較前沿的,完美符合了我的要求!!

然後在工作的時候,就發現了,.Net太優雅了,對比Java,擁有太多語法糖,寫起來很舒服。但也是因為微軟幫我們做了太多的事情,反而讓我們不知道底層原理,設計模式等。

我深知一門優秀的語言應該是易用易學,好上手的,這點上C#完勝!宇宙最強的IDE,一站式幫你配置好了!

反觀Java,在環境變數配置,IDE的選擇等等,就會勸退一些小白(我一開始也不知道怎麼配置環境變數)。

但在我的想法中,也許底層原理,設計模式這些,作為一個程式員應該懂,然後再去使用這些語法糖,知其然又知其所以然!

我開始在博客園中大量的搜索關鍵詞 .Net轉java 發現了很多這樣子的文章。也看到對立,引戰的發生!這點讓我寫一篇文章十分害怕哈哈,再次聲明,我只是分享我的一些經歷!

我看到了自由飛大佬的文章,其實也發現了學校選技術的用意,java的競爭太過於激烈,而C#和Java相近,市場也有需求。先就業再擇業,先入行再選擇!

至此,我明白了當時老胡說的意思:不要糾結於語言,主要是編程思想和學習方法。

總結

現在我也仍然在學習.Net 和java。在工作上使用的是.Net ,回來看的視頻教程是Java,我想通過java來更深入的瞭解一些底層一點的機制,學習更新的技術。也是因為java的教程確實比.Net更加豐富,生態會更好一點,不可否認!
但我依然喜愛這C#這門十分優雅的語言,喜歡它無處不在的語法糖!在工作上也仍然會繼續深入研究它!
最後,也告訴自己:不要糾結於語言,主要是編程思想和學習方法。

本文來自博客園,作者:小方同學在學習,轉載請註明原文鏈接:https://www.cnblogs.com/xiaofangcode/p/16871193.html


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、開發文檔 微信開發文檔:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1 安全規範:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3 1、簽名演算法 (簽 ...
  • 簡介: 命令模式,又稱之為動作模式或者事務模式,屬於行為型的設計模式。 將不同的請求封裝成不同的請求對象,以便使用不同的請求; 角色都會用飯館來舉例子: 命令下達者:顧客 命令接受者:服務員 命令本身: 菜單 命令執行者:廚師 適用場景: Laravel的事件調度機制有用到了命令模式。 想要解耦服務 ...
  • Java 基礎一 【註釋】 comment 對代碼進行解釋說明1.Java規範的註釋有3種單行註釋://多行註釋:/* */文檔註釋(java特有)2.單行註釋和多行註釋的作用:對所寫的程式進行解釋說明,增強可讀性。方便自己,方便別人。可以調試所寫的代碼3.特點單行註釋和多行註釋,註釋了的內容不參與 ...
  • RPC(Remote Procedure Call) 是 Hadoop 服務通信的關鍵庫,支撐上層分散式環境下複雜的進程間(Inter-Process Communication, IPC)通信邏輯,是分散式系統的基礎。允許運行於一臺電腦上的程式像調用本地方法一樣,調用另一臺電腦的子程式。由於 ...
  • 作為緩存系列專欄的第四篇文章,我們將在上一篇的基礎之上進行升華,一起思考如何構建一個完整且通用的本地緩存框架,併在過程中體會緩存實現的關鍵點與架構設計的思路。 ...
  • 2022年11月8日.NET 7正式發佈 .NET仍然是最快、最受歡迎、最值得信賴的平臺之一,其龐大的.NET軟體包生態系統包括33萬多個軟體包。 .NET 7為您的應用程式帶來了更高的性能和C# 11/F# 7、.NET MAUI、ASP.NET Core/Blazor、Web APIs、WinF ...
  • 一:背景 1.講故事 有朋友咨詢個問題,他每次在調試 WinDbg 的時候,進程初始化斷點之前都會有一些 dll 載入到進程中,比如下麵這樣: Microsoft (R) Windows Debugger Version 10.0.25200.1003 X86 Copyright (c) Micro ...
  • 依賴管理是 NuGet 的核心功能。Nuget管理單個項目的依賴關係很容易。管理多項目解決方案的依賴關係可能會變得很困難,因為它們的規模和複雜性開始擴大。 在您管理許多不同項目的公共依賴項的情況下,您可以利用 NuGet 的中央包管理功能從一個位置輕鬆完成所有這些工作。 要開始使用中央包管理,您可以 ...
一周排行
    -Advertisement-
    Play Games
  • GoF之工廠模式 @目錄GoF之工廠模式每博一文案1. 簡單說明“23種設計模式”1.2 介紹工廠模式的三種形態1.3 簡單工廠模式(靜態工廠模式)1.3.1 簡單工廠模式的優缺點:1.4 工廠方法模式1.4.1 工廠方法模式的優缺點:1.5 抽象工廠模式1.6 抽象工廠模式的優缺點:2. 總結:3 ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 本章將和大家分享ES的數據同步方案和ES集群相關知識。廢話不多說,下麵我們直接進入主題。 一、ES數據同步 1、數據同步問題 Elasticsearch中的酒店數據來自於mysql資料庫,因此mysql數據發生改變時,Elasticsearch也必須跟著改變,這個就是Elasticsearch與my ...
  • 引言 在我們之前的文章中介紹過使用Bogus生成模擬測試數據,今天來講解一下功能更加強大自動生成測試數據的工具的庫"AutoFixture"。 什麼是AutoFixture? AutoFixture 是一個針對 .NET 的開源庫,旨在最大程度地減少單元測試中的“安排(Arrange)”階段,以提高 ...
  • 經過前面幾個部分學習,相信學過的同學已經能夠掌握 .NET Emit 這種中間語言,並能使得它來編寫一些應用,以提高程式的性能。隨著 IL 指令篇的結束,本系列也已經接近尾聲,在這接近結束的最後,會提供幾個可供直接使用的示例,以供大伙分析或使用在項目中。 ...
  • 當從不同來源導入Excel數據時,可能存在重覆的記錄。為了確保數據的準確性,通常需要刪除這些重覆的行。手動查找並刪除可能會非常耗費時間,而通過編程腳本則可以實現在短時間內處理大量數據。本文將提供一個使用C# 快速查找並刪除Excel重覆項的免費解決方案。 以下是實現步驟: 1. 首先安裝免費.NET ...
  • C++ 異常處理 C++ 異常處理機制允許程式在運行時處理錯誤或意外情況。它提供了捕獲和處理錯誤的一種結構化方式,使程式更加健壯和可靠。 異常處理的基本概念: 異常: 程式在運行時發生的錯誤或意外情況。 拋出異常: 使用 throw 關鍵字將異常傳遞給調用堆棧。 捕獲異常: 使用 try-catch ...
  • 優秀且經驗豐富的Java開發人員的特征之一是對API的廣泛瞭解,包括JDK和第三方庫。 我花了很多時間來學習API,尤其是在閱讀了Effective Java 3rd Edition之後 ,Joshua Bloch建議在Java 3rd Edition中使用現有的API進行開發,而不是為常見的東西編 ...
  • 框架 · 使用laravel框架,原因:tp的框架路由和orm沒有laravel好用 · 使用強制路由,方便介面多時,分多版本,分文件夾等操作 介面 · 介面開發註意欄位類型,欄位是int,查詢成功失敗都要返回int(對接java等強類型語言方便) · 查詢介面用GET、其他用POST 代碼 · 所 ...
  • 正文 下午找企業的人去鎮上做貸後。 車上聽同事跟那個司機對罵,火星子都快出來了。司機跟那同事更熟一些,連我在內一共就三個人,同事那一手指桑罵槐給我都聽愣了。司機也是老社會人了,馬上聽出來了,為那個無辜的企業經辦人辯護,實際上是為自己辯護。 “這個事情你不能怪企業。”“但他們總不能讓銀行的人全權負責, ...