JavaRush /Java Blog /Random-TW /Java 開發者之路
trinit
等級 41

Java 開發者之路

在 Random-TW 群組發布
好吧,輪到我寫我的故事了。簡而言之,我成為初級 Java 開發人員已經 3.5 個月了。如果您想了解詳細信息,請繼續閱讀。就像每個寫就業經驗的人一樣,最好從我是誰以及我成為誰的背景故事開始。很久以前,很多很多年前,我嘗試開始編程。那是二三年級的時候,我報名了一個程式設計俱樂部,去了好幾次,學會了在鍵盤上輸入我的名字和家庭地址,我的程式設計就這樣結束了,因為出於某種原因我退出了那個俱樂部。我在學校或大學沒有任何程式設計技能,就像我正在學習成為會計師一樣。我曾多次嘗試自學程式設計。我家裡有一本電腦科學的書,裡面有Pascal的問題,但我什麼都不懂,也沒有人解釋,所以我放棄了。幾年過去了,我學習成為會計師,但沒有工作。大約兩年前,我終於在一家 1C 加盟商找到了工作。我去了那裡的用戶技術支援熱線,因為... 我懂會計,1C的主要方向還是這個行業。過了一段時間,導演說我有必要學習編程,因為… 沒有人可以寫信,而且這些知識不會對技術支援造成損害。無處可去,這是我的第一步。兩個月我讀了一本關於1C平台的書,然後他們向我解釋了什麼是變量,然後就像一頭霧水:)開玩笑。除了變數之外我什麼都不懂,只能看基於Python的初學者課程。已經在工作和具體任務的過程中,我開始了解循環、陣列和逐步偵錯的機制。真正的突破是當我弄清楚如何將參數傳遞給其他函數時。有一天,我坐在谷歌上搜尋什麼可以幫助我學習 1C,在一個論壇上我發現學習 VB.NET 語言可以幫助我實現這一點。這是另一個突破。我下載了《Lukin S.N.理解Visual Basic.NET.自學手冊3卷》一書並開始學習。這本書非常好,特別適合初學者。對於初學者來說這門語言也很好,儘管很多人說它不好(顯然他們還記得舊的VB)。一方面,它允許您在不被使用者介面分心的情況下削減邏輯,另一方面,它同時是過程性的和物件導向的。另外,事實證明VB.NET確實和1C非常相似,或者更確切地說,1C和它很相似,我很容易整天用1C編程,解決工作問題,晚上來了,迅速切換到1C另一種語言。我把所有的空閒時間和週末都用來程式設計。大約在那個時候,我已經開始厭倦了 1C,並意識到我無法透過 1C 賺錢(我的收入比我的會計師客戶少一倍半,我為他們編寫了程式並為他們提供了培訓)。我開始思考,下一步該怎麼做?我想到了 Android,它看起來很有趣、有前途等等。一位程式設計師朋友說他們是用Java寫的,網路上也證實了這一點。有朋友說,不如先學C++再學Java。我已經想開始了,但是這本書還有一半以上是關於VB.NET的,我不想退出。這本書本來可以在一個月內讀完,但我意識到光靠閱讀而不練習不會有任何幫助,所以我決定寫一些小但我自己的專案。為此選擇了記事本。我寫了一個記事本,可以開啟和儲存文件,確定開啟文件時的編碼,並為 1C 語法著色。然後我寫了一個計算器(沒想到這麼複雜的東西)。然後,按照我的標準,還有另一個大項目——一個解決 1C 測試的程序。重點是,它需要一個包含問題和答案的文本文件,將其全部放入 Excel 文件中(是​​的,當時我不知道如何使用數據庫),然後您可以解決該部分和隨機票證, ETC。還有一些其他小程式可以理解流程、存取修飾符和其他東西。我已經完成了 VB.NET 這本書的時間了。我有足夠的基礎,大約與大學二年級甚至三年級之後的程度相同。在工作中,我也已經能夠很好地編寫並理解程式碼叢林。只是工作最終變得無聊了,因為在1C上寫你不需要懂編程,但更大程度上你只需要了解平台的機制。正如我的朋友所建議的,現在輪到 C++ 了。我開了C++書,又開了第二本。他們到處寫到,在學習 C++ 之前,你需要了解 C。我找到一本關於 C 的書,翻閱了它,心想“操你!”,我想在 Android 上編寫,我需要 JAVA。似乎最終並沒有放棄 C,我決定純粹為了未來,看看 Java 初學者的課程。猜猜我在哪裡絆倒了?是的,致我們摯愛的 JavaRush。那是 2015 年新年。當我按下綠色的“遊戲”大按鈕時,我不知所措。前 10 個等級很簡單。然後就是收費,美元空前高漲,你必須等待折扣。同時,我遇到了中等難度的Python免費課程;開動腦筋總不是壞主意,我又花了幾個月的時間完成了這些課程。有一天我有機會去一家公司面試,他們需要一個會用Java來寫的人。我一晚都沒睡好,一直以為他們可能會問我,早上我又重複了一遍介面和抽象類別的區別,存取修飾符,多態性。但他們什麼也沒問我,只是寫了一份需要學習的技術清單,然後他們答應給我一個測試任務,根據這個任務他們會看我的編碼風格、邏輯,然後做出一個關於我的就業的決定。這個空缺不是針對Android的,而是針對伺服器端的,也許這樣是最好的。第二天我就退出了1C,因為這個領域對我來說已經很累了,每天賺錢、鏟大量的1C程式碼,然後學習Java技術已經超出了我的能力範圍。我迫不及待地開始學習給我的Java技術,這項 那時我不知道如何使用資料庫)然後你可以決定分區和隨機票等。還有一些其他小程式可以理解流程、存取修飾符和其他東西。我已經完成了 VB.NET 這本書的時間了。我有足夠的基礎,大約與大學二年級甚至三年級之後的程度相同。在工作中,我也已經能夠很好地編寫並理解程式碼叢林。只是工作最終變得無聊了,因為在1C上寫你不需要懂編程,但更大程度上你只需要了解平台的機制。正如我的朋友所建議的,現在輪到 C++ 了。我開了C++書,又開了第二本。他們到處寫到,在學習 C++ 之前,你需要了解 C。我找到一本關於 C 的書,翻閱了它,心想“操你!”,我想在 Android 上編寫,我需要 JAVA。似乎最終並沒有放棄 C,我決定純粹為了未來,看看 Java 初學者的課程。猜猜我在哪裡絆倒了?是的,致我們摯愛的 JavaRush。那是 2015 年新年。當我按下綠色的“遊戲”大按鈕時,我不知所措。前 10 個等級很簡單。然後就是收費,美元空前高漲,你必須等待折扣。同時,我遇到了中等難度的Python免費課程;開動腦筋總不是壞主意,我又花了幾個月的時間完成了這些課程。有一天我有機會去一家公司面試,他們需要一個會用Java來寫的人。我一晚都沒睡好,一直以為他們可能會問我,早上我又重複了一遍介面和抽象類別的區別,存取修飾符,多態性。但他們什麼也沒問我,只是寫了一份需要學習的技術清單,然後他們答應給我一個測試任務,根據這個任務他們會看我的編碼風格、邏輯,然後做出一個關於我的就業的決定。這個空缺不是針對Android的,而是針對伺服器端的,也許這樣是最好的。第二天我就退出了1C,因為這個領域對我來說已經很累了,每天賺錢、鏟大量的1C程式碼,然後學習Java技術已經超出了我的能力範圍。我迫不及待地開始學習給我的Java技術,這項 那時我不知道如何使用資料庫)然後你可以決定分區和隨機票等。還有一些其他小程式可以理解流程、存取修飾符和其他東西。我已經完成了 VB.NET 這本書的時間了。我有足夠的基礎,大約與大學二年級甚至三年級之後的程度相同。在工作中,我也已經能夠很好地編寫並理解程式碼叢林。只是工作最終變得無聊了,因為在1C上寫你不需要懂編程,但更大程度上你只需要了解平台的機制。正如我的朋友所建議的,現在輪到 C++ 了。我開了C++書,又開了第二本。他們到處寫到,在學習 C++ 之前,你需要了解 C。我找到一本關於 C 的書,翻閱了它,心想“操你!”,我想在 Android 上編寫,我需要 JAVA。似乎最終並沒有放棄 C,我決定純粹為了未來,看看 Java 初學者的課程。猜猜我在哪裡絆倒了?是的,致我們摯愛的 JavaRush。那是 2015 年新年。當我按下綠色的“遊戲”大按鈕時,我不知所措。前 10 個等級很簡單。然後就是收費,美元空前高漲,你必須等待折扣。同時,我遇到了中等難度的Python免費課程;開動腦筋總不是壞主意,我又花了幾個月的時間完成了這些課程。有一天我有機會去一家公司面試,他們需要一個會用Java來寫的人。我一晚都沒睡好,一直以為他們可能會問我,早上我又重複了一遍介面和抽象類別的區別,存取修飾符,多態性。但他們什麼也沒問我,只是寫了一份需要學習的技術清單,然後他們答應給我一個測試任務,根據這個任務他們會看我的編碼風格、邏輯,然後做出一個關於我的就業的決定。這個空缺不是針對Android的,而是針對伺服器端的,也許這樣是最好的。第二天我就退出了1C,因為這個領域對我來說已經很累了,每天賺錢、鏟大量的1C程式碼,然後學習Java技術已經超出了我的能力範圍。我迫不及待地開始學習給我的Java技術,這項 似乎最終並沒有放棄 C,我決定純粹為了未來,看看 Java 初學者的課程。猜猜我在哪裡絆倒了?是的,致我們摯愛的 JavaRush。那是 2015 年新年。當我按下綠色的“遊戲”大按鈕時,我不知所措。前 10 個等級很簡單。然後就是收費,美元空前高漲,你必須等待折扣。同時,我遇到了中等難度的Python免費課程;開動腦筋總不是壞主意,我又花了幾個月的時間完成了這些課程。有一天我有機會去一家公司面試,他們需要一個會用Java來寫的人。我一晚都沒睡好,一直以為他們可能會問我,早上我又重複了一遍介面和抽象類別的區別,存取修飾符,多態性。但他們什麼也沒問我,只是寫了一份需要學習的技術清單,然後他們答應給我一個測試任務,根據這個任務他們會看我的編碼風格、邏輯,然後做出一個關於我的就業的決定。這個空缺不是針對Android的,而是針對伺服器端的,也許這樣是最好的。第二天我就退出了1C,因為這個領域對我來說已經很累了,每天賺錢、鏟大量的1C程式碼,然後學習Java技術已經超出了我的能力範圍。我迫不及待地開始學習給我的Java技術,這項 似乎最終並沒有放棄 C,我決定純粹為了未來,看看 Java 初學者的課程。猜猜我在哪裡絆倒了?是的,致我們摯愛的 JavaRush。那是 2015 年新年。當我按下綠色的“遊戲”大按鈕時,我不知所措。前 10 個等級很簡單。然後就是收費,美元空前高漲,你必須等待折扣。同時,我遇到了中等難度的Python免費課程;開動腦筋總不是壞主意,我又花了幾個月的時間完成了這些課程。有一天我有機會去一家公司面試,他們需要一個會用Java來寫的人。我一晚都沒睡好,一直以為他們可能會問我,早上我又重複了一遍介面和抽象類別的區別,存取修飾符,多態性。但他們什麼也沒問我,只是寫了一份需要學習的技術清單,然後他們答應給我一個測試任務,根據這個任務他們會看我的編碼風格、邏輯,然後做出一個關於我的就業的決定。這個空缺不是針對Android的,而是針對伺服器端的,也許這樣是最好的。第二天我就退出了1C,因為這個領域對我來說已經很累了,每天賺錢、鏟大量的1C程式碼,然後學習Java技術已經超出了我的能力範圍。我迫不及待地開始學習給我的Java技術,這項清單: 1.物件導向程式設計。2. 梅文。3.阿帕契磁磚。4.SpringMVC。5. 休眠。6. Eclipse(我建議不要使用乾淨的環境,而是使用 Spring 的 STS - https://spring.io/tools/sts/)。7. Tomcat 8. 8. JUnit。 我將添加一些非常需要了解的技術: 9. Bootstrap - 使用它,您可以非常快速地創建網站界面,而無需發明您知道的東西... 10. JQuery - 以免編寫大量本機 JS code + 有各種有用的東西,例如autocomplete() 等。11. Linux/Ubuntu - 在大多數情況下,這將在工作時安裝。您至少需要能夠安裝 JDK 和 Tomcat。12. GIT/其他版本控制系統是必須具備的。13.JSON。 以及專案中可能要用到的技術: 14. AngularJS - JS框架,一個很酷的東西。15.MongoDB。16.RabbitMQ。 以及你不能沒有的: 17. 英語!有必要在學習品質和花費的時間之間保持平衡。空缺不可能永遠等待我,這就是我前進的動力。每天我花大約14-16個小時學習。我花了三個星期才熟悉這些技巧。我剛剛閱讀了一些有關某些技術的文章,並觀看了有關其他技術的影片。我在實踐中認識了像 Spring 和 Hibernate 這樣的人 - 我觀看了印度人的影片並重複了他們的做法。我編寫了幾個 JUnit 測試,並在我的電腦上安裝了 tomcat。Maven 在 pom.xml 中包含依賴項。關於Eclipse,我認為它只是一個工具,我可以隨時從IDEA切換到它(我是多麼錯誤)。雖然我對自己的知識沒有信心,但還是到了考試的時候了。我接受了,結果發現並不是很難,因為過去3個星期我在學習科技的過程中幾乎都遇過這些。有必要編寫一個 Web 應用程式 - 一個任務管理器(網站),您可以在其中建立任務、更改任務、刪除任務、為其指定狀態和建立日期。並為其開發一個註冊/登入模組。所有這一切都可以在不使用 JS、漂亮的 UI、簡單的 HTML 和 CSS 的情況下完成。同時,JavaRush出現了折扣,我訂閱了,但沒有時間上課。做測試任務非常有趣。花了一週完成主要功能,然後花了一週時間修復小錯誤,重構,從 org.hibernate.SessionFactory 重寫為 javax.persistence.EntityManager,將資料庫從 MySQL 更改為 H2 或 HSQLDB,編寫 JUnit 測試。當我重做這一切時,我遇到了一千個錯誤,一路上我學會了閱讀我現在喜愛的英文版 stackoverflow,並至少理解了一些東西,儘管是來自谷歌翻譯。我在 Eclipse 方面也遇到了困難,因為它在我面試時得到的技術清單中。我只想說 IDEA 和 Eclipse 之間的差異是巨大的。想像一下,你正在搭飛機,所以,IDEA 是一架有飛行員的飛機,你睡在頭等艙座位上,慢慢飛向目的地,而 Eclipse - 你也在搭飛機,但作為飛行員,外面有雷雨,閃電每20 分鐘就會擊中您的引擎。說真的,IDEA 為你做了很多事情,而你甚至不知道它;在 Eclipse 中,所有這些都需要設定、配置和註冊。在「我的 Eclipse」的最初幾天,我吐口水、咒罵並表現出自殺傾向,在使用這個 IDE 5 個月後,我可以說它很酷、強大且可用,你只需要習慣它即可。最後,一切順利,還有另一次面試,詢問有關應用程式功能實現的問題,我通過了。然後又採訪了導演。然後一些決定我命運的人去度假了,然後是五一假期,然後他們給我帶來了電腦和其他東西。於是又2個月過去了。在這兩個月裡,我成功完成了JavaRush的13-22級,觀看了Batyrshynov關於Spring和Spring MVC的兩門課程,順便說一句,不錯的課程,但僅適用於初學者,因為基本上所有範例都處於“Hello world”等級。我開始工作了。他們立即給了我一個專案 - 一個用於 iOS 玩具的 REST API,透過 JSON 進行通訊。這很有趣,但也很困難。剛開始深入研究我從未見過的東西——Ubuntu 和 GIT 是特別困難的。Ubuntu 可以毫無問題地掌握,但 GIT 是一個有趣、強大、複雜的東西,尤其是在大型專案和非標準情況下。我永遠不會忘記我的第一份薪水,結果是 1C 的 4 倍。剛入職後,為了獨立研究技術,作為測試項目,我決定寫一個玩具,像沙箱一樣來實現一些想法。最近我完成了它。如果你願意,你可以看到結果(但強烈建議從電腦和 Chrome 登錄,因為我仍然是一個糟糕的佈局設計師):http://triangles.cf 我已經工作了第 4 個月了現在。我以為一切困難都已經過去了,但事實恰恰相反。你前面的任務是學習英語,因為如果你不會英語,即使你被錄用了,你也不會工作太久。閱讀文件、與客戶溝通、編寫程式碼和註解——全部用英文。您還需要完成 JavaRush 課程,學習模式、演算法和其他有用的東西。祝大家好運、發展順利、意志堅強。對於那些工作的人和那些想找工作的人。你會成功的,你只需要努力去做,與自己和乾擾作鬥爭。JAVA大家!)與自己以及例外情況作鬥爭。JAVA大家!)與自己以及例外情況作鬥爭。JAVA大家!)
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION