2009-01-07 10 views
7

前幾天浪費我的時間,我讀了問題,問有多少開發人員手工編寫自己的HTML/XHTML,而不是依賴於WYSIWYG工具 - https://stackoverflow.com/questions/406052/do-most-web-programmers-not-designers-use-wysiwyg-editors-or-hand-code-their上午我通過設計所見即所得的工具,我的ASP.NET組件

我傾向於傾向於設計ASP.NET服務器控件而不是用戶控件以用於我的代碼。我這樣做,以便我可以通過拖放到所見即所得來重複使用它們,並設置少數相關屬性。這在設計組件時會花費額外的時間,但是當我在更大的應用程序中使用它們時會大大簡化。

經過閱讀,大多數開發人員似乎手工編寫代碼而不是使用所見即所得,這讓我很想知道:我是否在浪費時間開發組件?

編輯:澄清 - 主要是,最初的意圖是這些控件是我自己使用的。然而,有幾次他們可能對我們團隊的其他人有用或可能會公開發布。但是,與大多數情況一樣,我傾向於看到通過相對較少的額外工作提供的巨大潛在額外價值,而不管額外價值將實現的可能性。

+0

似乎有些人誤解了原來的主題(或者也許是我)。我假設他在詢問是否爲VS方便使用VS WYSIWYG編輯器而設計服務器控件是浪費時間。 – TheTXI 2009-01-07 16:46:58

回答

5

不,你不是在浪費你的時間。如果所見即所得用戶可以輕鬆使用您的組件,您的潛在用戶羣將會更大。如果你是這些組件的唯一用戶,那麼它們就適合你的開發風格。如果你進行視覺設計,那麼對WYSIWYG的支持是有意義的。

1

如果您對所見即所得編輯器的工作更加熟悉,並且開發服務器組件使您的工作更輕鬆,那麼我不明白爲什麼您應該嘗試遵守其他開發人員方法,前提是您的工作適合您。

4

您可以創建一個用戶控件,並使用不同的技術把它編譯成可隨後由Web應用程序引用的DLL:一些方法

概述: http://geekswithblogs.net/dotnetrodent/archive/2006/06/16/82136.aspx

詳細方法: http://webproject.scottgu.com/CSharp/UserControls/UserControls.aspx

我從來沒有使用所見即所得的工具,因爲它從來沒有trully所見即所得,一旦你facter JavaScript,CSS和其他東西。 (我知道VS2008變得更好但不完美)。而設計師總是很慢。我更喜歡使用標記進行編碼。

如果您開發一個商業組件,你打算賣給你應該花時間在最完整的功能設置恕我直言。包括所見即所得。如果您的構建組件使您或您的團隊能夠使用它們,那麼您應該評估花費時間讓您的組件獲得額外步驟的成本優勢。

+0

+1以前沒有遇到過的重要參考資料。我從來沒有考慮過這個選項,因爲用戶控制似乎從未在所見即所得中正確顯示,一旦你在幕後瘋狂像動態數據顯示... – BenAlabaster 2009-01-07 16:50:42

+0

我儘量避免用戶控制像瘟疫 – Shawn 2009-01-07 17:11:13

+0

我有一些相當複雜每個頁面有7個選項卡,每個選項卡都具有網格和各種功能。我們將其分解爲多個用戶控件,以允許多個用戶同時處理它,更重要的是最大限度地減少在工作時需要考慮的事項。然後,我們能夠使三個選項卡使用一個CTRLT :) – JoshBerke 2009-01-07 17:15:35

2

我認爲你不會浪費你的時間,特別是如果你想發佈這些控件讓其他開發者使用。如果所需的努力確實「有點額外」,並且您發現它可以幫助您在更大的項目中工作,我認爲您的控件通過兼容所見即所得工具得到了改進。

就個人而言,我通常手工編寫HTML/XHTML,但我喜歡偶爾使用所見即所得的功能。我總是發現,所有WYSIWYG友好的控件比依賴所有手動編寫代碼的控件更易於使用。

0

我會同意以前的帖子。我不認爲你在浪費你的時間。使控制所見即所得功能允許用戶以兩種方式做事情,扔掉設計師並投擲代碼。還有一些時候,使用屬性編輯器時發現控件的功能更容易,並且可以在代碼中進行更改,然後編譯和運行應用程序。

0

當我開始編程我愛所見即所得,並用它幾乎一切。

我開始編碼HTML的必要性,總是有東西,我只是coul不能正確使用所見即所得的編輯器。經過一段時間,我意識到對於我來說,直接使用html比使用鼠標設置屬性要快,所以隨着時間的流逝,我使用了越來越多的html,直到沒有更多的所見即所得的編輯器。

爲什麼我告訴你這個故事?因爲我的個人經驗告訴我,一個初學者程序員會喜歡所見即所得,你的努力使服務器控制和一個高級程序員不會給你任何榮譽。

我的意見是,你應該按你的意願去做。如果你這樣做是爲了取悅別人,如果你的團隊中沒有初學者程序員,請不要打擾。

那是我5分錢;)

+0

未來的程序員如何維護我開發的應用程序?雖然現在團隊中沒有初學者程序員,但這並不意味着下週不會有... – BenAlabaster 2009-01-07 16:59:42

2

供自己使用你已經知道,如果你是在浪費你的時間或沒有。

[我進入卡瑪防空洞]

對於公衆和你的團隊的其他成員,我要提供對流量的意見,你可能是...好不是浪費你的時間,但可能沒有充分利用它。

我認爲很少有網絡開發人員會認真對待所見即所得產品,但是如果大多數人可以在手碼級別使用您的控件,並且少數人可以進行拖放操作,那麼您已經提供了永遠不會選擇的好處徹頭徹尾的壞事。除了可能涉及小孩和良好行爲的地方外。

1

我認爲你必須接受一粒鹽的民意調查。僅僅因爲Stack Overflow上的大多數人都說他們手動編寫HTML代碼並不意味着大多數Web開發人員都這麼做。像Dreamweaver和Microsoft Frontpage這樣的工具是非常流行的工具,例如,主要是因爲他們所見即所得的功能。網頁寄存公司通常擁有所見即所得的網頁建設者,這些網頁建設者也非常受歡迎。我也手工編寫了大部分我的東西,但我與來自世界各地的其他公司的Web開發人員一起進行了大量的自由工作,從我的個人經驗來看,我可能會說大多數Web開發人員使用所見即所得工具。 Web開發人員經驗越豐富,他們使用WYSIWYG工具的可能性就越小,但那些經驗較少的人遠遠超過那些有豐富經驗的人。

1

對於你自己,你可能會提出一個問題:「其他開發者是否在浪費時間手工編碼控制?」。

我通常只是在頁面上拖放控件,並在需要時更改生成的html,如果它只在一個頁面上使用。如果控件和它的功能在同一個Web應用程序的多個頁面上使用,那麼我會去用戶控件。當確定要跨應用程序使用時,我只想編寫一次代碼,以便我可以輕鬆分發服務器控件。我認爲關鍵在於它(佈局和功能)在多個地方使用,或者您即將在多個地方使用它。在許多地方重複代碼是一個「錯誤」,因爲它花費了更多時間爲一次使用開發可重用代碼。另外,它是軟件,所以你可以稍後改變!

1

我認爲你真正的問題可能是「是否有一種方法可以開發我的UI,我應該瞭解更多,因爲它可能比我現在做的更好?「

考慮到事情變化的速度有多快,我們都經常問這個問題,我第一次看到使用Ruby on Rails開發的網站;然後我跑過了一個教程,其中有沒有但是一切都是用CSS和主題完成的;而且它讓我意識到,也許Dreamweaver並不是最適合所有事情的最有效的環境,其結果可能至少同樣具有吸引力。我一樣的震撼

所以我認爲這是至少值得嘗試的替代品,使一個智能決定什麼對我最有效,我的技能和我的要求。我想在我的工具包中使用最好的工具,即使我不需要它們用於每個項目。

特別是因爲您似乎很欣賞您目前的方法花費了大量時間。

0

我想我會創建控件,如果它在很多地方使用。即使你手動編碼html,它仍然可以節省時間,並簡化工作。 但我同意手工編碼html/css效率更高,所見即所得的網頁製作者不太支持這一點。

1

我想說,如果它確實只是一些額外的工作,並且增加了如此多的額外價值,很難想象它可能會浪費時間。後面的用戶希望將來使用你的組件將會更容易,並且將節省大量時間,否則會花費手工編碼。更何況,如果您可以通過鼠標單擊並拖動來拖放組件,那麼爲什麼要浪費擊鍵?

1

像其他事物一樣,相應的答案是「這取決於」 ......

你必須衡量添加此功能的投資回報率。

對於'我';就我個人而言,我從來沒有創建過一個適用於wysiwyg編輯器的web控件,所以我不知道它有多少努力。

對於'R';如果你在一個大型開發團隊工作,分發你的代碼,將自己在一個wysiwyg編輯器中重新使用這些控件,或者甚至只是想體驗,那麼你一定會得到你的回報。但如果這樣做是基於未來的維護程序員;您可能會偏向於優化方面。 (恕我直言)