自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PHP 還是 ASP.NET:我做了正確選擇么?

開發(fā) 后端
設(shè)想一下,如果你可以回到過去,改寫你的技術(shù)生涯。哪些重要的時(shí)刻,你會(huì)想改變?在2001年,我曾作為一家成功的網(wǎng)站咨詢公司的共同合伙人,去處理有關(guān) Classic ASP的事情。當(dāng)時(shí),這些事情是很了不起的。我們是一家微軟產(chǎn)品的經(jīng)銷商,并且為此感到自豪!但是……

在2001年, 我曾面臨一個(gè)選擇,去學(xué)PHP或者ASP.NET。 我最終選了后者,但我依然懷疑這個(gè)選擇其實(shí)不好。

那是2001年,我面臨一個(gè)選擇。

設(shè)想一下,如果你可以回到過去,改寫你的技術(shù)生涯。哪些重要的時(shí)刻,你會(huì)想改變?在2001年,我曾作為一家成功的網(wǎng)站咨詢公司的共同合伙人,去處理有關(guān) Classic ASP的事情。當(dāng)時(shí),這些事情是很了不起的。我們是一家微軟產(chǎn)品的經(jīng)銷商,并且為此感到自豪!但是……

我曾用過早期的.NET 并且很痛恨它。我討厭Visual Studio。我不知道 C#,而 VB.NET 看起來就像一個(gè)笑話。我記得我坐在奧克蘭到舊金山的船上,決定學(xué)習(xí)ASP.NET的基礎(chǔ)來應(yīng)對工作,而一邊又不停的問自己一個(gè)問題。

你究竟要多努力才能搞懂這些?那天我去工作,并且和我的合作人坐在一起。我告訴他 “.NET” 已經(jīng)脫軌了。他笑了笑,然后那天,我們有了一次關(guān)于我們公司和我的未來的談話。

我熟悉classic ASP,IIS SQL 服務(wù)器,windows NT/2000 – 我知道如何處理這些事情。我并不知道 Linux 或者 MySQL, 但是我通過閱讀代碼可以發(fā)現(xiàn):新的框架其實(shí)基本上照搬Classic ASP,但有些針對MySQL和Apache的改動(dòng)。

我本可以預(yù)料到這些,并且這本可能成為一個(gè)有趣的挑戰(zhàn)。我一直喜歡學(xué)習(xí)直到現(xiàn)在。我可以回去買書并且在一個(gè)月內(nèi)掌握這些新技術(shù)。

但是我們有一些不能流失的顧客。我必須立刻服務(wù)他們,不能中斷。這種情況下,學(xué)習(xí)一個(gè)新技術(shù)平臺(tái)會(huì)非常困難,尤其是我們顧客找我們的理由是因?yàn)槲覀兪俏④泴<摇?就像毒癮一樣,難以割舍。)

“繼續(xù)做自己熟悉的事情“是個(gè)想當(dāng)然的選擇。問題是我過去的知識(shí)和經(jīng)驗(yàn)并不能很好應(yīng)用到.NET上。無論如何,我需要學(xué)習(xí)一門新語言和新框架。

微軟統(tǒng)治的年代

[[110775]]

你需要記住2001年是微軟統(tǒng)治的年代。大型的網(wǎng)站是由Linux和Java構(gòu)建開發(fā)的。如果你那時(shí)在硅谷,并且和別人說你是一個(gè)微軟開發(fā)者,你會(huì)被嘲笑的。(現(xiàn)在嘲笑的人更多了)

出了硅谷,對于任何企業(yè),微軟就是答案。這些公司已經(jīng)購買了微軟的Window和Office,而他們現(xiàn)在要網(wǎng)站。微軟是他們想當(dāng)然的選擇。

不幸的是,(我的咨詢公司在IT泡沫事件破產(chǎn))我去了一家”The Valley“的初創(chuàng)企業(yè)。這家企業(yè)的架構(gòu)是由開源/Java/Emacs/Eclipse組成的。我是唯一一個(gè)微軟程序員,服務(wù)一個(gè)全部采用微軟技術(shù)的重要客戶。

其他開發(fā)團(tuán)隊(duì)需要數(shù)周來完成在客戶網(wǎng)站上的一個(gè)小改動(dòng)。而我僅要幾個(gè)時(shí)辰就可以用SQL服務(wù)器和Classic ASP達(dá)到。對于他們本打算放棄的任務(wù),我總能給客戶滿意的結(jié)果。

這就是我選擇成為一個(gè)微軟專家和一個(gè).NET的開發(fā)者的原因。除此之外,我曾拼命地去成為一個(gè)微軟認(rèn)證工程師。(我曾經(jīng)做到了?。┳罱K,我貌似成為了一個(gè)微軟方面的MVP?;蛘哒f,我認(rèn)為我成為了。

現(xiàn)在看來這實(shí)在很愚蠢,但如果你是當(dāng)時(shí)的我,在那種工作環(huán)境之下,MVP的頭銜意味著一切。去問問你的.NET朋友,他們會(huì)告訴你這些。

接下來的事

ods

BOM

因?yàn)閷ο髷?shù)據(jù)源不能同數(shù)據(jù)列表綁定,所以Entity Framework不能被使用。

雖然我現(xiàn)在發(fā)了這條Tweet,但是很多ASP.NET的程序員依然對這個(gè)問題很茫然。這不是惡搞,這是一個(gè)微軟官方的教程。

這就是我決定轉(zhuǎn)行之前,我職業(yè)生涯的真實(shí)寫照。

從2002到2008年,微軟網(wǎng)站產(chǎn)品曾經(jīng)是(現(xiàn)在很大程度上依然是)“可視化組件開發(fā)”。這意味著你只需要不斷地拖放組件,然后讓組件實(shí)現(xiàn)你的功能。(生成HTML,連接服務(wù)器,CSS代碼等等)

這項(xiàng)技術(shù)使得表格必須用“數(shù)據(jù)源”這種原始方式去生成。我需要麻煩的寫出一些XML文件去映射“數(shù)據(jù)源”。

這事從來沒有順利過,但我還是堅(jiān)持去做。請不要問我為什么。

這些也發(fā)生了

2008年,我開始用Rails,并且立刻喜歡上了它。但這并不意味著我從此“義無反顧”的轉(zhuǎn)向了。Rails令我可以,像以前開發(fā)時(shí)一樣,擁有全面的反饋。HTML和CSS不再可怕。(它們對ASP.net開發(fā)者而言很可怕)代碼重新成為你的朋友。

在.NET的環(huán)境下,在某種程度上,我們處理后臺(tái)代碼和服務(wù)器組件,而水平***的開發(fā)者僅用最少的代碼來完成程序。不知何故,在這一情形的驅(qū)使下,我們背離了我們原本的目標(biāo):網(wǎng)站開發(fā)者。

這一切想法向我涌來。我清楚地記得我想遠(yuǎn)離.NET的想法。但當(dāng)我冷靜下來,我有了個(gè)想法:

如果我將我在Rails學(xué)到的帶回ASP.NET,那么會(huì)發(fā)生什么?

從此我啟動(dòng)了”亞聲波“項(xiàng)目(受ruby的”活動(dòng)記錄“啟發(fā)而寫的ORM),并且嘗試了5種不同的方法去構(gòu)建一個(gè)基于.NET的MVC的框架。 我喜歡C#,而且微軟的產(chǎn)品市場很大。為什么要依賴微軟的研究室來決定如何寫堆棧?這構(gòu)成我接下來5年的職業(yè)生涯。我被認(rèn)為是一個(gè)”麻煩制造者“,”攪罐器“,”抱怨者”,并且被認(rèn)為是個(gè)“巨魔”?;蛟S這些看法確實(shí)有點(diǎn)適合我。 “改革推動(dòng)者”對我而言是個(gè)新角色。(Twitter也是)因此… 我覺得我的公關(guān)技巧還需要改善。

這有些跑題了(但還是有聯(lián)系)。我真正想知道的是…

如果當(dāng)時(shí)我不這么做,會(huì)發(fā)生什么?

今天提起這件事情是因?yàn)槲矣幸淮挝冶谎埲タ匆粋€(gè)”Ghost Blog“的模塊。(作為一次隨意討論的一部分)而這個(gè)Node程序看起來就像用PHP寫。

這不禁讓我想到”如果我堅(jiān)持用PHP,是否我會(huì)用同樣的方式寫Node程序“?我很可能通過一個(gè)腳本開發(fā)者的角度去看網(wǎng)站,并且錯(cuò)過了一些我從.NET開發(fā)中學(xué)到的”高級(jí)概念“。這種想法很正常,我應(yīng)該會(huì)這么寫Node。

這當(dāng)然引發(fā)了另一個(gè)問題:我寫Node程序是否和.NET開發(fā)者類似?

或許有一些。我知道我寫ruby程序就是這樣…那么這是個(gè)糟糕的事情?這些影響是否令我更容易扭曲我的Node代碼?

我知道我將會(huì)習(xí)得很多有關(guān)Linux或MySQL的知識(shí),并且我確定我將會(huì)參加一些有趣的開源項(xiàng)目,如同我寫.NET時(shí)一樣。我可能會(huì)迷上Rails,并且嘗試將一些Rails優(yōu)點(diǎn)帶到PHP中。

好似歷史就會(huì)重新聚焦到此刻,但有一個(gè)重大的不同:我將不會(huì)陷入ASP.NET的泥潭長達(dá)五年。

我認(rèn)為我應(yīng)該能做到:

  • 更加了解Linux系統(tǒng)
  • 更加了解MySQL和其他開源服務(wù)器。
  • 我不會(huì)像4年前一樣害怕Javascript
  • 不再依賴開發(fā)工具
  • 喜歡HTML和CSS

這里有一個(gè)明顯的缺點(diǎn):.NET阻礙我增加關(guān)于HTML/CSS/Javascript的知識(shí)。我無須告訴你這些知識(shí)是如何重要,永遠(yuǎn)不需要。

另外,我被迫使用”Visual 工具“,而且現(xiàn)在每天還同它作斗爭。在網(wǎng)站項(xiàng)目上,我習(xí)慣于用TreeView控件來看數(shù)據(jù)庫和文件里的表格。Visual開發(fā)已經(jīng)被燒錄進(jìn)我的大腦!啊哈!

另一方面

或許當(dāng)我最終決定進(jìn)入Rails的世界時(shí),這些挫折迫使我不斷的學(xué)習(xí)。這團(tuán)火始終和我在一起,鼓勵(lì)我發(fā)了這條博文。借用Lewis Black的一句話:

[[110776]]

要不是因?yàn)槲业鸟R,我才不花時(shí)間上大學(xué)呢!

我的馬就是 ASP.NET。

原文鏈接: Rob Conery   翻譯: 伯樂在線 - Diego

譯文鏈接: http://blog.jobbole.com/62935/

責(zé)任編輯:林師授 來源: 伯樂在線
相關(guān)推薦

2009-07-28 15:04:34

PHP ASP.NET

2019-06-24 10:58:03

HTMLCSSJS

2010-05-24 17:12:23

連接MYSQL

2009-07-28 14:30:35

ASP.NET JSP

2009-09-16 09:14:46

ASP.NETPHP

2009-07-22 17:45:35

ASP.NET教程

2009-07-28 14:10:14

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-24 11:55:29

ASP.NET MVC

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程

2010-02-07 09:28:09

2009-07-01 09:27:22

ASP.NETJSPPHP

2009-07-27 16:22:54

GridView選擇行

2009-07-24 10:55:00

asp.net mvc

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計(jì)

2009-07-29 17:11:25

ASP.NET ISA

2009-07-29 16:08:07

ASP和ASP.NET

2010-06-07 14:34:49

連接MySQL 數(shù)據(jù)庫

2009-08-03 13:38:18

ASP.NET編程模型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)