一.我的學期總結css
本學期在杜老師的帶領下,進行了python的學習,在博客園發佈了不少篇學習隨筆,本身也對這個語言有了必定的認識。個人學習過程大概分爲如下:html
前期前端
理論授課,瞭解並理解管理信息系統,瞭解python基本的功能並讓本身實現python的功能,在這個時期裏,咱們學習Python進行簡單算數計算。瞭解turtle庫(海龜庫),在此環境中練習條件、循環、函數定義的代碼敲打,並畫出了五角星、同心圓、太陽花、中國國旗等。隨後便學習了字符串的基本操做,學會輸入字符串,輸出代碼計算後的結果。還學習了凱撒密碼、九九乘法表等簡單操做。利用python進行英文詞彙統計,組合數據類型練習,用文件形式實現完成的英文詞頻統計、中文詞頻統計。利用datetime處理日期和時間,同時瞭解管理信息系統概念與基礎,理解數據存儲的方式如字典、列表、元祖、集合,以至於後來咱們學習的網頁製做,與這四個數據存儲方式息息相關。瞭解到Web是圖形化的和易於導航的、與平臺無關、是分佈式的、是動態的、是交互的。;python
中期mysql
開始網頁的製做,解釋代碼的原理,咱們開始製做web,認識html,會觀察網站網址,區分組成部分,練習用標籤製做簡單的頁面,用html製做web頁面,開始製做本身的導航條(HTML頭部head元素:<style> 定義了HTML大概的樣式。。<script>定義一個文檔和外部資源之間的調用關係。<link> 定義了一個文檔和外部樣式的調用關係)。練習樣式表:行內樣式表、內嵌樣式表、外部樣式表。分別練習定義三類選擇器:HTML 選擇器、CLASS 類選擇器、ID 選擇器。初步運用css作圖片導航塊,使用JS定義函數進行登陸註冊驗證,完成登陸與註冊頁面的前端,夜間模式的開啓與關閉。雖然網頁作的不太好看,但也逐步把本身學到的知識展示出來了。web
後期sql
爲網頁增長功能,爲網頁增添屬於本身的風格。開始作Flask項目,加載靜態文件,父模板的繼承和擴展,鏈接mysql數據庫,建立用戶模型,創建mysql和app的鏈接。經過用戶模型,對數據庫進行增刪改查操做。完成註冊功能,將界面的數據存到數據庫,redirect重定向登陸頁。完成登陸功能。登陸以後更新導航,用上下文處理器定義函數,獲取session中保存的值,返回字典,在父模板中更新導航,插入登陸前發佈器。完成註銷功能,清除session。發佈功能的實現,製做首頁的顯示列表,首頁列表顯示所有問答,完成問答詳情頁佈局,從首頁問答標題到問答詳情頁,完成評論功能,完成評論列表顯示及時間排序,我的中心顯示,我的中心標籤頁導航,完成我的中心—導航標籤,實現搜索功能(包括高級搜索即搜素題目和內容均可以出現),最重要的是實現密碼加密功能,在數據庫顯示密文,明文密碼只有我的用戶才清楚,還有模型分離與數據遷移,雖然我沒有作這兩個,可是這兩個步驟使代碼更簡潔更有保存用戶的肯定狀態。在後期一個階段裏,我U盤掉了我又熬夜從新作了一遍這個項目,一直從各類報錯中發現細小的錯誤,所以我在錯誤中尋找,而後更好地完善這個系統內部代碼。數據庫
二.總結Python+Flask+MysqL的web建設技術過程,標準以下:編程
Pythonbootstrap
Python是一種面向對象的解釋型計算機程序設計語言,Python是純粹的自由軟件, 源代碼和解釋器CPython遵循 GPL(GNU General Public License)協議。Python語法簡潔清晰,特點之一是強制用空白符(white space)做爲語句縮進。Python具備豐富和強大的庫。它常被暱稱爲膠水語言,可以把用其餘語言製做的各類模塊(尤爲是C/C++)很輕鬆地聯結在一塊兒。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),而後對其中有特別要求的部分,用更合適的語言改寫,好比3D遊戲中的圖形渲染模塊,性能要求特別高,就能夠用C/C++重寫,然後封裝爲Python能夠調用的擴展類庫。須要注意的是在您使用擴展類庫時可能須要考慮平臺問題,某些可能不提供跨平臺的實現。
Flask
Flask是一個面向簡單需求小型應用的「微框架(microframework)」,Flask選擇組件的額外工做給那些使用案例不適用標準ORM的開發者提供了更多的靈活性,一樣也給使用不一樣工做流和模版化系統的開發者們帶來了靈活性。
雖然Flask歷史相對更短,但它可以學習以前出現的框架而且把注意力放在了微小項目上。它大多數狀況被使用在一些只有一兩個功能的小型項目上。例如 httpbin,一個簡單的(但很強大的)調試和測試HTTP庫的項目。Flask沒有bootstrapping工具的緣由:沒有它們的需求。從Flask主頁上的Hello World特性看,沒有構建Python web應用經驗的開發者能夠當即開始hacking。對於各部分須要更多分離的項目,Flask有blueprints。例如,你能夠將全部用戶相關的函數放在users.py中,而後在site.py中添加引用它們來結構化你的Flask應用。咱們不會深刻這個功能,由於它超出了咱們展現demo應用的需求。Flask對於那些開發小項目、須要快速製做一個簡單的Python支撐的網站的開發者頗有用。它提供小型的統一工具,或者在已有的API上構建的簡單網絡接口。能夠快速開發須要簡單web接口並不怎麼配置的後端項目使用Flask將會在前端獲益,如jitviewer提供了一個web接口來檢測PyPy just-in-time的編譯日誌。
MySQL
關於數據庫,上學期咱們學習了sql server,它和MySQL有一點不同,MySQL不支持事務處理,沒有視圖,沒有存儲過程和觸發器,沒有數據庫端的用戶自定義函數,不能徹底使用標準的SQL語法。 MySQL是一個關係型數據庫管理系統,MySQL 是最流行的關係型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係數據庫管理系統) 應用軟件。MySQL是一種關係數據庫管理系統,關係數據庫將數據保存在不一樣的表中,而不是將全部數據放在一個大倉庫內,這樣就增長了速度並提升了靈活性。MySQL所使用的 SQL 語言是用於訪問數據庫的最經常使用標準化語言。MySQL 軟件採用了雙受權政策,分爲社區版和商業版,因爲其體積小、速度快、整體擁有成本低,尤爲是開放源碼這一特色,通常中小型網站的開發都選擇 MySQL 做爲網站數據庫。
1.初學入門者的簡單教程
(1)找一本淺顯易懂,例程比較好的教程,從頭至尾看下去。不要看不少本,專一於一本。把裏面的例程都手打一遍,搞懂爲何。
(2)最好是要有真實的項目作。好比咱們如今本身作的項目。你寫一個只是本身會用的博客網站也是真實項目,關鍵是要核心功能完整。
(3)最好能找到一個已經會python的人。問他一點學習規劃的建議(上知乎也是個途徑),我就是上知乎關注不少計算機大神,而後在遇到卡殼的地方找他或者其餘熱心網友指點。這樣會事半功倍。可是,要學會搜索,學會如何更好地提問。沒人願意幫你寫做業或是回答「一搜便知」的問題。
(4)寫代碼,而後寫更多的代碼。光看教程,編不出程序。從書上的例程開始寫,再寫小程序片斷,而後寫完整的項目。
(5)除了學習編程語言,也兼顧補一點計算機基礎,和英語。特別是英語,我認爲學好英語真的頗有必要,我在學習了這學期所有課程以後,不少報錯項目都是英語表示的,我每次看到錯誤都要去百度,真是很羞愧,因此學好英語,很是重要!
2.對本身所學知識的梳理
(1)上課認真聽講,跟着老師的步驟來操做,作筆記,不懂的就問老師;
(2)我還有大部分不懂的內容還在菜鳥教程裏學到,http://www.runoob.com,不少基本的python用法都有介紹;
(3)百度,我遇到的問題網友們也會遇到,因此問題就很容易解決了;
(4)代碼出錯時,網頁也會出現具體代碼錯誤的地方,要認真斟酌,而後本身就能夠解決了。
3.本身之後複習的嚮導
每週我都會打開pycharm完善我本身的代碼,一直都有複習,一直都在完善,看到本身設計了一個網頁,心裏是很開心和頗有成就感的。
總結:
跟着杜老師學習了這門語言,感受計算機語言仍是有一點樂趣的,不至於很是枯燥無味的,雖然計算機是死的,可是咱們的思惟是活的。總之學好基本功,須要什麼,學什麼。畢竟python太強大啦,你不能貪心將全部的知識都學到。學習這個課程,仍是很開心的頗有收穫的。可是有一種語言是沒有用的,想從事計算機行業,一顆好奇心和不斷學習的能力是必不可少的。