在這個(gè)高度互聯(lián)的世界中,對創(chuàng)建交付和轉(zhuǎn)換網(wǎng)站的需求不斷增長。例如,Web開發(fā)人員每周創(chuàng)建數(shù)百到數(shù)千個(gè)網(wǎng)站。在Web開發(fā)過程中,他們必須考慮很多事情,包括編寫HTML時(shí)要使用哪些工具或要使用哪些JavaScript框架。不幸的是,他們?nèi)匀环赣锌赡軗p害目標(biāo)的錯(cuò)誤。Web開發(fā)人員犯的一些主要錯(cuò)誤包括。
Web開發(fā)人員犯的錯(cuò)誤–瀏覽器不兼容
假定您的程序?qū)⒃诿總€(gè)瀏覽器上運(yùn)行是一個(gè)常見的錯(cuò)誤。通常,開發(fā)人員更喜歡使用特定的瀏覽器,但是他們的客戶更喜歡使用其他瀏覽器。當(dāng)呈現(xiàn)在特定瀏覽器上工作的代碼示例時(shí),這些可能會產(chǎn)生沖突。某些瀏覽器使用不同的樣式默認(rèn)值。發(fā)生這種情況時(shí),在其他瀏覽器上查看時(shí)可能會導(dǎo)致質(zhì)量下降。
在開發(fā)過程中,建議使用每個(gè)瀏覽器和每個(gè)版本測試一個(gè)網(wǎng)頁,以查看代碼在多個(gè)瀏覽器中的顯示方式,但這通常太浪費(fèi)時(shí)間。開發(fā)網(wǎng)站時(shí),請每隔幾天使用其他瀏覽器。這樣,您將快速看到潛在的問題區(qū)域。您還可以使用Visual Studio幫助您在多個(gè)瀏覽器上運(yùn)行測試,以顯示正在開發(fā)的頁面在每個(gè)瀏覽器上的外觀。避免使用特定于瀏覽器的代碼也很有用。
創(chuàng)建不良聯(lián)系表
Web開發(fā)人員犯下了創(chuàng)建聯(lián)系表并假設(shè)用戶將提供有效數(shù)據(jù)的錯(cuò)誤。如果表單上提供了無效數(shù)據(jù),并且接收到的數(shù)據(jù)與數(shù)據(jù)方案不匹配,則可能導(dǎo)致頁面失敗。您不希望這種情況發(fā)生。
通過明確說明您希望用戶提供的內(nèi)容來避免這種情況。如果需要他們的地址,請指定是否要使用家庭住址或電子郵件地址。另外,請確保您的數(shù)據(jù)驗(yàn)證策略與服務(wù)器端和瀏覽器端都一致。不要犯錯(cuò)誤,即允許一系列T-SQL語句從用戶輸入中收集數(shù)據(jù),而無需確認(rèn)每個(gè)字段都具有正確的數(shù)據(jù)類型。
Web開發(fā)人員犯的錯(cuò)誤–編寫Vintage HTML
多年來,互聯(lián)網(wǎng)經(jīng)歷了無數(shù)重大進(jìn)步。這些進(jìn)步常常使以前的HTML寫作風(fēng)格變得過時(shí)。如果您仍然喜歡編寫老式的HTML代碼,那么該進(jìn)行升級了。您必須重新學(xué)習(xí)最新的HTML編碼技術(shù)。如果您仍在使用&nbsp或<center>元素,則必須意識到這會導(dǎo)致標(biāo)記過于復(fù)雜,從而無法跨多個(gè)瀏覽器(不僅是新的Microsoft Edge瀏覽器,甚至在舊版本的Internet Explorer?中)運(yùn)行不一致。由于它們的可訪問性,最好始終使用語義HTML5元素。通過了解所有可用的語義元素來避免此錯(cuò)誤。如果您知道標(biāo)記層次結(jié)構(gòu),也將很有幫助。另外,使用HTML作為內(nèi)容的描述,而不是其顯示方式。如果您想準(zhǔn)確地展示您的內(nèi)容,最好使用CSS。
選擇不良的虛擬主機(jī)服務(wù)
選擇較差的Web托管服務(wù)是新手Web開發(fā)人員中常見的常見錯(cuò)誤。他們從未考慮過擁有非同尋常的網(wǎng)絡(luò)托管服務(wù)的影響。許多新手Web開發(fā)人員認(rèn)為擁有無限的空間實(shí)際上很棒。實(shí)際上,事實(shí)并非如此,特別是如果您打算進(jìn)行繁重的編碼。在選擇托管服務(wù)之前,進(jìn)行一些研究和閱讀在線評論很重要。例如,對Hostinger的深入審查列出了Web托管服務(wù)確切提供的內(nèi)容的詳細(xì)信息,以便Web開發(fā)人員可以根據(jù)他們正在創(chuàng)建的網(wǎng)站的類型做出最明智的決定。
Web開發(fā)人員犯的錯(cuò)誤–依靠jQuery
這個(gè)JavaScript庫是一個(gè)工具,可為DOM操作,動畫,事件處理等創(chuàng)建抽象層。大多數(shù)開發(fā)人員開始其前端開發(fā)時(shí)都以為jQuery是JavaScript的簡單版本。他們不知道無法用jQuery代替JavaScript。過于依賴jQuery表明您對基本的JavaScript概念缺乏深入的了解。如果您想成為一名成功的Web開發(fā)人員,那么學(xué)習(xí)JavaScript?非常重要。
忽略移動用戶
開發(fā)網(wǎng)站時(shí),始終至關(guān)重要的是為移動用戶優(yōu)化它。如果您未能將其包括在目標(biāo)受眾中,那么您將失去50億移動用戶。開發(fā)網(wǎng)站時(shí),您必須考慮移動用戶的體驗(yàn)。您的Web應(yīng)用程序必須具有無縫導(dǎo)航并可以訪問所有設(shè)備類型的內(nèi)容。為避免Web開發(fā)人員犯的一個(gè)錯(cuò)誤,您可以使用Bootstrap,這是一個(gè)免費(fèi)的開源HTML,JavaScript和CSS框架。如果您遵循Bootstrap慣例,則可以輕松實(shí)現(xiàn)響應(yīng)式Web應(yīng)用程序。
廣泛使用Bootstrap
Bootstrap是通常用于網(wǎng)站建設(shè)的用戶界面框架。許多Web開發(fā)人員使用Bootstrap作為樣式化網(wǎng)站應(yīng)用程序的一種方法。盡管它可能有有益的用途,但是僅憑它來代替CSS是不夠的。設(shè)計(jì)網(wǎng)站時(shí),您的目標(biāo)是使它盡可能地響應(yīng)。為此,Web開發(fā)人員必須學(xué)習(xí)CSS的基礎(chǔ)知識。一旦熟悉CSS,他們應(yīng)該開始著手完善其Saas知識。
Web開發(fā)人員犯的錯(cuò)誤–缺少SEO
這是Web開發(fā)人員犯下的最嚴(yán)重的錯(cuò)誤之一。網(wǎng)站上缺乏SEO最佳做法的原因是SEO專家的信息不正確。許多Web開發(fā)人員認(rèn)為他們具有適當(dāng)?shù)腟EO知識,因此可以輕松地將其納入網(wǎng)站中。掌握SEO是一個(gè)挑戰(zhàn),并且Web開發(fā)人員沒有看到需要真正的SEO專家。如果要?jiǎng)?chuàng)建最大化的網(wǎng)站,則應(yīng)在開始構(gòu)建網(wǎng)站時(shí)立即考慮SEO。如果最后推遲,則可能必須重寫整個(gè)系統(tǒng)。
無法模塊化代碼
Web開發(fā)人員必須完成的最關(guān)鍵任務(wù)之一就是確保其代碼模塊化。不要將所有代碼放入一個(gè)HTML文件中。將CSS,HTML和JavaScript合并在一個(gè)文件中也不是一個(gè)好習(xí)慣。最好將JavaScript分解為一個(gè)外部文件以分離功能。JavaScript的本機(jī)組件可改善您的項(xiàng)目體系結(jié)構(gòu),使您可以更輕松地編寫單元測試。
將便攜性視為理所當(dāng)然
經(jīng)驗(yàn)豐富的Web開發(fā)人員應(yīng)始終計(jì)劃可移植性。您不能僅假設(shè)服務(wù)器上存在數(shù)據(jù)庫連接字符串,硬編碼的文件路徑或庫。當(dāng)您認(rèn)為本地開發(fā)計(jì)算機(jī)與生產(chǎn)環(huán)境匹配時(shí),可能會導(dǎo)致大量問題。為了避免這種情況,您必須確保您的Web應(yīng)用程序可以使用負(fù)載平衡的多服務(wù)器環(huán)境進(jìn)行擴(kuò)展。如果可以,請?jiān)试S一個(gè)配置文件并準(zhǔn)備在Web服務(wù)器配置有所不同時(shí)處理異常。
無法優(yōu)化帶寬使用
Web開發(fā)和測試通常在本地網(wǎng)絡(luò)系統(tǒng)中進(jìn)行。因此,在下載大圖像時(shí),在開發(fā)區(qū)域中可能看不到高速Internet連接的任何問題。但是,當(dāng)用戶嘗試使用3G連接加載您的網(wǎng)站時(shí),可能會出現(xiàn)問題。忽視用戶體驗(yàn)可能會對您不利。如果這樣做,則必須準(zhǔn)備接受投訴和不良的網(wǎng)站排名。當(dāng)優(yōu)化帶寬使用率時(shí),可以提高性能。
要實(shí)現(xiàn)這一提升,您需要執(zhí)行以下操作。
- 縮小所有CSS
- 縮小所有JavaScript
- 優(yōu)化圖像尺寸和分辨率
- 壓縮服務(wù)器端HTTP
很容易假設(shè)您應(yīng)該始終將最小可行產(chǎn)品(MVP)投放市場。但是,這導(dǎo)致Web開發(fā)隨意地在其應(yīng)用程序上工作。匆忙提供產(chǎn)品的目的忽略了用戶現(xiàn)在要求更高的事實(shí)。他們想要可以輕松使用的東西。因此,如果您的網(wǎng)站不考慮擴(kuò)展性,那么您將遇到嚴(yán)重的問題。啟動應(yīng)用程序后,您甚至可能不得不重寫應(yīng)用程序的大部分區(qū)域,這是Web開發(fā)人員討厭的。作為熟練的Web開發(fā)人員,您必須考慮最終用戶。
一個(gè)示例是您選擇繼續(xù)在特定的Web服務(wù)器上上傳用戶的圖片。這種做法是可以接受的,因?yàn)樗梢钥焖僭L問應(yīng)用程序中的文件,每個(gè)開發(fā)平臺都提供文件處理方法,并讓您有機(jī)會將圖像顯示為靜態(tài)內(nèi)容,同時(shí)對Web應(yīng)用程序的負(fù)載最小。
但是,當(dāng)您的應(yīng)用程序增長并處理更多Web服務(wù)器時(shí),這可能不是理想的設(shè)置。即使擴(kuò)展數(shù)據(jù)庫存儲,Web服務(wù)器和會話狀態(tài)服務(wù)器,可伸縮性也有可能失敗。為避免這種情況,您必須放置文件同步服務(wù)。您也可以嘗試將文件分布在Web服務(wù)器上。如果從一開始就使用共享文件存儲或遠(yuǎn)程存儲解決方案,將更加容易。
Web開發(fā)人員犯的錯(cuò)誤–破碎的RESTful模式
Web開發(fā)包含RESTful API的使用。它反映在大多數(shù)Web應(yīng)用程序中,無論是與外部系統(tǒng)集成還是內(nèi)部使用。但是,仍然有些人沒有遵循預(yù)期的做法,并犯了編寫RESTful API的錯(cuò)誤,從而導(dǎo)致模式損壞。
模式損壞的原因可能包括。
- 錯(cuò)誤的HTTP動詞的使用。您可能正在使用GET寫入數(shù)據(jù)。當(dāng)您使用一種資源調(diào)用GET時(shí),答案保持不變,并且您不會看到應(yīng)用程序狀態(tài)的任何變化。這樣做的原因是因?yàn)镠TTP GET的設(shè)計(jì)是安全的。
- 無法發(fā)送適當(dāng)?shù)腍TTP狀態(tài)代碼。例如,您不能僅發(fā)送帶有代碼200的錯(cuò)誤消息,因?yàn)槟荒茉谡埱笾袥]有錯(cuò)誤時(shí)發(fā)送它。如果有錯(cuò)誤,請發(fā)送400或401。您必須熟悉今天可用的HTTP狀態(tài)代碼。
Web開發(fā)人員犯的錯(cuò)誤–最后的決定
Web開發(fā)人員盡管在提供無縫的Web應(yīng)用程序以供用戶使用方面做得很出色,但有時(shí)可能無法交付最終用戶。這些常見的錯(cuò)誤可能會成敗自己的職業(yè)。Web開發(fā)人員犯錯(cuò)誤的關(guān)鍵要點(diǎn):Web開發(fā)人員一定不能不熟悉最新的應(yīng)用程序。當(dāng)您在一個(gè)日新月異的快節(jié)奏行業(yè)IT世界中工作時(shí),您必須緊跟最新發(fā)展。否則,您將爭先恐后。谷歌,例如,定期介紹其算法的大量變化。您必須在必要時(shí)知道并適應(yīng)這些更改。
現(xiàn)在,請仔細(xì)檢查您的程序,看看是否犯了這些錯(cuò)誤。在啟動前立即修復(fù)它們,因此您不必重寫它們。最后,保護(hù)您的數(shù)據(jù)隱私,這對于您進(jìn)行的任何項(xiàng)目都是最重要的!