先回答問(wèn)題,Django不適合做web前端,Django用于做web的后臺(tái)。web前端普遍使用基于jquery的框架完成。我曾將使用Django寫(xiě)過(guò)幾個(gè)網(wǎng)絡(luò)管理程序。下文具體說(shuō)一說(shuō)。
Django用來(lái)做什么Django是Python編寫(xiě)的開(kāi)源web應(yīng)用框架,采用了MVC的模式,方便快速構(gòu)建web應(yīng)用程序;
Django主要由三個(gè)層次組成,template層用于實(shí)現(xiàn)與前臺(tái)的交互,收集前端發(fā)送的數(shù)據(jù);control層用于處理用戶(hù)數(shù)據(jù),實(shí)現(xiàn)業(yè)務(wù)邏輯;model層用于實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接,將數(shù)據(jù)持久化;
Django的使用非常方便的,集成了大部分的常用功能,用戶(hù)不用專(zhuān)門(mén)處理session,用戶(hù)登陸等應(yīng)用。
前臺(tái)怎么寫(xiě)web應(yīng)用程序的前臺(tái)使用基于jquery的框架完成,jquery是使用javascript腳本需要編寫(xiě)的,簡(jiǎn)化了用戶(hù)的編程的難度;
在構(gòu)建web應(yīng)用時(shí),我用的是easyui框架,集成了大部分的控件,比如文本框,各種按鈕,并且有布局功能,可以快速勾畫(huà)web應(yīng)用界面。
讀書(shū)時(shí)我曾經(jīng)使用java編寫(xiě)web應(yīng)用,工作后接觸了python,簡(jiǎn)單易用,可以快捷構(gòu)建應(yīng)用,后來(lái)使用django框架,將平時(shí)編寫(xiě)的小應(yīng)用合并成一個(gè)可視化的的網(wǎng)絡(luò)運(yùn)維平臺(tái)。
首先,我們要明確如果只是單純做前端,沒(méi)有必要學(xué)數(shù)據(jù)結(jié)構(gòu)和算法。前端的核心是DOM。算法和數(shù)據(jù)結(jié)構(gòu)是為了解決效率問(wèn)題的,而提升前端的效率用到的概念往往僅僅是常識(shí)級(jí)別的。甚至一些流行的中小型庫(kù)中都看不到任何數(shù)據(jù)結(jié)構(gòu)??梢哉J(rèn)為前端是程序員里的一個(gè)特例,一般程序員面對(duì)的是計(jì)算機(jī),前端開(kāi)發(fā)人員面對(duì)的僅僅是瀏覽器。如果只是關(guān)注前端,學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法的收益還不如去讀jQuery源碼。
既然前端用不上,題主還是問(wèn)到了這個(gè)問(wèn)題,那就說(shuō)明題主關(guān)注的不僅僅是如何成為一個(gè)熟練的前端,而是成為一個(gè)優(yōu)秀的軟件工程師。網(wǎng)站開(kāi)發(fā)之所以流行,一部分是因?yàn)殚_(kāi)發(fā)成本低。這些節(jié)省下來(lái)的成本,一部分就是開(kāi)發(fā)人員的薪水。換句話(huà)說(shuō),前端開(kāi)發(fā)簡(jiǎn)單,門(mén)檻低,所以收入低,可替代性強(qiáng)。跳出前端這個(gè)領(lǐng)域,把自己放到軟件工程師的隊(duì)伍里,再看這個(gè)問(wèn)題,那么就很有必要好好學(xué)學(xué)數(shù)據(jù)機(jī)構(gòu)和算法了。
那怎么學(xué)好數(shù)據(jù)結(jié)構(gòu)和算法呢?
一、搞清楚典型的數(shù)據(jù)結(jié)構(gòu)有哪幾種,比如線(xiàn)性表、棧、隊(duì)列、串、樹(shù)、圖,知道典型的查找和排序算法;注意,對(duì)于這些你只需要知道不必太深入,腦海中有個(gè)印象,知道大概怎么回事,回頭用到的時(shí)候能知道在哪里查就可以。
二、詳細(xì)研究棧、哈希表(字典)。棧這個(gè)東西在計(jì)算機(jī)中處處能見(jiàn)到,理解了棧對(duì)于理解計(jì)算機(jī)本身很有好處,記得嘗試用棧的觀點(diǎn)來(lái)看計(jì)算機(jī)。字典就不說(shuō)了,我想絕大多數(shù)的人都查過(guò)字典,應(yīng)該知道字典有什么用,想象一下沒(méi)有字典的話(huà),從成千上萬(wàn)個(gè)字中找到你想要的時(shí)有多痛苦。
三、完全弄明白時(shí)間復(fù)雜度、空間復(fù)雜度是怎么回事。理解這一點(diǎn)可以讓你自己在寫(xiě)代碼時(shí)不至于寫(xiě)出有明顯效率問(wèn)題的代碼,默默的提高你的代碼質(zhì)量
四、上手實(shí)際項(xiàng)目,積累項(xiàng)目經(jīng)驗(yàn),看看項(xiàng)目哪里用到了你所知道的數(shù)據(jù)結(jié)構(gòu)和算法,搞清楚為什么用,能不能用另一種數(shù)據(jù)結(jié)構(gòu)或算法讓它變得更好。當(dāng)然,湖南優(yōu)就業(yè)的IT培訓(xùn)老師告訴我們,只有不斷的練習(xí),才能真正學(xué)到東西!
五、多翻數(shù)據(jù)結(jié)構(gòu)和算法的經(jīng)典書(shū)籍,看看那些你曾經(jīng)粗讀過(guò)的內(nèi)容,我想你會(huì)看得很愉快的。
每天我們打開(kāi)電腦,看到各種各樣的Web前端頁(yè)面。你知道他們是如何制作的嗎?為了讓頁(yè)面更具有規(guī)范性,讓使用者更加方便,在制作頁(yè)面過(guò)程中必須遵循一定的設(shè)計(jì)流程。在這里就為大家詳細(xì)介紹一下制作一個(gè)Web前端頁(yè)面的設(shè)計(jì)流程及注意事項(xiàng)。
一:確定網(wǎng)站主題
每個(gè)網(wǎng)站都有自身以及對(duì)用戶(hù)的定位。針對(duì)網(wǎng)站定位確定網(wǎng)站的主題是整個(gè)網(wǎng)站運(yùn)營(yíng)的核心。一般從網(wǎng)站建設(shè)的目標(biāo)、網(wǎng)站用戶(hù)群體、網(wǎng)站產(chǎn)品內(nèi)容以及企業(yè)服務(wù)四個(gè)方面確定網(wǎng)站主題。此外還需要注意,每個(gè)頁(yè)面不但要承載整體企業(yè)的定位,同時(shí)還要側(cè)重其中某一個(gè)特定主題。
二:網(wǎng)站整體規(guī)劃
為了提高用戶(hù)體驗(yàn)以及提高網(wǎng)站在搜索引擎收錄率,在網(wǎng)站建設(shè)初期最好能夠理清網(wǎng)站機(jī)構(gòu),增加不同頁(yè)面之間的關(guān)聯(lián)性,從而更好規(guī)劃頁(yè)面的布局以及網(wǎng)站功能。一般情況下,產(chǎn)品經(jīng)理在設(shè)計(jì)網(wǎng)站初期就會(huì)提供完整的業(yè)務(wù)邏輯圖,設(shè)計(jì)師和前端工程師根據(jù)業(yè)務(wù)邏輯架構(gòu)完成相關(guān)頁(yè)面的設(shè)計(jì)開(kāi)發(fā)。需要重點(diǎn)考慮的內(nèi)容包括:網(wǎng)站的功能、網(wǎng)站的結(jié)構(gòu)、拌面布局等等。尤其在網(wǎng)站功能需求較多的情況下,網(wǎng)站整體規(guī)劃更加重要。
三、整合素材
在網(wǎng)站整體架構(gòu)完成后,就可以開(kāi)始整合收集素材了。網(wǎng)站開(kāi)發(fā)和網(wǎng)站內(nèi)容籌備同步進(jìn)行,可以大大提高網(wǎng)頁(yè)開(kāi)發(fā)的效率。主要收集的素材包括文本素材(一般由公司內(nèi)容運(yùn)營(yíng)提供相應(yīng)的文字素材,需要注意的是,這些文字素材的準(zhǔn)確性以及版權(quán)非唯一性)、圖片素材(現(xiàn)在很少有純文字性的網(wǎng)站,往往需要大量的圖片素材,甚至還有視頻素材等)。
四、網(wǎng)站開(kāi)發(fā)與動(dòng)態(tài)效果
前端頁(yè)面開(kāi)發(fā)主要用到HTML、CSS、JavaScript技術(shù)。在確定網(wǎng)站結(jié)構(gòu)以及頁(yè)面設(shè)計(jì)圖齊全的情況下,前端開(kāi)發(fā)工程師就可以進(jìn)行頁(yè)面開(kāi)發(fā)了。這個(gè)過(guò)程中主要完成頁(yè)面搭建以及動(dòng)態(tài)效果實(shí)現(xiàn)。
此外在前端頁(yè)面設(shè)計(jì)過(guò)程中還需要有一些常規(guī)的注意事項(xiàng):頁(yè)面分辨率設(shè)置,在設(shè)計(jì)網(wǎng)頁(yè)時(shí),頁(yè)面的寬度盡量不要超過(guò)屏幕的分辨率,否則頁(yè)面可能無(wú)法完全展示;注意頁(yè)面版心位置。目前比較流行的屏幕寬度分辨率一般1200PX~1920px,為了適配不同分辨率的顯示器,一般設(shè)計(jì)班型寬度在1000Px~1200Px之間。
這就是為大家分享的Web前端頁(yè)面制作流程以及注意事項(xiàng)。在不同的公司中,前端工程師的崗位職責(zé)是不同的,甚至在某些大型互聯(lián)網(wǎng)公司中,部分前端工程師僅僅做其中一個(gè)環(huán)節(jié),即使如此作為前端工程師還是要多多學(xué)習(xí)大前端的技術(shù)知識(shí),才能更好的適應(yīng)企業(yè)人才需求。