java學習手冊
⑴ java完全自學手冊這本書怎麼樣啊學習java和javaweb看這本書好嗎
看JAVA核心技術這本抄書...絕對經典...10個人有11個人肯定。好像是黃皮的書...不過我建議你如果是完全的初學者的話最好在專門培訓班或者找個人學習基本語法....要不看這些書都看不懂的。即使看得懂效率也太低了。
⑵ 學習java,有沒有類似java手冊的書籍或手機軟體,這樣那些基礎的常用的東西能隨時翻看快速入門,
java核心技術卷1,2
⑶ 學習java需要哪些類似於API手冊的手冊呢
java的api、jsp的api、如果還要學android那就是android的api,最好是使用英文版,不會被中文版誤解。
⑷ 誰有java學習手冊正式版
正版是收費的,還不如買本書來看。我不推薦看電子書,買本書來照著敲代碼比較學得快一些。
⑸ 完全零基礎學習JAVA用什麼入門書籍
作為一個Java程序員來說,工作中根本用不到C語言,所以大學學的C語言基礎基本也忘了。
C語言主要用於硬體或者PC的圖形界面程序或游戲的主要開發語言。因為C語言接近底層,效率性能比Java更好。
Java更多的是用來做網站或App的後台,總體來說是涉及到網路相關的應用程序。
我也是自學的Java目前在北京工作,自學一路上也是坑坑窪窪不少,既然看到題主的困惑,在這里把一些學習Java的一些理解給題主分享一下。
首次回答第一個問題,不學C語言,也可以學Java。
然後入門的話,很多人裝逼說 看《Java編程思想》。實際上這本書適合有一定經驗的人,回顧總結來看。學習Java的過程應該是 先學基礎,掌握基礎語法,再學框架,也是掌握使用,然後再回過頭來,學習基礎,這個時候需要深入學習,源碼實現,JVM底層原理,高並發,這些。
所以入門來說 我建議最好是先看 《Java核心技術I》
然後再看《Java編程的邏輯》這本書講了很多計算機理論與Java的聯系,以及對基礎底層的實現的講解,如果看不懂,可以再找幾本入門書看看。
基礎牢固之後,可以看看框架,在此推薦兩本《Spring4.x企業開發實戰》以及《Mybatis深入淺出》 現在企業中最主流的是 SSM 或者 SpringBoot+Mybatis ,很少企業會使用Hibernate作為ORM層框架,所以暫時不需要研究。
當框架有個大體的掌握後,這時可以再回頭深入基礎,為研究框架源碼及架構思想做准備。
首先推薦馬丁大神的《重構-改善既有代碼的藝術》,這本書講解了什麼樣的代碼是有壞味道的代碼,講了很多復用代碼的小技巧,建議必讀,經典,我看了兩遍。
然後推薦看看設計模式,首推《研磨設計模式》,這本書實體書已經買不到了,我有電子版,題主需要可以私聊我,次推《設計模式之禪》這本書通俗易懂,但不如研磨設計模式清晰明了。
當你掌握了重構及設計模式的技術之後,你寫代碼的思路會非常清晰,寫出來的代碼會非常簡潔,優雅。
之後推薦看並發和JVM原理,並發必讀《Java高並發實戰》,豆瓣9分經典。JVM原理可以看《深入理解JVM虛擬機》,這本書講解了Java虛擬機的各個分區,各種GC演算法,以及一些JVM的參數配置和最佳實踐,看第一遍的時候可能很吃力,但不要放棄,讀下去,前幾章看不懂的,當你看了後幾章之後,就會豁然開朗,當時我讀前幾章,無數次想放棄,認為自己看不明白,但實際越往後讀,前面的就越明白。
當這些書看完之後,其他的相信你可以根據自己所需,自己去尋找了。
以上這些書,我都有電子版,如果你需要的話,可以私信我,如果有其他問題也可以溝通,希望題主今後在技術的路上不斷精進,將自己的一些理解分享給別人~
⑹ Java 完全自學手冊可以嗎
可以,但自學費時費力,如果沒有莫大的毅力和自學能力建議最好還是到機構了解一下比較好,還有就是一般自學需要自己找課程,但自己找的課程都是比較過時的老教程。所以在學習上也不能與時俱進。
⑺ Java完全自學手冊的作品目錄
寫給自學編程的人員
前言
第一篇Java技術入門
第0章Java技術概述1
0.1Java技術1
0.1.1Java編程語言
0.1.2Java語言平台2
0.1.3Java語言的功能2
0.1.4Java語言的優點3
0.2Windows下的「HelloWorld」應用程序3
0.2.1創建應用程序的軟體環境3
0.2.2創建「HelloWorld」應用程序的步驟4
0.3深入探討「HelloWorld」應用程序6
0.3.1注釋源代碼6
0.3.2實現類定義6
0.3.3詳解main()方法7
0.4常見編譯錯誤7
0.4.1環境變數設置錯誤7
0.4.2語法錯誤7
0.4.3語義錯誤8
0.4.4運行時錯誤8
0.5本章習題9
第1章Java開發工具及環境設置10
1.1Java開發工具簡介10
1.2如何下載並安裝JDK10
1.3JDK內置工具10
1.3.1JDK常用工具11
1.3.2JDK常用工具示例11
1.3.3應用程序發布工具(jar)12
1.4jar文件的創建與查看13
1.4.1創建jar文件13
1.4.2查看jar文件的內容15
1.4.3提取jar文件的內容16
1.4.4更新jar文件17
1.4.5運行打包的jar軟體19
1.5JDK環境設置20
1.6一個簡單的Java應用程序21
1.7一個簡單的JavaApplet應用程序22
1.7.1編寫一個Applet23
1.7.2編寫一個用來調用AppletJava程序的HTML文件23
1.7.3Applet的運行過程23
1.8注釋及內嵌式文檔24
1.9本章習題25
第2章Java語言基礎26
2.1Java命名規則26
2.2數據類型26
2.2.1基本數據類型26
2.2.2引用數據類型29
2.3數據類型轉換30
2.3.1隱式數據類型轉換30
2.3.2顯式數據類型轉換30
2.4變數與常量31
2.4.1變數31
2.4.2常量31
2.5Java運算符32
2.5.1數學運算符32
2.5.2關系運算符33
2.5.3邏輯運算符34
2.5.4位運算符34
2.5.5位移運算符35
2.5.6「?:」運算符35
2.5.7運算符的優先順序36
2.6本章習題36
第3章程序流程式控制制38
3.1流程式控制制概述38
3.2條件語句38
3.3分支語句39
3.3.1簡單的if-else語句39
3.3.2if-else多分支語句40
3.3.3if嵌套語句40
3.3.4switch語句41
3.3.5分支語句中的return42
3.4循環語句42
3.4.1while循環語句42
3.4.2do-while循環語句43
3.4.3for循環語句44
3.5跳轉語句45
3.5.1break跳轉語句45
3.5.2continue跳轉語句45
3.6本章習題46
第4章數組48
4.1一維數組48
4.1.1定義一維數組48
4.1.2初始化一維數組48
4.1.3使用一維數組49
4.2二維數組50
4.2.1定義二維數組50
4.2.2初始化二維數組51
4.2.3使用二維數組51
4.3多維數組52
4.3.1定義多維數組52
4.3.2初始化多維數組53
4.3.3使用多維數組54
4.4數組操作55
4.4.1數組的復制55
4.4.2數組的填充55
4.4.3數組的比較56
4.4.4數組的排序57
4.4.5數組的查找58
4.5本章習題60
第5章字元串操作61
5.1字元串61
5.1.1字元串分類61
5.1.2聲明字元串61
5.1.3創建字元串61
5.2字元串操作62
5.2.1字元串連接63
5.2.2比較字元串63
5.2.3獲取字元串長度63
5.2.4復制字元串63
5.2.5獲得子串64
5.2.6獲取指定位置的字元64
5.2.7更改大小寫65
5.2.8分割字元串65
5.2.9更改字元串中的部分字元65
5.3格式化字元串66
5.3.1一般類型格式化66
5.3.2日期和時間類型格式66
5.4本章習題67
第6章容器類簡介68
6.1容器簡介68
6.1.1容器框架68
6.1.2Java容器框架的優勢與劣勢70
6.2容器介面的分類71
6.2.1Collection介面定義與應用71
6.2.2Map介面定義與應用73
6.3集合容器—Set75
6.3.1Set介面定義與應用75
6.3.2Set實現77
6.4列表容器—List81
6.4.1List介面定義與應用81
6.4.2List實現83
6.4.3使用List實現堆棧和隊列84
6.5Map容器86
6.5.1Map實現86
6.5.2正確認識hashCode方法89
6.6迭代器91
6.6.1迭代器介面92
6.6.2迭代器的使用92
6.7本章習題94
第二篇面向對象技術
第7章面向對象技術導論
7.1萬事萬物皆對象95
7.1.1程序設計中的抽象化認識95
7.1.2如何獲得和操控對象96
7.1.3對象的存儲空間96
7.1.4對象的生存空間98
7.2一種新的數據類型:類(Class)98
7.2.1類(Class)概述98
7.2.2類的屬性詳解99
7.2.3類的方法詳解100
7.2.4一種特殊的方法—類的構造函數101
7.2.5關鍵字static102
7.2.6關鍵字this104
7.3訪問許可權106
7.3.1包(package)106
7.3.2設置Java訪問許可權107
7.4繼承110
7.4.1什麼是繼承110
7.4.2如何實現繼承110
7.4.3super關鍵字112
7.5多態113
7.5.1什麼是多態113
7.5.2方法的重載114
7.5.3抽象類和抽象函數116
7.6介面118
7.6.1介面定義118
7.6.2介面和抽象類119
7.6.3介面的使用119
7.7本章習題122
第8章對象的初始化和清理123
8.1構造函數123
8.1.1默認構造函數124
8.1.2自定義構造函數124
8.2函數的重載125
8.3數據成員的初始化126
8.4static成員的初始化128
8.5對象的清理132
8.6本章習題132
第三篇Java編程提高篇
第9章多線程編程133
9.1線程概述133
9.2創建線程134
9.2.1繼承Thread類創建線程134
9.2.2實現Runnable介面創建線程135
9.3線程的狀態136
9.4線程的優先順序138
9.5線程的同步139
9.5.1Java程序的資源共享139
9.5.2synchronized關鍵字141
9.5.3同步控制方法142
9.5.4同步控制塊144
9.6線程的控制145
9.6.1啟動線程145
9.6.2掛起和恢復線程146
9.6.3線程的休眠146
9.6.4等待和通知147
9.6.5結束線程149
9.7線程間通信150
9.7.1PipedWriter類詳解150
9.7.2PipedReader類詳解150
9.7.3管道通信實例151
9.8多線程的死鎖問題153
9.9多線程的缺點153
9.10本章習題154
第10章JDBC鏈接資料庫155
10.1JDBC簡介155
10.1.1什麼是JDBC155
10.1.2JDBC的目標155
10.1.3JDBC如何實現資料庫的平台無關性155
10.2JDBC中的常用類和介面156
10.2.1驅動程序管理類(DriverManager)156
10.2.2聲明類(Statement)156
10.2.3資料庫鏈接類(Connection)157
10.2.4結果集合類(ResultSet)157
10.3如何實現資料庫的鏈接158
10.3.1載入合適的資料庫驅動程序158
10.3.2資料庫配置問題158
10.3.3建立資料庫鏈接並獲得Statement對象159
10.3.4執行資料庫查詢語句160
10.3.5獲得查詢結果160
10.3.6關閉資料庫鏈接160
10.3.7完整的示常式序160
10.4資料庫基本操作162
10.4.1創建資料庫表162
10.4.2查詢數據162
10.4.3添加數據163
10.4.4更改數據163
10.4.5刪除數據163
10.5本章習題164
第11章Java異常處理165
11.1理解異常165
11.2異常示例165
11.3Java異常處理167
11.3.1try區塊167
11.3.2catch區塊168
11.3.3Java異常規范171
11.4Throwable類及其子類171
11.4.1Throwable類定義和方法172
11.4.2異常類的繼承關系174
11.4.3異常重拋的例子174
11.5運行期異常177
11.6自定義異常178
11.7finally子句182
11.7.1執行finally子句182
11.7.2finally子句的必要性184
11.8異常的幾個問題185
11.8.1異常丟失185
11.8.2構造函數中的異常處理187
11.8.3異常匹配188
11.9異常的優點189
11.9.1分離異常處理代碼190
11.9.2按方法調用順序向上傳播錯誤191
11.9.3分組並區分錯誤類型193
11.10本章習題194
第12章I/O處理197
12.1流(Stream)的概念197
12.2字元流197
12.2.1輸入流類InputStream197
12.2.2輸出流類OutputStream198
12.3位元組流199
12.3.1Writer類199
12.3.2Reader類200
12.4File類201
12.4.1創建文件夾(目錄)201
12.4.2創建文件202
12.4.3復制文件203
12.4.4刪除文件204
12.4.5刪除文件夾205
12.5I/O流的典型運用207
12.5.1文件流207
12.5.2讀取內存數據208
12.5.3鏈接文件209
12.5.4管道流210
12.5.5隨機訪問文件211
12.5.6從標准輸入讀取212
12.5.7I/O重定向212
12.5.8過濾流213
12.5.9序列化對象214
12.6本章習題216
第13章Swing編程218
13.1Swing容器218
13.1.1JFrame容器218
13.1.2JPanel容器219
13.2Swing的事件模型221
13.2.1製作一個按鈕221
13.2.2實現按鈕的事件監聽222
13.2.3Swing的事件模型223
13.3Swing組件224
13.3.1按鈕225
13.3.2圖示(Icons)225
13.3.3文本227
13.3.4工具提示228
13.3.5單選按鈕228
13.3.6復選框229
13.3.7組合框230
13.3.8列表框232
13.3.9消息框234
13.3.10菜單239
13.3.11頁簽式面板242
13.3.12彈出式菜單243
13.3.13工具條244
13.3.14進度條246
13.3.15對話框247
13.3.16文件對話框248
13.3.17邊框251
13.3.18表模型252
13.3.19樹模型255
13.4控制面板布局管理器261
13.4.1流布局管理器261
13.4.2邊界布局管理器262
13.4.3網格布局管理器264
13.4.4盒子布局管理器266
13.5本章習題267
第四篇Java分布式計算技術
第14章Java網路編程269
14.1TCP/IP269
14.1.1IP協議和IP地址269
14.1.2TCP和埠271
14.1.3客戶/伺服器通信模型272
14.2UDP272
14.3基於Java的客戶/伺服器程序273
14.3.1Socket及其原語273
14.3.2創建伺服器274
14.3.3創建客戶端275
14.4Socket類詳解278
14.4.1創建Socket278
14.4.2Socket類的getXX()方法280
14.4.3Socket類的setXX()方法282
14.4.4關閉Socket286
14.5SocketServer類287
14.5.1創建SocketServer287
14.5.2SocketServer類的兩個重要方法288
14.5.3讀取SockerServer信息289
14.6數據報通信290
14.6.1數據報通信簡介291
14.6.2DatagramPacket類簡介291
14.6.3DatagramSocket類簡介293
14.6.4實現數據報通信296
14.7本章習題298
第15章RMI技術299
15.1如何實現RMI程序299
15.1.1定義遠端介面299
15.1.2定義遠端對象300
15.1.3實現伺服器對象的Stub和Sckeleton300
15.1.4創建伺服器程序301
15.1.5創建客戶端程序302
15.1.6運行RMI程序303
15.2RMI的動態載入類305
15.3RMI的特點305
15.4本章習題306
第16章JSP技術307
16.1JSP技術概述307
16.1.1JSP的基本概念307
16.1.2JSP的運行原理308
16.2構建JSP運行、開發環境308
16.2.1JRE的安裝309
16.2.2Tomcat的安裝310
16.2.3開發工具的選擇312
16.2.4建立和保存JSP文件312
16.3JSP編程基礎314
16.3.1HTML標記314
16.3.2HTML表單316
16.4JSP基本語法321
16.4.1聲明(Declaration)321
16.4.2表達式(Expression)321
16.4.3腳本(Scriptlet)322
16.4.4注釋(Annotations)322
16.4.5指令(Directive)323
16.4.6動作(Action)323
16.5JSP指令323
16.5.1Page指令323
16.5.2Include指令325
16.6JSP動作326
16.6.1jsp:include動作326
16.6.2jsp:useBean動作327
16.6.3jsp:setProperty動作327
16.6.4jsp:getProperty動作328
16.6.5jsp:forward動作329
16.6.6jsp:plugin動作329
16.7JSP內部對象331
16.7.1request對象332
16.7.2response對象334
16.7.3pageContext對象335
16.7.4session對象335
16.7.5application對象338
16.7.6out對象339
16.7.7config對象339
16.7.8page對象340
16.7.9exception對象340
16.7.10內部對象的作用范圍340
16.8本章習題341
第17章JavaBean技術343
17.1JavaBean技術概述343
17.2JavaBean編寫規范343
17.2.1Bean組件的工作機制344
17.2.2JavaBean的編寫要求344
17.2.3JavaBean的命名規范344
17.2.4JavaBean的包344
17.2.5JavaBean的結構345
17.3JavaBean屬性345
17.3.1單值(Simple)屬性346
17.3.2索引(Indexed)屬性346
17.3.3關聯(Bound)屬性347
17.3.4約束(Constrained)屬性348
17.4JavaBean方法350
17.4.1構造方法350
17.4.2訪問方法350
17.4.3一般方法351
17.5JavaBean事件351
17.5.1事件模型352
17.5.2事件狀態對象352
17.5.3事件監聽者介面與事件監聽者353
17.5.4事件監聽者注冊與注銷353
17.5.5適配類354
17.6JavaBean在JSP中的應用355
17.6.1調用JavaBean355
17.6.2鏈接資料庫Bean356
17.6.3通過JavaBean查詢資料庫357
17.6.4向資料庫添加記錄359
17.6.5修改資料庫記錄361
17.6.6刪除資料庫記錄362
17.7本章習題364
第18章Servlet技術367
18.1Servlet概述367
18.1.1Servlet的特點367
18.1.2Servlet的應用范圍367
18.1.3Servlet與JSP的關系368
18.2Servlet的基本架構368
18.2.1Servlet工作原理368
18.2.2Servlet介面369
18.2.3典型Servlet程序369
18.3ServletAPI370
18.3.1Servlet方法370
18.3.2常用的ServletAPI371
18.3.3Servlet生命周期372
18.4Servlet開發373
18.4.1Servlet的基本代碼373
18.4.2Servlet與表單交互374
18.4.3Servlet控制會話376
18.5本章習題378
第19章Java與XML技術381
19.1標記語言的發展史381
19.2HTML語言及其局限381
19.2.1HTML語言381
19.2.2HTML語言的局限性381
19.3XML語言383
19.3.1XML的優勢383
19.3.2XML文檔的基礎知識385
19.3.3XML文檔結構389
19.4創建XML文檔390
19.4.1創建元素390
19.4.2創建空元素391
19.4.3元素屬性392
19.4.4注釋392
19.4.5實體393
19.5XML與Java393
19.5.1XML與Java結合理由394
19.5.2Java如何解析XML文檔394
19.6DOM解析XML文檔395
19.6.1DOM(文檔對象模型)395
19.6.2DOM的結構及介面396
19.6.3DOM實現與核心API396
19.6.4基於DOM的樹操作396
19.7本章習題399
第五篇Java編程實例篇
第20章Java編程實例403
20.1系統設計403
20.2系統目標403
20.2.1文件操作用例404
20.2.2話單操作用例404
20.2.3話單維護用例404
20.3系統功能404
20.3.1文件操作功能405
20.3.2話單維護功能405
20.3.3話單操作功能405
20.3.4系統維護功能405
20.4業務流程405
20.4.1文件操作流程405
20.4.2話單維護流程406
20.4.3話單操作流程406
20.5軟體模塊設計406
20.5.1主界面模塊406
20.5.2文件操作模塊410
20.5.3話單操作模塊415
20.5.4話單維護模塊424
20.6軟體打包發行428
20.7資料庫配置431
……
⑻ 《Java項目開發實例自學手冊》的光碟代碼。
代碼地址如下,我已下載驗證過,請放心下載:
http://ishare.iask.sina.com.cn/download/explain.php?fileid=34464268
⑼ 誰有《JAVA完全自學手冊》電子書啊
已發~
⑽ 求java完全自學手冊pdf版(林樹澤)
1、聽懂
通過視頻來作為入門學習,是一個很好的方法,尤其是有一整套視頻最好(有需要的童鞋可以在公眾號聯系我哈),這樣可以比較好的系統學習整個知識結構,學習技術視頻可不要跟看小片一樣,一遍過後就完事,這樣是不行滴,我班裡有個童鞋,在學習磨礪營內部視頻時,那傢伙,太細太細了,裡面的每一句話的表達都要深究,我有時難免口誤,或漏了幾個字,他特意記下來找到我,清楚的告訴我哪一節視頻的幾分幾秒說的哪句話他認為有問題,或不理解,這給我印象很深。我想強調的是,他這種細致入微的方式一定是被鼓勵的。學技術,就得要摳一點,摳一摳,再摳一摳,這跟做人剛好相反哈,做人摳,你會沒有朋友,但學技術,摳——能讓你知道更多東西,從這一點上看來,還是自私一點好。聽懂講什麼,是學習的第一步。
2、理解
學Java/Android,是需要較好的邏輯能力的,幾個步驟回合下來就雲里霧里的,多遍下來還沒有改善的,就可能懷疑你不太適合了,我經常建議我的學員們,寫程序一定要先理解,明白每句代碼的含義及作用,然後在理解的基礎上再去敲代碼,當然有些知識點需要其他未知的知識來輔助的情況,這個時候只需要先用,不必糾結,否則反復無法理解會起反作用,比如,煩躁、被打擊、懷疑、最後放棄,直接影響後面的學習效果,當然有人帶的好處是,老師會憑經驗告訴你什麼是必須理解的,什麼是了解的,什麼是先用就可以了,必竟短期內要學的東西太多,突擊重點,然後擴展自己的知識面,才是正確的做法,等你真正工作個幾年,時間長了,自然會明白很多東西,因為幾年的工作和鍛煉,你的理解能力和接觸的知識量,足於讓你輕松理解更多之前被認為復雜的知識點。這是學習的第二步。
3、模仿
有了前面的理解,接下來就是先模仿了,這是學習任何東西的前奏,你試想一下,學打籃球(為了耍酷)、學游泳(為了看MM)、學武術(為了銀熊救美)、學唱歌(為了把妹)、學樂器(裝下文藝)、學開車(爭做老司機)等等,哪一個不是從模仿開始的,這個道理我想大家都懂,但下一步就不一定了,就是很多人認為跟著敲一遍就會了,要我說,剛學敲一遍就會,那你是神人了,學打個籃球你都會反復練習投三分,來提高命中率;反復練習掛檔,來達到不經過大腦就可以自然反應;反復練嗓子才能發出動聽的旋律......模仿是前提,但反復模仿很少人能做到,之前帶過一個學員,給我印象很深刻,都叫他小海,敲鍵盤的速度比一般人快很多,人也很聰明,腦瓜子好使,我上課寫的代碼,在讓大家練習的時候,他可以敲三遍,敲一遍刪掉,再敲一遍再刪掉,最後敲一遍留著,你可以說人打字快啊,那我想問,自學的時間純由自己安排,你每個程序都可以模仿三遍的話,你一定懂得更多。這是學習的第三步。
4、練習
模仿是純照著寫代碼,去理解代碼內部的結構和思想、解決問題的思路。這些,需要在不斷的學習過程慢慢去建立,說白了,你要學的不僅是代碼,還有解決問題的方法,告訴你,在一般的程序實現中,每個問題都有一些固定的解決思路,俗稱「套路」,你要掌握的各種各樣的套路,並可以靈活運用。說的輕巧,如何達到靈活運用?這就得靠練習了,練習我認為是有別與模仿的,就像我們每天給學員留的作業一樣,這個可以稱為練習,練習會用到今天上課講的知識點,但又不是上課講的代碼,需要你根據對知識點的理解,加上舉一反三的能力,參考上課的示例,去獨立完成,這是跟模仿最大的區別,因為這個過程你需要獨立思考,這是學習的第四步。
5、筆記
威哥,我記不住啊,學了後面的忘了前面的,怎麼辦?這樣我能學會嗎?是的,這是大家都會遇到的問題,學得越多,忘得越多,不要說剛接觸編程的人了,就是老手,一段時間不用某個知識點,也會忘記的,我也一樣,這是很正常的情況,對於剛開始學的人來說,更為明顯而已,一下子知識點那麼多。所以,筆記就來了,在學習每個知識點的時候,做好詳細的筆記,是幫助記憶非常好的方法,越細越好,筆記需要包括知識點的概念,作用,使用場景,使用步驟與說明,代碼示例,重點強調,知識的小結等。我會要求學員跟我一起做筆記,切勿做拿來主義,把別人的筆記復制粘貼過來,因為做筆記的過程就是在整理思路和梳理重點的過程,復制粘貼根本達不到效果。繁瑣的東西讓筆記來幫助我們記憶,當然腦子里能記的越多越好,起碼要記住思想性的、思路、重點和總結性的東西。這是學習的第五步。
6、反復練習
反復練習,就是孰能生巧的過程,在反復的過程中,你要、而且必須是提高性的反復練習,要問問自己,之前的代碼有什麼問題嗎,是不是有改進的地方(放心,一定會有的,只是你沒想到),是不是可以優化性能,是不是可以封裝一下,等等,這個過程是你技術得到升華的時候,就像我這么多年講課一樣,如果每一遍都講成一樣的,那我早放棄了,那會是件很無聊的事情,自己也沒有提升,所以我每一遍上課都會有不一樣的地方。我知道你會問,那我根本想不到有什麼可以改進的,有什麼可以優化的,有什麼可以封裝的,代碼有什麼問題,怎麼辦?沒關系,所以說這是反復練習,可不要理解為跟模仿一樣,反復練習是指一段時間過後反復使用之前的學過的知識點,隨著你的知識面和代碼量的增加,或者查閱資料的方式,只要你想去做,你就會提高。這是學習的第六步。
7、多維思考
多維思考問題是指,你要學會尋找資料,不管從簡單的google或,還是泡技術網站,再比如關注我這樣的技術類公眾號,看看每天的文章(風雨無阻哈),有些看不懂沒關系,起碼你能拓展自己的知識面,有些東西現在看不懂,那就了解一下,有一天你用到了,自然就會懂了,用不到知道就行了,技術的世界那麼大,不是每個技術你都要學會的,如果你真學會了,那也離死不遠了,做到知識面要廣,技術要專即可,多維思考可以幫助你積累拓展知識面,也會讓你對相同的知識用法有不同的見解,這是學習的第七步。
8、記單詞
學編程跟英語能力說實話關系不會太大,英語好當然是有幫助的,代碼全是英文,跟英文一點關系沒有那是假話,但英語不好也不是就學不好編程,有一次我上一個國外技術網站,跟老外聊天,我說我不懂英文聊天,好不容易憋出幾個詞來,然後他說,那你是怎麼學會編程的,我說寫代碼跟英文聊天是兩碼事,我懂計算機英語,生活上的無法交流,讓他們驚訝不已,感嘆中國程序員如此強大(^^),確實,在學習編程的過程,我們當然要記單詞了,不然那麼多方法,名詞不懂,是記不住代碼的,這個千萬不要拒絕,記多了,你會發現常用的單詞其實不多,不懂一定要查,用多了自然就記住了,由其是Android開發中,各種屬性、內部方法、源碼,你要是都看不懂單詞,會給你帶來很大的麻煩。想學好,必記單詞。這是學習的第八步。
9、總結
學會總結,才是硬道理,總結是學習的精髓,也是要記在腦子里的最重要的東西,細節部分可以靠筆記輔助,精髓要是沒有提煉出來,你會很快忘記,總結的方式有很多種,比如腦子里詳詳細細過一遍今天學習的東西,注意,這里我要強調的詳細,只有這樣,你才能總結出精髓出來,然後可以記下來,或寫成博客,或空間日記,都是很好的習慣,你知道為啥很多人在網上寫博客嗎,其實他是幫助自己梳理思路,又能幫助到他人,還能備忘,如果寫得好,說不定還能提升自己的個人價值,一舉多得啊,只是要堅持下來是不易的,但起碼你要學會自己去總結。一句說,不會總結的人,成不了老司機。