從小喵學習的經驗聊聊學習ASP.NET的建議

從小喵學習的經驗聊聊學習ASP.NET的建議

小喵雖然是資訊工程畢業
不過在學校的時候沒有認真學寫程式
(那時候小喵的興趣在網管)
小喵是等作業版本的那群之一

不過在這個過程至少也建立了程式撰寫的基本概念
(變數定義、函數運用、資料型態、判斷式與程式流程、迴圈、遞迴等...)
這個部分您可以看您想學哪個程式語言(例如:C#,VB.NET),買本那個語言介紹的書看看

後來工作後才真正接觸到程式撰寫
剛開始接觸的是ASP
完全沒有HTML,JavaScript的基礎
由於當時公司剛導入WebApp的方式
公司有請老師來上課
同事們的程度也都差不多
記得當時老師說過一句話

學ASP沒有精通HTML,JavaScript(備註1)沒關係
學習過程中多去檢視原始檔,再慢慢了解用到的HTML與JavaScript就好了

會這麼說小喵覺得是有原因的
小喵曾經去翻過專門介紹HTML Tag的書
裡面的東西有很多到目前為止還沒用過
因此小喵的建議是,HTML,CSS,JavaScript各找一本當作參考字典就好
有用到的時候來查看怎麼用

直到2005年底VS2005出來的時候,小喵才慢慢把焦點轉到ASP.NET上

備註1:
精通HTML,JavaScript
精通HTML是指所有的HTML的Tag用法都熟悉,還包括CSS的用法
精通JavaScript則是不但要精通JavaScript的語法(其實與C還蠻類似的)
還得對HTML內的各種物件屬性方法熟悉才稱得上精通
----------------

對於學習的建議,小喵的想法如下,提供參考

1.程式語言的學習
如果自己有熟悉的語言,熟C,Java,C++,Delphi的建議學C#,熟VB的學VB.NET
如果都沒有學過程式語言,那麼建議學C#
C#,JavaScript它們的基本語法都是從C衍生出來的
因此您學基本語法的時候,可以一並用在JavaScript裡面
(雖然小喵自己用的是VB.NET)
這個部份找本書來看
2.HTML部分
建議先看過FORM裡面的物件
<INPUT type=Text>
<INPUT Type=button>
<INPUT type=password>
<INPUT type=submit>
<INPUT type=reset>
<SELECT>
<TEXTArea></TEXTArea>
以及會用來排畫面的
<Table></table>
<div></div>
<span></span>
市面上有很多視覺化編輯HTML的工具(Dreamwave,FrontPage,Expression Web等)
建議可以視覺化編輯後他所產生的HTML大致上了解一下

這些部分看過定義,先有個基本印象

3.JavaScript的學習
小喵覺得這部份的重點
在於如何透過JavaScript去控制到畫面的各個物件(尤其是Form裡面的物件)
並且清楚這些物件樹
例如


<BODY>
<FORM action="" id="form1" name="form1" method="post">
 <INPUT type="text" id="text1" name="text1" value="abc">
</FORM>
</BODY>
</HTML>

那麼您要透過JavaScript取得text1裡面的資料
就要知道這個HTML的架構
IE-->window
裡面有個BODY-->document
裡面有個Form-->form1
裡面有個Input-->text1
所以在JavaScript裡面取得物件的方式是




4.ASP.NET
找本ASP.NET的書來學習
建議學習程式碼與畫面分開的方式(CodeBeside)
也就是一個abc.aspx的畫面會搭配一個abc.aspx.cs

5.SQL學習
a.學會視覺化的操作(建立資料表、檢視(View)裡面拉資料表、設定關聯、勾選要的欄位、設定條件)
b.學習T-SQL:從視覺化操作產生的SQL語法..學習T-SQL(SELECT,INSERT,UPDATE, DELETE,INNER JOIN, LEFT JOIN, RIGHT JOIN)
c.學習資料庫規劃(需求分析、資料表欄位規劃設計、資料庫正規化)

以上五點的時間順序建議
1.建議先學程式語言,至少對基本程式有概念
2~5可以同時間交叉學習


最後,當基礎都OK了小喵建議,自己出一些題目給自己,可以參考在網路上看到的一些東西,給自己一些題目來撰寫,這樣可以在撰寫過程中,發現不足的地方並且尋求解決方法,讓自己更為精進。

以上提供想走ASP.NET開發的人提供參考

 


以下是簽名:


Microsoft MVP
Visual Studio and Development Technologies
(2005~2019/6) 
topcat
Blog:http://www.dotblogs.com.tw/topcat