Web開發糾結於編程語言是很是沒必要要的

在搞Web開發以來,混跡在V2EX和知乎,看到最多的就是關於進入Web開發,選擇什麼語言的問題,看來對於某些人來講,語言太多了也是一件頭疼的事情,因而糾結在不一樣語言的各類特性比較之中,最後也沒拿定個主意。就目前而言,搞Web開發,彙編、C、C++你就不要考慮了,若是你真要考慮,那容許我叫你一聲「大神」,就目前而言,常被拿出來抉擇的無非就是:PHP、Java、C#、Python、Ruby,而Ruby就目前看來,已經縮小到特指Ruby on Rails了。前端


下面我談談個人選擇過程。最早考慮的是PHP了,在作Web開發以前,我主要學習的是前端,什麼HTML、CSS、jQuery都能使用,並且也能遵循規範作到規矩,雖然說不是熟練,但也能搞出個東西。在高二時接觸PHP環境,當時主要是修改一下,從沒有系統的學過,大一時也準備系統的學習一下PHP的,理由顯而易見,這東西很流行,主機支持也多,入門也簡單,開源程序多的很,不過看過教程事後,打消了這個念頭,PHP入門確實簡單,不過真要作出一個稍微大一點的東西,就必須考慮不少東西。PHP也有不少開發框架,不過最後仍是放棄了,理由是感受PHP程序確實很差讀,想要寫得優雅(主要指形式上的)比較難。程序員


從高中接觸互聯網以來,尤爲開始使用PHP的各類開源程序之後,通過各類開源理念薰陶,如今對Java、C#什麼的靠大公司壟斷或者支持的產品確實提不起興趣,不是說這些很差,而是不太符合本身的想法,若是說之後爲了混飯吃,必須去搞這些工業化的語言,仍是會去的,但本身的東西,我是不會考慮這些東西的,至少如今是。我也有同窗如今學的是Asp.Net開發,看着在集成開發環境裏用用控件什麼的,仍是比較輕鬆的,不過相比輕鬆,我仍是喜歡有趣的。編程


而後就是Python和Ruby了,無疑,我最早知道的是Ruby,在圖書館裏瞎轉是看到的,一看是日本程序員開發的,我就聯想到機器人,結果翻開一看,並非,草草翻了幾頁,感受有些意思,不過也就到這裏了。Python是在GAE時看到的,在今年暑假前實習時,我就一直糾結是選擇Python仍是Ruby,最後在網上搜索入門中文教程時,找到了Python的,而Ruby的則沒有找到,因而就進入Python的世界了,剛開始的主意是使用Django框架。暑假就學了Python基礎知識,並接觸了Django,最後感受,Django太繁瑣了,我須要的是一個簡潔的Web開發框架,因而找到了Webpy。服務器


有人對Python的最大不滿就是,代碼塊以強制縮進來表示,認爲這是頑固的毫無情趣的古板東西,而這倒是Python的理念之一,解決一個問題有一種方法就好了——簡潔和清晰。就目前個人性格來看,顯然是極其喜歡這種富有層次的美感,你能夠說我內心有嚴重的壓迫症,無論怎麼樣,我如今就是以爲看着這種縮進十分舒服,以致於我看着C的大括號就以爲非常多餘,非常刺眼。而Python的一些Web框架一樣有這樣的美感,Webpy,如今我使用的Tornado,它們的設計理念都十分對我胃口,既然對我胃口,爲何不用呢?框架


再說Ruby,實話說,我很是欣賞Ruby的一些語法特性,不過我以爲,Ruby沒什麼優點,而如今Ruby的流行主要取決於Rails框架。在Perl後,Ruby和Python的擁護者經常進行相似宗教戰爭的鬥爭,在各大討論編程的論壇,均可以絕不困難的找到這樣的爭論話題,而在各類爭論之中,Ruby擁護者其實是ROR擁護者,它們強調着ROR的敏捷開發特性,強調着開發速度是多麼的快,毫無疑問,如今的互聯網的競爭就是速度的競爭,你能想到的創意別人也可能想到,而後關鍵就是誰最早將創意變成現實。我在看了各類闡述ROR神奇的介紹後,也開始嘗試試用一下,我強忍着我所討厭的有一串end的Ruby語法,開始了ROR之旅,最後我發現了一個問題,那就是它們強調的敏捷與高效,徹底是要針對人的,不是每一個人都習慣ROR的風格,好比我就不行,感受是個很微妙的東西,說不出爲何,就是不習慣,因而不舒服,既然不舒服,爲何要使用呢。編程語言


上面只是針對我本身而言的,我估計大概沒有人既喜歡Python又喜歡Ruby吧,說不定ROR就十分迎合你的胃口,那麼,我推薦你學習Ruby,並使用ROR進行Web開發,若是適合你,那你可能會體會到效率與痛快了。Python的問題就在於,你糾結了那麼多的語言最後選擇了他,結果你還得糾結更多的開發框架,Python究竟有多少Web框架,我沒有統計過,但至少和ROR一統Ruby Web開發框架的天下相比,說是七國混戰也不爲過了。選擇了Python風格,你又要開始清楚你對Web框架的風格了,然而最重要的一點是,這些框架都是有共通性的,這個留到之後再談。學習


說到這裏,很明顯我選擇了Python,而業餘之中,我會一直使用它,之後靠什麼吃飯,如今就不清楚了。或許也說不定那天,我心情一高興,受到什麼刺激事後,風格大變,開始厭倦Python的風格,而喜歡上Ruby,那也是有可能的。網站


有人會抱怨說Python、Ruby什麼的叫腳本語言,是否是太那個啥了,功可以用嗎?速度夠快嗎?仍是以爲Java、C#什麼的要靠譜一點,我想說的是,你爲Python、Ruby的功能和速度擔憂,還不如多關心一下本身的網站,快速實現,並加大推廣,等你的站點達到這些語言的瓶頸時,再考慮將瓶頸的地方改用C或者C++實現,而對於Python來講,這點是很好知足的。說句實話,你的站點或許永遠達不到所謂的瓶頸,想一想若是Facebook剛開始時擔憂PHP的瓶頸問題,我估計馬克如今還在糾結要不要使用PHP,而達到如今的規模事後,已經有足夠的資金來擴展服務器或者改寫某些功能使用更快的C或者C++實現了。設計


若是有創意,快速實現是很是重要的,而你也沒必要糾纏於不一樣語言的各類特性之中,找一個本身看着舒服,寫着有趣的語言,用着方便的框架趕忙上吧,若是你已經會Java或者C#這些,那也上吧,不要猶豫了,若是你能保證你使用匯編或者C、C++哪怕是LISP能更快的搞定你的想法,那也上吧。糾結於實現的編程語言,是一件費時不討好的東西。教程

相關文章
相關標籤/搜索