半年編程學習自我總結

經過半年左右的計算機編程學習,做一個自我小結。

恰好我所在專業的老師讓我提供一份編程能力的自我分析,想評估一下我編程上的水平,於是利用這個機會做一個自我小結以及所做項目的整理

--------------------------------------------------------------------------------------------------------------

編程學習經歷:

大一:江蘇大學必修C語言程序設計,SQL Server數據庫程序設計

大二:江蘇大學必修Java程序設計,數據結構

大二暑假:正式打算走編程方向,報名騰訊課堂猿道教育學習Java全棧,爲期11個月

大三上:江蘇大學必修JSP程序設計。江蘇大學選修Python程序設計

猿道教育HTML,CSS,HTML5,JavaSE,MySQL,JSP,JDBC,Servlet,JSTL,EL,JavaScript,XML

目前使用編輯器(工具):

HTML,CSS,JavaScript:Sublime,Dreamwaver.

Java:eclipse,MyEclipse

Python:Spyder

MySQL:Navicat

數據庫設計:Powerdesigner(學習階段)

具體技術概況:

掌握階段:HTML,CSS,JavaSE,JSP,JDBC,MySql

Html和css作爲最基本的前端語言,已經非常熟練,掌握的相對全面,能自由用代碼編寫各種靜態頁面,html5有過了解,但移動端一塊接觸較少。

JavaSE作爲Java的基礎,相對比較熟練。可以用Swing類庫作爲前端開發用JDBC技術連接MySQL數據庫製作小程序。可以使用I/O流工具查閱刪除複製文件。可以做基本的或者稍微深層的數據統計和計算。

JSP開發較爲熟練,可以實現大部分功能,但僅限於較爲簡單的頁面,而且代碼比較粗糙,以實現功能爲目的,註釋量不夠,不易維護二次開發。El表達式,JSTL語言,Servlet技術還在學習中,還不能駕馭。Ajax,JQuery等技術還未涉及,馬上要學習

學習階段:JavaScript,xml,EL,JSTL,servlet,Python

JavaScript是目前正在學習的一門腳本語言,大致已經瞭解了JS的工作方式和使用方式,可以閱讀一定程度的JS代碼。但還不能熟練地上手寫代碼,還在學習中。

XML,EL,JSTL,Servlet作爲Java Web開發中的幾個重要的技術,已經學習過了,基本瞭解其工作方法和使用方法,但還不能熟練使用,還未在項目中使用這幾個技術。

Python是二十一世紀最熱門的計算機語言,據說學習也比較簡單,與人工智能息息相關。經過選修課的學習,完成了七個基本實驗任務,已經瞭解熟悉了turtle庫,jieba庫,wordcloud庫,以及urllib庫等幾個熱門的第三方類庫的相關使用方法。但上手程度不高,實驗主要以寫註釋及修改代碼完成需求爲主,不能自己熟練駕馭,暫時還不能不借助任何資料的情況下寫出python代碼。

寫過的幾個“項目”

(因爲學習比較零散,自己寫東西的時間和機會不多。所以寫過的項目比較少,也因爲寫的東西比較小,代碼也比較不規範,不敢稱之爲項目,所以加了引號)

一:生命遊戲

簡介:

當時是大二結束的暑假,剛剛學習完學校裏的java課程,又因爲在一本編程書中發現了生命遊戲這個項目,但參考代碼給的只是在console控制檯上輸入輸出的方式,操作不方便,界面也不美觀,功能也比較少。於是有了想用剛學過的swing庫給這個遊戲設計ui前端的想法。便一邊學習,一邊寫出了這個遊戲。

截圖:

玩法:

白色方塊代表死細胞,黑色方塊代表活細胞,玩法是一開始點擊白色方塊,選擇初始活細胞的位置,然後點擊“點我不要停”按鈕,觀察細胞在下一個時期的生存情況。如果一個活細胞身邊的活細胞太多或者太少,這個細胞都會再下一個時期死去。如果一個死細胞身邊的活細胞正好,這個細胞會轉化爲活細胞。不停點擊可以觀察到生命的演變規律。

總結:

正是這個項目給了我學習編程的信心和熱情,於是打算開始學習編程。但同時也發現了編程世界的廣大,自己學習的知識java的冰山一角,要精通一門語言要掌握很多很多的技術和知識,而自學毫無頭緒。於是在這之後報名了騰訊課堂猿道教育中爲期11個月的java全棧課程學習至今。

二:小型銀行項目

簡介:

上學期剛開始的時候在培訓機構學完JavaSe課程之後,爲了鞏固學到的知識,培訓老師佈置了一個小型銀行項目,要求用JDBC連接數據庫,實現登錄,註冊,存款,取款,凍結,銷戶,管理員操作,查詢所有用戶信息等需求。在完成老師要求的需求之後,我用自己在學校裏學到和自己自學的swing類庫給這個小項目做了UI界面。並用正則表達式提高了代碼的健壯性。

截圖:

 

 

 

 

 

 

 

 

 

 

(數據庫情況)

總結:

基本實現了我能想到的銀行需求,並且爲了增加代碼健壯性,增添了許多異常處理的代碼,基本不會出現誤操作導致的報錯。鞏固了所學的JavaSE代碼,以及JDBC技術還有數據庫增刪改查的語言。但問題也是存在的,在寫代碼的時候都是以實現功能爲目的,註釋量較少,項目結構也不夠規範。做完項目之後也沒有對代碼進行規範化處理。另外據說swing在現在開發上已經不流行了,而且我嘗試了一下也很難打包這個項目放到別的電腦上。所以利用swing開發前端也只能供自娛自樂了。

三:簡單的微信項目

簡介:

這是上學期在培訓機構學習JSP的時候寫的項目。在電腦上安裝了tomcat服務器和resin服務器。在原來學html和css的時候就已經模仿着微信的電腦端界面寫了一個靜態的頁面。學習了JSP之後想要把這個靜態頁面變成動態的,希望完成用戶的登錄,註冊,修改信息,加好友,聊天,相互發消息,記錄聊天記錄,甚至發表情包等需求。完成之後已經能實現在同一個wifi下,通過我自己電腦的tomcat服務器,多用戶之間登錄相互發消息的功能,但發表情包尚未實現。

截圖:

(這個項目比較雜,JSP學習過程中寫的東西都放在一起了,只有wx文件夾下的內容是這個項目的)

(數據庫情況)

總結:

界面做的還是比較精緻的,基本模仿真的微信電腦端程序,想要的需求也基本能實現,發表情包還沒有實現,不過實現起來也不難,另外有個BUG就是聊天雙方,接收方只有主動刷新頁面才能接收到信息,要實現實時接收應該還需要ajax技術,暫時還不會。但缺點也同樣存在,在寫代碼的過程中只是爲了實現功能。所以代碼上寫的還是不夠規範,有許多處冗餘,沒有充分封裝,基本上是用面向過程的思維在寫代碼,註釋量也不夠,很難維護和二次開發,而且JDBC的連接代碼寫的太多了,如果使用人數過多很容易造成多次查詢數據庫導致程序運行緩慢的情況。寫完項目之後也沒有再去對代碼進行優化。

另外由於好奇心的驅使,在西部數碼網站上註冊了域名並用虛擬主機的方式租用了一個一年的java服務器。並把這個假微信放在了互聯網上

網頁入口:

http://ymf0312.gotoip11.com/wx/load.jsp

 

自我總結:

1、學習時間比較短,從去年暑假開始正式學習編程,目前也就學習了半年時間,很多知識還沒有時間完全吸收掌握

2、學習的知識比較雜,難成體系。雖然時間很短,但這段時間接觸的技術真的不少,能真正掌握前端後端數據庫實現項目的目前只有javase方面。

3、自認爲學習能力還是比較強的。短時間內可以理解讀懂一段陌生的代碼,並且能猜測它的功能和使用方法。但掌握實現一門語言還需要很多時間和經驗。

4、自從半年前開始學習編程,我就在各種老師的建議下養成了用博客記錄學習經歷的習慣。

學習的筆記和遇到的問題及解決方法我都會記錄在我的CSDN博客上,博客入口:https://blog.csdn.net/weixin_42588379?utm_source=feed。最近更博漸緩,一方面是春節期間上課速度放緩,另一方面試在準備考研,時間精力重點有些分散。另外我開始學着使用github,但礙於英語水平過低,還不太會用。

5、對於老師課程設計所需的電子商務平臺程序。我在上課時大致在構思,打算在這段時間好好學習python語言,爭取期末能熟練運用爬蟲技術在互聯網上爬取所需資料。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章