{eval=Array;=+count(Array);}
這幾天我也是因為一個項目而被迫使用vue,坦白的說vue和傳統的網站開發思路不同,導致愛的人愛死,老程序員煩死的現狀。
主要區別:
1傳統方式:我們做一個網站,首先創建幾個文件夾(css、js等等),頁面需要用的資源文件,都放到各自的文件夾里。然后創建若干個HTML網頁,一個個鏈接把這些若干網頁串起來就OK,網頁里需要有什么事件或效果,要么用原生js要么用jqurey,去操作某個dom,實現頁面變化。
調試的時候也很簡單,如果靜態網頁,瀏覽器就可以直接運行調試。asp、jsp、php、.net等動態網站,簡單配置一下iis或Tomcat,也就能直接調試。
2vue(這里用vue腳手架來舉例):
vue和傳統最大的區別就是,vue只有一個html頁面(也就是入口頁面,你也可以理解成主頁面),除了主頁面之外,其他的頁面都是html片段,以.vue為后綴的片段文件存在,用戶訪問網站的時候,第一次加載完整主頁面,后面的點擊其實就是變化html片段而已。(和老程序員理解的局部刷新有點像)
所以vue特別適合制作手機端項目,因為它只需要根據用戶的點擊,加載所需的片段而已。由于不用一頁一頁請求新網頁,所以這種機制會讓手機項目運行非常絲滑順暢。
但優點也是它的缺點,vue項目的特性決定它不適合做網站,稍微有點seo知識的人都明白,這種機制做的網站,機器人是爬不到任何內容的。
vue的部署也是讓我很詬病的,部署它需要折騰一大堆事兒。首先需要安裝nodejs,你可以暫時把它理解成和iis Tomcat類似的網站發布容器。因為只有在nodejs下才能調試vue腳手架項目。
nodejs裝完,然后在cmd命令行下,通過npm命令安裝一大堆各種庫插件。
這一堆事兒折騰完,你就可以通過一個命令創建一個vue腳手架,然后開始你的項目開發之旅。
很多老程序員被“vue腳手架”這個詞搞得云里霧里,簡單的說:上面折騰一大堆,就是為了最后敲一個命令,讓系統幫你在指定位置創建一組文件夾,然后vue能用上的各種js(百十多個吧)組件都放在這各個文件里,供你開發時候調用。
對比你之前的操作,相當于:你建好文件夾,在js文件夾里放好jqurey,和你常用的js。
所以這套步驟,開始讓我很不習慣,可能很多老程序員也不習慣。會讓你有種“為了做個小項目,先要部署一套大工廠的感覺”。
很多老程序員其實都是做小項目出身的草根,什么百萬千萬的迸發、什么團隊協作、前后端分離等話題,不是這類程序員關心的。他們往往即是美工也是程序員,即是前端也是后端。幾乎都是以快速交付項目為第一初衷,不想為了個環境來回折騰。所以一時間適應不了vue開發模式。
另外如果你的項目,定制化程度較高。我個人還是建議采用獨立html的傳統方式開發。
如果是移動端開發,vue的確是最佳選擇。順便提一下,vue和小程序幾乎是一摸一樣的套路,會一個兩個就都會了。
我也是花了2天時間,從排斥到接受的。目前用著還不錯。
使用框架并不會讓你的技術變菜,相反,框架能夠讓你更加方便、快速的實現某些功能。
框架的出現,使開發變得更加簡單,設想,如果vue沒有nodejs的支持,你還會去使用嗎?各種依賴,各種配置,統統需要你自己手工構建,你會把大量的時間花費在無用的地方,而忽略了你所需要實現的也許需求。
如果你感覺使用各類框架導致你的能力降低了。那只能說你自己的能力還有待提高。
提升你的技術不一定要會很多編程語言,需要去了解思想。那么在使用vue的時候,有沒有思考過,vue為什么要這樣設計,這樣設計有什么優勢,如果是我,我會怎么設計。
如果你專注于前端開發,那你可以嘗試自己去實現一個vue,當做你的技術提升。
反問提問者一個問題,你在使用jquery后,有沒有感覺你的技術下降了?
個人的一些觀點,歡迎討論!
我就是寫框架造輪子的,框架的出現的確會讓程序員能力減弱,變成框架操作員,例如spring java的出現,使得后臺開發人員不需要知道epoll tcp底層原理,不需要知道條件變量 信號量 共享內存怎么實現進程間通信。但是框架是我們開發效率更好,題主可以反向思考java c的出現降低了我們對計算機底層指令的理解,我們為何不用匯編編程?不要太在意技術本省能達到目的就是好技術。
大家要記住:互聯網和建筑一樣,程序員和水泥工都只是這個行業的底層人員。我們在追求技術的時候想想水泥工在外人面前比砌磚技術的場景,就不會死揪不放了。
vue是前端三大框架之一。在日常的開發工作中,能便于我們快速搭建前端框架,快速的啟動項目進入細節開發。當用的時間長了以后,你會更加的依賴框架。
我們都知道人生的境界有三層:第一層看山是山,看水是水;第二層看山不是山,看水不是水;第三層,看山還是山,看水還是水。跟著人生的境界一樣,其實你已經達到了第二層境界。
開發能力也主要分為三層境界。
這個境界都是新手。這時候可能你只知道HTML ,CSS和js。根本都不知道后面的框架,所以這個時候需要自己徒手搭建框架,徒手寫頁面路由,手動完成頁面自適應等。這時候恐怕頁面的一個輪播圖,都夠自己費腦子的,得花上一天或者更多的時間寫好這個輪播圖。
這個階段就相當于你小時候學走路的階段,只有當你學會這個走路,才會后有后面的奔跑跳躍的動作。記得當時我學習前端的時候,在這個第一個階段,很是苦惱,為什么我一個簡單的頁面,要花費很長的時間去寫,花費很長的時間去寫一個組件,一個下拉框,一個三級菜單欄。等我過了這個階段就豁然開朗了。
走過了第一個階段,漸漸的接觸到了應用框架,和一些組件。就拿這個vue來說,可能輕輕松松十幾分鐘就能啟動一個項目,當初在第一個階段來說,可能花兩三天去搭建項目。
然后很多組件也不需要自己寫了,有豐富的前端UI組件,什么輪播圖,頁面自適應布局,各種各樣的按鈕,生拖硬拽就行了,分分鐘搞定。
這個時候的工作就進入了一個舒適區,也達到了一個自我滿足的狀態,殊不知在這個境界里,稍有不慎,你可能就廢在這里了。還有第三重境界在等著你。
到了這里,可能有人會問,這里也是從能開始,為什么和第一重境界不一樣?
那確實是不一樣,過了第二重境界,為什么要回到從零開始呢?這里不是一種倒退,而是一種進步。在第二個階段,你的生拉硬拽。你會發現已經不能滿足你的開發工作了。因為在這里的很多開發都是被局限在這些框架里了,如果你想創造不一樣的樣式,就需要你從零開始徒手造輪子。
你需要用原生的底層的東西,去造屬于你自己的東西,去寫一套你自己的框架,自己的組件。你所寫的這些東西都屬于你自己獨有的,不再和別人一樣都是千篇一律的東西。
當然,這第三層境界也并不是那么容易達到的,有的人需要花費三五年,有的人則需要花費數十年。
所以說當你熟練運用這些框架以后,你發現自己的編程能力變弱了,這正是在告訴你,需要學習更多的東西,以便于你能夠順利的達到開發的第三種境界。
不是vue讓你能力下降,是你本來就能力弱。很多人學vue都是一知半解,做個簡單的增刪改查就覺得自己精通了,連html,css,js基礎都是速成的,沒掌握好,就撿起vue這樣的框架了,沒有現成的組件庫,啥也不會寫。vue不是要代替這些基礎技能,是為了給有能力的人提供更方便的工具。還有人噴jquery過時了,怕是他們連vue和jquery的本質區別都搞不清楚,適合的場景也不知道。不是vue讓人能力下降了,是你根本就沒有接觸到復雜需求,或者說因為你能力弱,所以根本就不會給你接觸復雜需求的機會
你怎么就是意識不到呢?讓你能力下降的是你的懶惰和缺乏學習欲望還沒有深究的習慣,而不是一個優秀的框架,框架制造出來的初衷是為了提高生產效率,降低開發人員的壓力,提高開發人員的幸福感,唯獨跟幫你提高自己的編程水平沒有任何直接聯系。對于已經水平夠好的人,他有資格讓自己的工作變得開心一些,甚至他們通過自己開發很多優秀的工具框架來實現這個目標,但是水平還比較菜的人沒有這個資格,除非他們不想進步。因此,你這個問題非常缺乏邏輯,如果擁有了一把槍讓你的搏擊能力下降,那是你的問題,不是槍的問題;如果擁有了汽車讓你的運動能力下降,那也是你的問題,不是車的問題。你可以坦然接受這種下降并且不認為這是什么壞事情,但請不要讓一個工具替你背鍋!
這個問題就好比用了jquery感覺對原生js的理解越來越淺,框架和庫都是為了幫助我們提高開發效率的,往往會讓我們忽略本質的技術 這才是問題所在,所以用的時間長了 當你丟下庫和框架的時候你會發現都不會寫代碼了
vue世界都是組件,現在編程,閉門造車時代已經過去了,我們就是更方便實現功能就好了。類比于制造業,不能說我要做汽車,還要先去挖礦煉鐵和種植橡膠,下降的是不需要的能力,例如挖礦能力和耕地能力。什么框架能提高我們效率就死好框架。
10
回答0
回答0
回答10
回答10
回答0
回答0
回答0
回答0
回答0
回答