• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 20,  comments - 13,  trackbacks - 0
            之前不知道做了什么,搞得Flex Development里面的AS項(xiàng)目無法自動檢錯,寫了錯誤的代碼它也不會檢錯,后來還一度打算換FDT呢,不過那個太卡了,沒法用,只能硬著頭皮解決Eclipse問題。

            重新弄了個Eclipse,然后擴(kuò)展了FB插件,問題依舊,在FB打開也是,初步判定是工程的設(shè)置有問題。

            進(jìn)入項(xiàng)目,右鍵屬性設(shè)置,建立Main文件夾,并且設(shè)置Main函數(shù),也就是項(xiàng)目啟動后第一個運(yùn)行的程序,(在ActionScript Applications 和ActionScript Build Path都要設(shè)置),另外還可以設(shè)置Run,那樣當(dāng)你點(diǎn)Run時,就會自動編譯生成swf了,太強(qiáng)大了。
            posted @ 2010-08-05 16:05 ACong 閱讀(529) | 評論 (0)編輯 收藏

            我使用svn一直很順利,今天在改了兩個地方之后,提交時輸入了兩句話(只有兩行)做為注釋,但是確定提交時失敗,說“Cannot accept non-LF line endings in 'svn:log' property”,中文翻譯就是標(biāo)題所示。

            我暈,以前都是很正常的,沒有碰到過這種情況,好像注釋多少沒有什么關(guān)系的

            把第二行的結(jié)尾處增加了一個回車,這樣有三行,第三行是空的,但提交還是一樣的錯誤,

            然后只好上網(wǎng)上查了一下,很多是英文的,找了三篇文章,其中一篇中文的解決了:每一行以空格結(jié)尾

            我刪除第三個空行,在前兩行的后面都增加了一個空格,然后就提交成功了

            這篇文章上還有人說需要以標(biāo)點(diǎn)符號做為結(jié)尾,但我試了,以“.”結(jié)尾還是無法提交

            終于發(fā)現(xiàn),很“牛”的軟件,也有這么傻瓜式的bug存在


            本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/jszj/archive/2009/05/25/4214626.aspx

            posted @ 2010-06-22 18:05 ACong 閱讀(819) | 評論 (0)編輯 收藏
            職位描述:
            你將出任團(tuán)隊(duì)的ScrumMaster角色,直接與產(chǎn)品及研發(fā)團(tuán)隊(duì)工作,計劃并保證在每一個開發(fā)沖刺中提交高商業(yè)價值的產(chǎn)品功能;
            推動每日例會,解決團(tuán)隊(duì)碰到的障礙,跟蹤團(tuán)隊(duì)進(jìn)度,持續(xù)溝通尋求產(chǎn)品和研發(fā)雙贏的解決方案;
            你還需要擔(dān)任Srum導(dǎo)師的角色,培養(yǎng)更多能推動Scrum方法的人才。

            職位要求:
            計算機(jī)相關(guān)本科或碩士學(xué)位;
            5年研發(fā)項(xiàng)目經(jīng)驗(yàn),3年項(xiàng)目管理或QA經(jīng)驗(yàn);
            有Scrum開發(fā)項(xiàng)目實(shí)戰(zhàn)經(jīng)驗(yàn),擔(dān)任過Scrum Master角色;
            熟悉feature驅(qū)動開發(fā)模式,了解配置管理,持續(xù)集成;
            出色的人際交往能力,優(yōu)秀的計劃及溝通技巧;
            有直接與產(chǎn)品部門及技術(shù)團(tuán)隊(duì)合作的經(jīng)驗(yàn);
            熟悉至少一種開發(fā)語言和一種腳本語言。

            Scrum Master

            學(xué)歷要求:本科|工作經(jīng)驗(yàn):3-5年|工作地點(diǎn):上海  |月薪:1000-50000元/月|發(fā)布日期:2009-12-10
            Job Description
            - Keep the team focused on delivering highest business value
            - Strong emphasis on teamwork and close collaboration across all roles and functions
            - Work with other Scrum Masters to coordinate and mitigate dependencies across teams
            - Ensure that projects have a clearly defined release scope and meet overall objectives, standards, quality and user needs
            - Must possess personal leadership skills, initiative, and strong attention to detail
            - Manage multiple projects simultaneously and work with outside vendors
            - Work with team, cross-team resources, and stakeholders to mitigate risks and remove barriers
            - Synchronize with non-technical teams to deliver product releases smoothly
            - Coordinate system and project dependencies for releases
            - Engage, motivate and focus the team to stay on task and on target
            - Serve as a change agent to coach and mentor team on Scrum practices
            - Guide the Product Owner on how to maximize ROI and meet their objectives through Scrum
            - Provide visibility to the organization regarding team's progress and release schedules
            Required Experience
            - Proven experience releasing software products to market successfully
            - Bachelor's Degree or equivalent experience and approximately 4-6 years related experience
            - Excellent leadership and interpersonal skills to motivate the team and interact with the various stakeholders
            - Ability to understand technical subjects
            - Strong written and verbal communication skills
            - 4-5 years project management experience
            - 2-3 years Scrum experience Highly Desirable
            - Experience with transitioning an organization to Scrum
            - Experience leading teams in the development of .Net-based software development
            - Experience with Microsoft Team Foundation Server
            - Scrum Master certification
            posted @ 2010-06-17 16:04 ACong 閱讀(436) | 評論 (0)編輯 收藏
            摘要:產(chǎn)品負(fù)責(zé)人的詳細(xì)職責(zé)包括三個主要領(lǐng)域:客戶需求,項(xiàng)目成功和團(tuán)隊(duì)合作。在Scrum中,產(chǎn)品負(fù)責(zé)人要與客戶溝通需求并理解這些需求;保證項(xiàng)目成功是產(chǎn)品負(fù)責(zé)人的第二個職責(zé);最后一條也很重要:產(chǎn)品負(fù)責(zé)人要與整個團(tuán)隊(duì)進(jìn)行溝通協(xié)作,在整個過程中與利益相關(guān)者保持一致。

            Scrum中,產(chǎn)品負(fù)責(zé)人這個角色具有很大的影響力,但要想運(yùn)用得當(dāng),可沒那么輕而易舉:如能成功應(yīng)用,就可以在客戶/產(chǎn)品管理和開發(fā)者之間建立起全新而融洽的關(guān)系,企業(yè)也將因此而受益,甚至有可能增加競爭優(yōu)勢。不過天下沒有免費(fèi)的午餐:為了發(fā)揮其作用,組織要經(jīng)常要做出有針對性的調(diào)整。這篇文章揭示了成功發(fā)揮產(chǎn)品負(fù)責(zé)人角色作用的奧秘。閱讀之后,讀者就可以明白:成功的產(chǎn)品負(fù)責(zé)人需要具備哪些素質(zhì)。

            強(qiáng)力膠

            在Scrum中,產(chǎn)品負(fù)責(zé)人扮演著重要的角色。它根本不是為老職位設(shè)置的新名稱,而是重新定義了業(yè)務(wù)和開發(fā)/IT之間的關(guān)系。需求的處理方式也在改變,不必再像過去那樣,在項(xiàng)目一開始就必須完整描述,凍結(jié)之后再轉(zhuǎn)交給開發(fā)團(tuán)隊(duì)。將管理項(xiàng)目的責(zé)任單獨(dú)指派給項(xiàng)目經(jīng)理,整個過程中沒有客戶代表的參與,這種項(xiàng)目管理的方式也變了。取而代之的是,產(chǎn)品負(fù)責(zé)人通過溝通了解客戶的需求,指導(dǎo)產(chǎn)品的發(fā)布,并根據(jù)眼前的實(shí)際情況,不斷在團(tuán)隊(duì)和項(xiàng)目干系人之間協(xié)調(diào)。可以這樣說,產(chǎn)品負(fù)責(zé)人扮演了粘合劑的角色,他需要幫助最終客戶、產(chǎn)品管理負(fù)責(zé)人、開發(fā)人員和項(xiàng)目干系人達(dá)成一致,確保大家都在朝著同一個方向前進(jìn)。

            這個角色通常是由客戶或者產(chǎn)品經(jīng)理承擔(dān)的,所以業(yè)務(wù)層面也要開始了解Scrum,并做一些必要的變化與之相適應(yīng)。雖然實(shí)際操作上有不少難度,但產(chǎn)生的結(jié)果物超所值。不僅能在業(yè)務(wù)人員和開發(fā)/IT人員之間建立起更融洽的關(guān)系,而且能給企業(yè)增加競爭優(yōu)勢:用戶需求得到順暢溝通;有專人負(fù)責(zé)版本目標(biāo)的定義和發(fā)布;決策流程得以提速;誤會和工作方向不一致的情況也得以避免。

            工作描述

            產(chǎn)品負(fù)責(zé)人的詳細(xì)職責(zé)包括三個主要領(lǐng)域:客戶需求,項(xiàng)目成功和團(tuán)隊(duì)合作。

            在Scrum中,產(chǎn)品負(fù)責(zé)人要與客戶溝通需求并理解這些需求。不妨將產(chǎn)品負(fù)責(zé)人想象成企業(yè)家:他們從業(yè)務(wù)價值的角度來制定軟件產(chǎn)品的未來發(fā)展規(guī)劃,并與別人溝通自己的想法。產(chǎn)品負(fù)責(zé)人要填寫產(chǎn)品 backlog,并根據(jù)實(shí)際情況隨時修改這些內(nèi)容:可能要增加新需求,修改已有需求,這通常都是實(shí)時性的,而且這些修改都要在下一次sprint 計劃會議之前完成。另外,產(chǎn)品負(fù)責(zé)人要對產(chǎn)品backlog上的條目排定優(yōu)先級,確保團(tuán)隊(duì)總是在處理最重要的需求。

            保證項(xiàng)目成功是產(chǎn)品負(fù)責(zé)人的第二個職責(zé)。這包括滿足項(xiàng)目目標(biāo)以及財務(wù)目標(biāo),如投資回報率(ROI)。產(chǎn)品負(fù)責(zé)人決定功能、發(fā)布時間,從使客戶滿意度最高和獲得最高ROI的角度出發(fā)安排預(yù)算。產(chǎn)品負(fù)責(zé)人還要創(chuàng)建并更新發(fā)布計劃及發(fā)布報告。

            最后一條也很重要:產(chǎn)品負(fù)責(zé)人要與整個團(tuán)隊(duì)進(jìn)行溝通協(xié)作,在整個過程中與利益相關(guān)者保持一致。產(chǎn)品負(fù)責(zé)人要和團(tuán)隊(duì)一起確認(rèn)詳細(xì)的需求。在產(chǎn)生疑問的時候,產(chǎn)品負(fù)責(zé)人解釋需求,并根據(jù)當(dāng)初就“完成”標(biāo)準(zhǔn)達(dá)成的共識對工作結(jié)果進(jìn)行評估。最后,產(chǎn)品負(fù)責(zé)人要針對sprint計劃會議做準(zhǔn)備工作。在會前需要逐步分解需求,讓會議可以順利進(jìn)行。

            擔(dān)當(dāng)產(chǎn)品負(fù)責(zé)人的角色應(yīng)該是全職工作,特別是涉及到需要大量創(chuàng)新或者很復(fù)雜的項(xiàng)目。根據(jù)項(xiàng)目的特性和規(guī)模,這項(xiàng)工作可以由最終客戶、產(chǎn)品經(jīng)理、市場人員或者客戶來擔(dān)任。

            常見陷阱

            老實(shí)說:產(chǎn)品負(fù)責(zé)人這個角色可不是那么好做的。這些年來,我見過許多產(chǎn)品負(fù)責(zé)人所犯的常見錯誤。下面這些是我想告訴大家的。

            有些組織認(rèn)為僅由一個人來擔(dān)任這個職位很困難。為解決這個問題,他們會讓多個人分擔(dān)產(chǎn)品負(fù)責(zé)人的角色,例如產(chǎn)品經(jīng)理負(fù)責(zé)用戶需求,ScrumMaster負(fù)責(zé)項(xiàng)目成功和團(tuán)隊(duì)協(xié)作。我把這個問題稱作“虛擬產(chǎn)品負(fù)責(zé)人綜合癥”。一旦陷入其中,公司將失去產(chǎn)品負(fù)責(zé)人所帶來的很多好處,而且還喪失了本可以因此變得更好的機(jī)會。多人執(zhí)行產(chǎn)品負(fù)責(zé)人的職責(zé),只適用于多個團(tuán)隊(duì)參與同一個項(xiàng)目的狀況。在這種情況下,我愿意與一組產(chǎn)品負(fù)責(zé)人工作,而且其中有一位負(fù)責(zé)整個項(xiàng)目(有時此人被稱為產(chǎn)品總負(fù)責(zé)人)。

            讓IT人員或者程序員擔(dān)任產(chǎn)品負(fù)責(zé)人,這是另外一個常見的陷阱。這意味著產(chǎn)品管理人員或者最終客戶不愿意進(jìn)行改變,不想擔(dān)當(dāng)起產(chǎn)品負(fù)責(zé)人的職責(zé)。“IT 產(chǎn)品負(fù)責(zé)人” 僅僅是技術(shù)和業(yè)務(wù)的中間人。這個角色將不再具備原本的影響力,也沒有人來理解和溝通客戶需求。業(yè)務(wù)人員和開發(fā)/IT人員不再為了合作而進(jìn)行必要的改變,關(guān)系無法得到改善。跟以前一樣,業(yè)務(wù)人員將需求交給開發(fā)部門之后就不再過問。(話雖這么說,也有特殊情況:如果是涉及多個團(tuán)隊(duì)的項(xiàng)目,其中有一個組件開發(fā)團(tuán)隊(duì),那么讓架構(gòu)師充當(dāng)這個團(tuán)隊(duì)的產(chǎn)品負(fù)責(zé)人,盯著他們的工作,這還是挺不錯的。)

            最后的問題是“蹦極產(chǎn)品負(fù)責(zé)人”(當(dāng)然,這個名字來自Dilbert漫畫):一個幾乎沒什么作用的產(chǎn)品負(fù)責(zé)人,只參加sprint計劃會議和復(fù)查會議。這類型的產(chǎn)品負(fù)責(zé)人很難主動控制和指導(dǎo)項(xiàng)目。許多沒有答案的問題只能通過ScrumMaster簡單的猜想或推測來回答。另外一些產(chǎn)品負(fù)責(zé)人還會妨礙項(xiàng)目取得進(jìn)展。無論是什么原因,工作過度還是有其他更重要的工作——不能正常發(fā)揮作用的產(chǎn)品負(fù)責(zé)人會對產(chǎn)品發(fā)布起負(fù)面作用。

            成功公式

            如何能夠避免上述陷阱,并成功發(fā)揮產(chǎn)品負(fù)責(zé)人的作用?我發(fā)現(xiàn)了三個關(guān)鍵因素:

            1. 產(chǎn)品負(fù)責(zé)人必須得到授權(quán)
            2. 擔(dān)當(dāng)該角色的那個人必須有足夠的時間完成工作
            3. 產(chǎn)品負(fù)責(zé)人必須稱職

            過去的經(jīng)驗(yàn)證明,這幾個因素非常關(guān)鍵。我發(fā)現(xiàn):一個被授權(quán)的、能夠全心投入的、稱職的產(chǎn)品負(fù)責(zé)人,和Scrum項(xiàng)目的健康和成功之間,有著密不可分的關(guān)系。

            “授權(quán)” 的意思是指:產(chǎn)品負(fù)責(zé)人有權(quán)力做決定,能為決定所產(chǎn)生的結(jié)果負(fù)責(zé)。這要求產(chǎn)品負(fù)責(zé)人能夠快速做出相關(guān)決定,不需每次都要得到管理層的批準(zhǔn)。我常常遇到這樣一些公司,他們低估產(chǎn)品負(fù)責(zé)人的重要性,因此而使得產(chǎn)品負(fù)責(zé)人得不到足夠的授權(quán)。如果產(chǎn)品負(fù)責(zé)人被任命領(lǐng)導(dǎo)重要的項(xiàng)目,那么高層管理人員應(yīng)該為其提供直接支持。另外,產(chǎn)品負(fù)責(zé)人應(yīng)該積極參與到發(fā)布目標(biāo)的設(shè)定中,這樣他就會完全負(fù)起達(dá)成目標(biāo)的責(zé)任。

            “缺乏參與” 最后將影響到項(xiàng)目的產(chǎn)出效率。必要的準(zhǔn)備工作無法完成,決策延遲。正如前面提到過的,“蹦極產(chǎn)品負(fù)責(zé)人”只參加sprint計劃會議和復(fù)查會議,因此很難迅速、全面地解決項(xiàng)目中出現(xiàn)的問題。他們無法與團(tuán)隊(duì)形成持續(xù)的協(xié)作,導(dǎo)致自己控制和指導(dǎo)項(xiàng)目的能力被削弱。

            “稱職”包括兩個意思:完全了解客戶的需求,具備敏捷和Scrum的實(shí)用知識。第二點(diǎn)包括能夠?qū)嵭邢嚓P(guān)的實(shí)踐,例如準(zhǔn)確填寫和修改產(chǎn)品的backlog,或以用戶故事的形式描述需求。在Scrum里,產(chǎn)品負(fù)責(zé)人需要接受適當(dāng)?shù)呐嘤?xùn),這樣他們才能很好地完成工作,就像ScrumMaster一樣。一般說來,將 “Scrum認(rèn)證產(chǎn)品負(fù)責(zé)人™”課程和上崗培訓(xùn)/指導(dǎo)結(jié)合起來,會產(chǎn)生最好的效果。

            為了讓產(chǎn)品負(fù)責(zé)人順利發(fā)揮作用,你可以試試下面的方法:保證管理層都了解這個角色的重要性,并小心選擇產(chǎn)品負(fù)責(zé)人的人選。此外,還可以讓這個人投入盡量多的時間以勝任該職位,并遠(yuǎn)離其它工作的干擾。最后,要從長遠(yuǎn)發(fā)展的角度出發(fā):培養(yǎng)產(chǎn)品負(fù)責(zé)人——要注意培養(yǎng)現(xiàn)有的員工,讓他們準(zhǔn)備好擔(dān)任產(chǎn)品負(fù)責(zé)人的角色。這要求建立起內(nèi)部的培訓(xùn)和指導(dǎo)能力。

            陳年舊聞

            產(chǎn)品負(fù)責(zé)人能夠?yàn)榻M織帶來很好的作用,當(dāng)想做好卻不容易。要培養(yǎng)員工成為好的產(chǎn)品負(fù)責(zé)人同樣面臨不少困難。有意思的是,豐田、本田以及其他一些精益企業(yè),在很長時間內(nèi)成功實(shí)施了產(chǎn)品負(fù)責(zé)人的機(jī)制。事實(shí)上,這種機(jī)制在豐田已經(jīng)實(shí)施了差不多一個世紀(jì)。豐田公司的產(chǎn)品負(fù)責(zé)人被稱作“首席工程師”,只有為人稱道的資深工程師才能擔(dān)任這個職位。首席工程師承擔(dān)了產(chǎn)品負(fù)責(zé)人職責(zé)中的一大部分,同時還要承擔(dān)首席架構(gòu)師在開發(fā)項(xiàng)目中的工作。雖然首席工程師的工作要比 Scrum中產(chǎn)品負(fù)責(zé)人更有難度,豐田仍然成功實(shí)施了這個角色,并讓它成為了強(qiáng)大的精益系統(tǒng)中的基石。豐田的例子說明,如果企業(yè)愿意作出必要的改變,產(chǎn)品負(fù)責(zé)人能夠增強(qiáng)企業(yè)的競爭優(yōu)勢。

            總結(jié)

            毫無疑問:要發(fā)揮產(chǎn)品負(fù)責(zé)人角色的作用非常困難,但是適當(dāng)?shù)膽?yīng)用是成功Scrum的必要因素。削弱這個角色的權(quán)力也許可以讓其更容易發(fā)揮作用,可是帶來的好處也因此而減少了,所以要抵抗改造這個角色的誘惑。相反,要利用發(fā)現(xiàn)的問題和障礙,使之驅(qū)動組織進(jìn)行必要的調(diào)整,這將對整個企業(yè)起到改善作用。企業(yè)可以利用這個角色來增強(qiáng)競爭優(yōu)勢。做出必要的改變是很艱難的工作,也需要花費(fèi)一些時間。不幸的是,我沒有發(fā)現(xiàn)Scrum有什么神奇的魔力可以讓變化輕而易舉地發(fā)生。如果我找到了,一定會讓你們知道。我保證。

            posted @ 2010-06-13 16:18 ACong 閱讀(231) | 評論 (0)編輯 收藏
                       討論Web開發(fā)技術(shù)的歷史,當(dāng)然要先說說Web的起源。眾所周知,Web這個Internet上最熱門的應(yīng)用架構(gòu)是由Tim Berners-Lee發(fā)明的。Web的前身是1980年Tim Berners-Lee負(fù)責(zé)的Enquire(Enquire Within Upon Everything的簡稱)項(xiàng)目。1990年11月,第一個Web服務(wù)器nxoc01.cern.ch開始運(yùn)行,Tim Berners-Lee在自己編寫的圖形化Web瀏覽器"WorldWideWeb"上看到了最早的Web頁面。1991年,CERN(European Particle Physics Laboratory)正式發(fā)布了Web技術(shù)標(biāo)準(zhǔn)。目前,與Web相關(guān)的各種技術(shù)標(biāo)準(zhǔn)都由著名的W3C組織(World Wide Web Consortium)管理和維護(hù)。

               從技術(shù)層面看,Web架構(gòu)的精華有三處:用超文本技術(shù)(HTML)實(shí)現(xiàn)信息與信息的連接;用統(tǒng)一資源定位技術(shù)(URI)實(shí)現(xiàn)全球信息的精確定位;用新的應(yīng)用層協(xié)議(HTTP)實(shí)現(xiàn)分布式的信息共享。這三個特點(diǎn)無一不與信息的分發(fā)、獲取和利用有關(guān)。其實(shí),Tim Berners-Lee早就明確無誤地告訴我們:"Web是一個抽象的(假想的)信息空間。"也就是說,作為Internet上的一種應(yīng)用架構(gòu),Web的首要任務(wù)就是向人們提供信息和信息服務(wù)。

               很可惜,在Web應(yīng)用日新月異的今天,許多搞技術(shù)的人似乎已經(jīng)忘記了Web架構(gòu)的設(shè)計初衷。他們在自己開發(fā)的網(wǎng)站或Web應(yīng)用中大肆堆砌各種所謂的"先進(jìn)"技術(shù),但最終用戶能夠在這些網(wǎng)站或應(yīng)用中獲得的有價值信息卻寥寥無幾。這個問題絕不像評論者常說的"有路無車"或"信息匱乏"那么簡單。一個Web開發(fā)者倘若忘記了Web技術(shù)的最終目標(biāo)是提供信息和信息服務(wù),他的愚蠢程度就絲毫不亞于一個在足球場上只知道賣弄技巧,卻忘記了射門得分的大牌球星。從這個角度來說,評價一種Web開發(fā)技術(shù)優(yōu)劣的標(biāo)準(zhǔn)只有一個,那就是看這種技術(shù)能否在最恰當(dāng)?shù)臅r間和最恰當(dāng)?shù)牡攸c(diǎn),以最恰當(dāng)?shù)姆绞剑瑸樽钚枰畔⒌娜颂峁┳钋‘?dāng)?shù)男畔⒎?wù)。

              客戶端技術(shù)的萌芽和演進(jìn)

               Web是一種典型的分布式應(yīng)用架構(gòu)。Web應(yīng)用中的每一次信息交換都要涉及到客戶端和服務(wù)端兩個層面。因此,Web開發(fā)技術(shù)大體上也可以被分為客戶端技術(shù)和服務(wù)端技術(shù)兩大類。我們先來談?wù)効蛻舳思夹g(shù)的萌芽和演進(jìn)過程。

               Web客戶端的主要任務(wù)是展現(xiàn)信息內(nèi)容,而HTML語言則是信息展現(xiàn)的最有效載體之一。作為一種實(shí)用的超文本語言,HTML的歷史最早可以追溯到上世紀(jì)四十年代。1945年,Vannevar Bush在一篇文章中闡述了文本和文本之間通過超級鏈接相互關(guān)聯(lián)的思想,并在文中給出了一種能實(shí)現(xiàn)信息關(guān)聯(lián)的計算機(jī)Memex的設(shè)計方案。Doug Engelbart等人則在1960年前后,對信息關(guān)聯(lián)技術(shù)做了最早的實(shí)驗(yàn)。與此同時,Ted Nelson正式將這種信息關(guān)聯(lián)技術(shù)命名為超文本(Hypertext)技術(shù)。1969年,IBM的Charles Goldfarb發(fā)明了可用于描述超文本信息的GML(Generalized Markup Language)語言。1978到1986年間,在ANSI等組織的努力下,GML語言進(jìn)一步發(fā)展成為著名的SGML語言標(biāo)準(zhǔn)。當(dāng)Tim Berners-Lee和他的同事們在1989年試圖創(chuàng)建一個基于超文本的分布式應(yīng)用系統(tǒng)時,Tim Berners-Lee意識到,SGML是描述超文本信息的一個上佳方案,但美中不足的是,SGML過于復(fù)雜,不利于信息的傳遞和解析。于是,Tim Berners-Lee對SGML語言做了大刀闊斧的簡化和完善。1990年,第一個圖形化的Web瀏覽器"WorldWideWeb"終于可以使用一種為Web度身定制的語言--HTML來展現(xiàn)超文本信息了。

               最初的HTML語言只能在瀏覽器中展現(xiàn)靜態(tài)的文本或圖像信息,這滿足不了人們對信息豐富性和多樣性的強(qiáng)烈需求--這件事情最終的結(jié)果是,由靜態(tài)技術(shù)向動態(tài)技術(shù)的轉(zhuǎn)變成為了Web客戶端技術(shù)演進(jìn)的永恒定律。

               能存儲、展現(xiàn)二維動畫的GIF圖像格式早在1989年就已發(fā)展成熟。Web出現(xiàn)后,GIF第一次為HTML頁面引入了動感元素。但更大的變革來源于1995年Java語言的問世。Java語言天生就具備的平臺無關(guān)的特點(diǎn),讓人們一下子找到了在瀏覽器中開發(fā)動態(tài)應(yīng)用的捷徑。1996年,著名的Netscape瀏覽器在其2.0版中增加了對JavaApplets和JavaScript的支持。Netscape的冤家對頭,Microsoft的IE 3.0也在這一年開始支持Java技術(shù)。現(xiàn)在,喜歡動畫、喜歡交互操作、喜歡客戶端應(yīng)用的開發(fā)人員可以用Java或JavaScript語言隨心所欲地豐富HTML頁面的功能了。順便說一句,JavaScript語言在所有客戶端開發(fā)技術(shù)中占有非常獨(dú)特的地位:它是一種以腳本方式運(yùn)行的,簡化了的Java語言,這也是腳本技術(shù)第一次在Web世界里嶄露頭角。為了用純Microsoft的技術(shù)與JavaScript抗衡,Microsoft還為1996年的IE 3.0設(shè)計了另一種后來也聲名顯赫的腳本語言--VBScript語言。

               真正讓HTML頁面又酷又炫、動感無限的是CSS(Cascading Style Sheets)和DHTML(Dynamic HTML)技術(shù)。1996年底,W3C提出了CSS的建議標(biāo)準(zhǔn),同年,IE 3.0引入了對CSS的支持。CSS大大提高了開發(fā)者對信息展現(xiàn)格式的控制能力。1997年的Netscape 4.0不但支持CSS,而且增加了許多Netscape公司自定義的動態(tài)HTML標(biāo)記,這些標(biāo)記在CSS的基礎(chǔ)上,讓HTML頁面中的各種要素"活動"了起來。1997年,Microsoft發(fā)布了IE 4.0,并將動態(tài)HTML標(biāo)記、CSS和動態(tài)對象模型(DHTML Object Model)發(fā)展成了一套完整、實(shí)用、高效的客戶端開發(fā)技術(shù)體系,Microsoft稱其為DHTML。同樣是實(shí)現(xiàn)HTML頁面的動態(tài)效果,DHTML技術(shù)無需啟動Java虛擬機(jī)或其他腳本環(huán)境,可以在瀏覽器的支持下,獲得更好的展現(xiàn)效果和更高的執(zhí)行效率。今天,已經(jīng)很少有哪個HTML頁面的開發(fā)者還會對CSS和DHTML技術(shù)視而不見了。

               為了在HTML頁面中實(shí)現(xiàn)音頻、視頻等更為復(fù)雜的多媒體應(yīng)用,1996年的Netscape 2.0成功地引入了對QuickTime插件的支持,插件這種開發(fā)方式也迅速風(fēng)靡了瀏覽器的世界。在Windows平臺上,Microsoft將客戶端應(yīng)用集成的賭注押到了1990年代中期剛剛問世的COM和ActiveX身上。1996年,IE 3.0正式支持在HTML頁面中插入ActiveX控件的功能,這為其他廠商擴(kuò)展Web客戶端的信息展現(xiàn)方式開辟了一條自由之路。1999年,Realplayer插件先后在Netscape和IE瀏覽器中取得了成功,與此同時,Microsoft自己的媒體播放插件Media Player也被預(yù)裝到了各種Windows版本之中。同樣值得紀(jì)念的還有Flash插件的橫空出世:1990年代初期,Jonathan Gay在FutureWave公司開發(fā)了一種名為Future Splash Animator的二維矢量動畫展示工具,1996年,Macromedia公司收購了FutureWave,并將Jonathan Gay的發(fā)明改名為我們熟悉的Flash。從此,F(xiàn)lash動畫成了Web開發(fā)者表現(xiàn)自我、展示個性的最佳方式。

               除了編寫HTML頁面之外,客戶端應(yīng)用的開發(fā)者還可以利用一些成熟的技術(shù)將瀏覽器的功能添加到自己的應(yīng)用程序中。從1992年開始,W3C就免費(fèi)向開發(fā)者提供libwww開發(fā)庫。借助libwww,我們可以自己編寫Web瀏覽器和Web搜索工具,也可以分析、編輯或顯示HTML頁面。1999年,Microsoft在IE 5.0中引入的HTAs(HTML Applications)技術(shù)則允許我們直接將HTML頁面轉(zhuǎn)換為一個真正的應(yīng)用程序。從1997年的IE 4.0開始,Microsoft為開發(fā)者提供了WebBrowser控件和其他相關(guān)的COM接口,允許程序員在自己的程序中直接嵌入瀏覽器窗口,或調(diào)用各種瀏覽器的功能,如分析或編輯HTML頁面等。Windows 98及其后的Windows操作系統(tǒng)甚至還利用WSH(Windows Script Host)技術(shù)將原本只在瀏覽器中運(yùn)行的JavaScript、VBScript變成了可以在WIN32環(huán)境下使用的通用腳本語言,這大概也可算作我們對Web客戶端開發(fā)技術(shù)的一種巧妙利用吧。

              服務(wù)端技術(shù)的成熟與發(fā)展

               與客戶端技術(shù)從靜態(tài)向動態(tài)的演進(jìn)過程類似,Web服務(wù)端的開發(fā)技術(shù)也是由靜態(tài)向動態(tài)逐漸發(fā)展、完善起來的。

               最早的Web服務(wù)器簡單地響應(yīng)瀏覽器發(fā)來的HTTP請求,并將存儲在服務(wù)器上的HTML文件返回給瀏覽器。一種名為SSI(Server Side Includes)的技術(shù)可以讓W(xué)eb服務(wù)器在返回HTML文件前,更新HTML文件的某些內(nèi)容,但其功能非常有限。第一種真正使服務(wù)器能根據(jù)運(yùn)行時的具體情況,動態(tài)生成HTML頁面的技術(shù)是大名鼎鼎的CGI(Common Gateway Interface)技術(shù)。1993年,CGI 1.0的標(biāo)準(zhǔn)草案由NCSA(National Center for Supercomputing Applications)提出,1995年,NCSA開始制定CGI 1.1標(biāo)準(zhǔn),1997年,CGI 1.2也被納入了議事日程。CGI技術(shù)允許服務(wù)端的應(yīng)用程序根據(jù)客戶端的請求,動態(tài)生成HTML頁面,這使客戶端和服務(wù)端的動態(tài)信息交換成為了可能。隨著CGI技術(shù)的普及,聊天室、論壇、電子商務(wù)、信息查詢、全文檢索等各式各樣的Web應(yīng)用蓬勃興起,人們終于可以享受到信息檢索、信息交換、信息處理等更為便捷的信息服務(wù)了。

               早期的CGI程序大多是編譯后的可執(zhí)行程序,其編程語言可以是C、C++、Pascal等任何通用的程序設(shè)計語言。為了簡化CGI程序的修改、編譯和發(fā)布過程,人們開始探尋用腳本語言實(shí)現(xiàn)CGI應(yīng)用的可行方式。在此方面,不能不提的是Larry Wall于1987年發(fā)明的Perl語言。Perl結(jié)合了C語言的高效以及sh、awk等腳本語言的便捷,似乎天生就適用于CGI程序的編寫。1995年,第一個用Perl寫成的CGI程序問世。很快,Perl在CGI編程領(lǐng)域的風(fēng)頭就蓋過了它的前輩C語言。隨后,Python等著名的腳本語言也陸續(xù)加入了CGI編程語言的行列。

               1994年,Rasmus Lerdorf發(fā)明了專用于Web服務(wù)端編程的PHP(Personal Home Page Tools)語言。與以往的CGI程序不同,PHP語言將HTML代碼和PHP指令合成為完整的服務(wù)端動態(tài)頁面,Web應(yīng)用的開發(fā)者可以用一種更加簡便、快捷的方式實(shí)現(xiàn)動態(tài)Web功能。1996年,Microsoft借鑒PHP的思想,在其Web服務(wù)器IIS 3.0中引入了ASP技術(shù)。ASP使用的腳本語言是我們熟悉的VBScript和JavaScript。借助Microsoft Visual Studio等開發(fā)工具在市場上的成功,ASP迅速成為了Windows系統(tǒng)下Web服務(wù)端的主流開發(fā)技術(shù)。當(dāng)然,以Sun公司為首的Java陣營也不會示弱。1997年,Servlet技術(shù)問世,1998年,JSP技術(shù)誕生。Servlet和JSP的組合(還可以加上JavaBean技術(shù))讓Java開發(fā)者同時擁有了類似CGI程序的集中處理功能和類似PHP的HTML嵌入功能,此外,Java的運(yùn)行時編譯技術(shù)也大大提高了Servlet和JSP的執(zhí)行效率--這也正是Servlet和JSP被后來的J2EE平臺吸納為核心技術(shù)的原因之一。

              兩種重要的企業(yè)開發(fā)平臺

               Web服務(wù)端開發(fā)技術(shù)的完善使開發(fā)復(fù)雜的Web應(yīng)用成為了可能。在此起彼伏的電子商務(wù)大潮中,為了適應(yīng)企業(yè)級應(yīng)用開發(fā)的各種復(fù)雜需求,為了給最終用戶提供更可靠、更完善的信息服務(wù),兩個最重要的企業(yè)級開發(fā)平臺--J2EE和.NET在2000年前后分別誕生于Java和Windows陣營,它們隨即就在企業(yè)級Web開發(fā)領(lǐng)域展開了你死我活的拼爭。平臺之爭讓整個Web世界在最近的幾年里不得安寧,但從某種意義上說,也正是這種針鋒相對的競爭關(guān)系促使了Web開發(fā)技術(shù)以前所未有的速度提高和躍進(jìn)。

               J2EE是純粹基于Java的解決方案。1998年,Sun發(fā)布了EJB 1.0標(biāo)準(zhǔn)。EJB為企業(yè)級應(yīng)用中必不可少的數(shù)據(jù)封裝、事務(wù)處理、交易控制等功能提供了良好的技術(shù)基礎(chǔ)。至此,J2EE平臺的三大核心技術(shù)Servlet、JSP和EJB都已先后問世。1999年,Sun正式發(fā)布了J2EE的第一個版本。緊接著,遵循J2EE標(biāo)準(zhǔn),為企業(yè)級應(yīng)用提供支撐平臺的各類應(yīng)用服務(wù)軟件爭先恐后地涌現(xiàn)了出來。IBM的WebSphere、BEA的WebLogic都是這一領(lǐng)域里最為成功的商業(yè)軟件平臺。隨著開源運(yùn)動的興起,JBoss等開源世界里的應(yīng)用服務(wù)新秀也吸引了許多用戶的注意力。到2003年時,Sun的J2EE版本已經(jīng)升級到了1.4版,其中三個關(guān)鍵組件的版本也演進(jìn)到了Servlet 2.4、JSP 2.0和EJB 2.1。至此,J2EE體系及相關(guān)的軟件產(chǎn)品已經(jīng)成為了Web服務(wù)端開發(fā)的一個強(qiáng)有力的支撐環(huán)境。

               和J2EE不同的是,Microsoft的.NET平臺是一個強(qiáng)調(diào)多語言間交互的通用運(yùn)行環(huán)境。盡管.NET的設(shè)計者試圖以.NET平臺作為絕大多數(shù)Windows應(yīng)用的首選運(yùn)行環(huán)境,但.NET首先吸引的卻是Web開發(fā)者的目光。2001年,ECMA通過了Microsoft提交的C#語言和CLI標(biāo)準(zhǔn),這兩個技術(shù)標(biāo)準(zhǔn)構(gòu)成了.NET平臺的基石,它們也于2003年成為了ISO的國際標(biāo)準(zhǔn)。2002年,Microsoft正式發(fā)布.NET Framework和Visual Studio .NET開發(fā)環(huán)境。早在.NET發(fā)布之前,就已經(jīng)有許多Windows平臺的Web開發(fā)者迫不及待地利用Beta版本開發(fā)Web應(yīng)用了。這大概是因?yàn)椋?NET平臺及相關(guān)的開發(fā)環(huán)境不但為Web服務(wù)端應(yīng)用提供了一個支持多種語言的、通用的運(yùn)行平臺,而且還引入了ASP.NET這樣一種全新的Web開發(fā)技術(shù)。ASP.NET超越了ASP的局限,可以使用VB.NET、C#等編譯型語言,支持Web Form、.NET Server Control、ADO.NET等高級特性。客觀地講,.NET平臺,尤其是.NET平臺中的ASP.NET的確不失為Web開發(fā)技術(shù)在Windows平臺上的一個集大成者。

              XML語言及相關(guān)技術(shù)

               如果說HTML語言給Web世界賦予了無限生機(jī)的話,那么,XML語言的出現(xiàn)大概就可以算成是Web的一次新生了。按照Tim Berners-Lee的說法,Web是一個"信息空間"。HTML語言具有較強(qiáng)的表現(xiàn)力,但也存在結(jié)構(gòu)過于靈活、語法不規(guī)范的弱點(diǎn)。當(dāng)信息都以HTML語言的面貌出現(xiàn)時,Web這個信息空間是雜亂無章、沒有秩序的。為了讓W(xué)eb世界里的所有信息都有章可循、有法可依,我們需要一種更為規(guī)范、更能夠體現(xiàn)信息特點(diǎn)的語言。

               1996年,W3C在SGML語言的基礎(chǔ)上,提出了XML(Extensible Markup Language)語言草案。1998年,W3C正式發(fā)布了XML 1.0標(biāo)準(zhǔn)。XML語言對信息的格式和表達(dá)方法做了最大程度的規(guī)范,應(yīng)用軟件可以按照統(tǒng)一的方式處理所有XML信息。這樣一來,信息在整個Web世界里的共享和交換就有了技術(shù)上的保障。HTML語言關(guān)心的是信息的表現(xiàn)形式,而XML語言關(guān)心的是信息本身的格式和數(shù)據(jù)內(nèi)容。從這個意義上說,XML語言不但可以將客戶端的信息展現(xiàn)技術(shù)提高到一個新的層次,而且可以顯著提高服務(wù)端的信息獲取、生成、發(fā)布和共享能力。為了將XML信息轉(zhuǎn)換為HTML等不同的信息展現(xiàn)形式,1999年,W3C制定出了XSLT標(biāo)準(zhǔn)。同一年,IE 5.0增加了對XML和XSLT的支持。

               現(xiàn)在,網(wǎng)站的開發(fā)者可以直接使用XML語言發(fā)布信息了。針對不同的應(yīng)用領(lǐng)域,人們還制定了許多專門的XML規(guī)范。例如,2001年W3C發(fā)布的SVG(Scalable Vector Graphics)1.0標(biāo)準(zhǔn)就是一種用XML語言表達(dá)的、全新的二維矢量圖形格式。開發(fā)者可以用SVG格式描述大多數(shù)已有的Flash動畫。與Flash格式相比,符合XML標(biāo)準(zhǔn)的SVG格式顯然更有利于信息交換和共享。

               Web本身就是一個最大的分布式應(yīng)用系統(tǒng)。對于分布式開發(fā)而言,XML技術(shù)也大有用武之地。一個明顯的事實(shí)是,如果能讓分布式應(yīng)用借助XML格式交換信息,那么,以往橫亙在分布式架構(gòu)上的信息交換難題也就迎刃而解了。1999年,W3C和相關(guān)的企業(yè)開始討論設(shè)計基于XML的通信協(xié)議,2000年,W3C發(fā)布SOAP(Simple Object Access Protocol)協(xié)議的1.1版。人們把利用SOAP協(xié)議傳遞XML信息的分布式應(yīng)用模型稱為Web Service。2001年,W3C發(fā)布了WSDL(Web Services Description Language)協(xié)議的1.1版。SOAP協(xié)議和WSDL協(xié)議共同構(gòu)成了Web Service的基礎(chǔ)。隨后,J2EE和.NET這兩大企業(yè)級開發(fā)平臺先后實(shí)現(xiàn)了Web Service,并將其視為平臺的一項(xiàng)核心功能。

               Web Service對于Web開發(fā)者的重要意義在于,當(dāng)我們需要在不同的服務(wù)端、不同的客戶端乃至不同的應(yīng)用類型、不同的計算設(shè)備之間傳遞信息的時候,以往的分布式開發(fā)技術(shù)或者因?yàn)檫m應(yīng)性不強(qiáng),或者因?yàn)閿U(kuò)展能力不足,都難以滿足現(xiàn)代Web開發(fā)的需要,而Web Service正好填補(bǔ)了這一空白。

              Web開發(fā)框架和應(yīng)用模型

               2000年以后,隨著Web應(yīng)用的日益復(fù)雜,人們逐漸意識到,單純依靠某種技術(shù)多半無法達(dá)到快速開發(fā)、快速驗(yàn)證和快速部署的最佳境界。研究者開始嘗試著將已有的Web開發(fā)技術(shù)綜合起來,形成完整的開發(fā)框架或應(yīng)用模型,并以此來滿足各種復(fù)雜的應(yīng)用需求。

               Microsoft在客戶端的技術(shù)集成方面走在了最前面。1998年時Microsoft推出的Windows 98就可以在桌面上集成Web頁面,這實(shí)際上是將資源管理器和Web瀏覽器的功能有效地結(jié)合了起來。2000年后,Microsoft陸續(xù)推出了MSN Explorer和與之相關(guān)的MSN在線服務(wù)。這一應(yīng)用模型將Web瀏覽、視頻點(diǎn)播、郵件處理、網(wǎng)上游戲、在線聊天等許多種用戶常用的Web功能集成在了一個統(tǒng)一的界面中。從信息利用的角度看,MSN試圖讓用戶在一個最舒適的環(huán)境中獲取足夠的信息,這種努力的確值得人們稱道。另一個與客戶端技術(shù)集成相關(guān)的例子是搜索引擎Google在2003年展示給大家的Google工具欄功能。雖然Google工具欄有炒作和廣告的嫌疑,但安裝Google工具欄之后的IE瀏覽器將信息瀏覽和信息檢索有機(jī)地結(jié)合了起來,這種小小的功能改進(jìn)確實(shí)是對用戶的體貼和幫助。

               在Web服務(wù)端,2000年以后出現(xiàn)了幾種主要的技術(shù)融合方式。首先,越來越多的Web開發(fā)環(huán)境開始支持MVC(Model-View-Contorller)的設(shè)計模型,為開發(fā)者提供了全套的開發(fā)框架。實(shí)際上,J2EE和.NET平臺本身就是這種開發(fā)框架的典型代表。其次,門戶服務(wù)(Portal Server)和Web內(nèi)容管理(Web Content Management)在最近幾年里成為了應(yīng)用集成的重點(diǎn)模型。這兩種應(yīng)用模型可以直接為開發(fā)者或最終用戶提供構(gòu)建Web應(yīng)用的高級平臺,可以讓W(xué)eb開發(fā)和信息發(fā)布工作大為簡化。在商業(yè)軟件領(lǐng)域,這一類應(yīng)用的例子包括Microsoft的SharePoint、IBM的WebSphere Portal、FileNet的Web Content Manager等等。開源項(xiàng)目在Web開發(fā)框架和應(yīng)用模型方面表現(xiàn)得非常積極,Struts、Jetspeed、jPortlet、Cocoon、Lenya、XOOPS等都是開源世界里與MVC開發(fā)框架、門戶服務(wù)和Web內(nèi)容管理相關(guān)的優(yōu)秀解決方案。

               當(dāng)然,技術(shù)集成絕不等于技術(shù)堆砌。一些Web站點(diǎn)和Web應(yīng)用的開發(fā)者把XML語言、MVC框架等時髦技術(shù)拼湊起來,卻不管它們是否能適應(yīng)具體的應(yīng)用環(huán)境,結(jié)果,他們的系統(tǒng)要么運(yùn)行效率低下,要么功能殘缺不全。反之,一個值得注意的事實(shí)是,像新浪、搜狐或網(wǎng)易這樣的門戶網(wǎng)站,在他們的信息發(fā)布頁面(如新聞頁面)里,盡管信息內(nèi)容時刻都在刷新,但Web服務(wù)器上存放的始終都是靜態(tài)的HTML頁面。這種"落后技術(shù)"的優(yōu)點(diǎn)是,在大量并發(fā)訪問的情況下,門戶網(wǎng)站的響應(yīng)速度仍然很快。深入到技術(shù)層面,我們通常會驚訝地發(fā)現(xiàn),這些網(wǎng)站使用的大多是自行研發(fā)的Web內(nèi)容管理系統(tǒng)。當(dāng)網(wǎng)站的內(nèi)容編輯提交新的信息時,系統(tǒng)會自動將信息轉(zhuǎn)換為HTML格式,發(fā)布到Web服務(wù)器集群的每一個結(jié)點(diǎn)上。在新浪網(wǎng)的一個角落里,我們可以找到"新浪網(wǎng)站發(fā)布系統(tǒng)"的研發(fā)歷程:

              V 1.0(1997):基于文件的版本,實(shí)現(xiàn)新聞首頁、正文和專題的發(fā)布。
              V 1.1(1998/12):采用數(shù)據(jù)庫后臺、實(shí)現(xiàn)跨服務(wù)器發(fā)布,自動化程度高。
              V 2.0(1999/3):創(chuàng)立模版和域的全新概念,奠定了該系列的基本設(shè)計思路。
              V 2.1(1999/9):增加周邊模塊,如搜索、自動采集。
              V 3.0(2000/1):優(yōu)化傳輸方式,增加相關(guān)新聞和評論。
              V 3C(2000/6):V3.0的編譯版,也是商業(yè)版的原型。
              V 3.1(2000/7):優(yōu)化數(shù)據(jù)庫結(jié)構(gòu),采用內(nèi)存CACHE大幅提速,增加了集中監(jiān)控功能。
              V 3.1C(2000/8):商業(yè)用測試版本。
              V 3.2(正在制作中):重點(diǎn)解決備份系統(tǒng)的自動化切換,在機(jī)制上實(shí)現(xiàn)永不宕機(jī)。

              這一份有趣的歷史記錄再一次印證了我關(guān)于Web開發(fā)技術(shù)的基本觀點(diǎn):一種技術(shù)只要能為用戶提供高水平的信息服務(wù),它就是最好、最先進(jìn)的技術(shù)。

               Web開發(fā)技術(shù)的未來

              所有人都在關(guān)心Web的發(fā)展前景,所有人都想知道十年以后的Web會長成什么樣子。要回答這些問題,沒有誰比W3C更有權(quán)威了。W3C明確地告訴我們,Web的未來是語義化的Web(Semantic Web)。今天的Web可以自如地生成、傳遞和展現(xiàn)各式各樣的信息,但它還只是一個信息的"容器",很難揭示出信息本身的內(nèi)容和特性。與此相對的是,未來的語義化Web是一種懂得信息內(nèi)容的Web,是真正的"信息管理員"。

              從技術(shù)角度看,XML語言統(tǒng)一了信息的表達(dá)方式,但這離揭示信息內(nèi)容的目標(biāo)還相距甚遠(yuǎn)。1998年,W3C和一些研究機(jī)構(gòu)開始對元數(shù)據(jù)(Metadata)進(jìn)行研究。元數(shù)據(jù)是描述數(shù)據(jù)的數(shù)據(jù),可以揭示信息的內(nèi)容特性。1999年,NetScape提出的RSS(Rich Site Summary)建議標(biāo)準(zhǔn)是用元數(shù)據(jù)技術(shù)描述新聞等信息內(nèi)容的第一次嘗試。1999年,W3C的研究小組提出了RDF(Resource Description Framework)標(biāo)準(zhǔn)草案。RDF在XML語法的基礎(chǔ)上,規(guī)定了元數(shù)據(jù)的存儲結(jié)構(gòu)和相關(guān)的技術(shù)標(biāo)準(zhǔn)。使用RDF語言,我們可以用統(tǒng)一的、可交換的格式揭示出信息本身的各種特性。2001年,W3C又開始著手制定OWL(OWL Web Ontology Language)標(biāo)準(zhǔn)。OWL語言也是一種符合XML標(biāo)準(zhǔn)的語言,它比RDF又前進(jìn)了一步,可以更加深入、細(xì)致地描述信息內(nèi)容。在RDF和OWL語言的幫助下,我們能讓W(xué)eb上的信息內(nèi)容變得更容易理解、更便于交換和共享。2003年,W3C成立了語義化Web Service研究小組(Semantic Web Services Interest Group),研究在Web Service中加入語義技術(shù)的相關(guān)問題。2004年2月,W3C宣布RDF和OWL標(biāo)準(zhǔn)正式成為W3C的建議方案,這標(biāo)志著語義化Web的大廈已經(jīng)破土動工。

              隨著語義化Web的誕生和發(fā)展,Web開發(fā)技術(shù)也必將經(jīng)歷更為重大的變革。可以預(yù)見的是,在未來的幾年里,還會有許多新的開發(fā)技術(shù)或開發(fā)平臺出現(xiàn)。從靜態(tài)技術(shù)到動態(tài)技術(shù),從開發(fā)平臺到應(yīng)用模型,從傳統(tǒng)Web到語義化Web……為了讓更多的人獲得更有價值的信息服務(wù),Web開發(fā)者們也許還會經(jīng)歷一次又一次的技術(shù)浪潮,還會面臨更為嚴(yán)峻的技術(shù)挑戰(zhàn),但這和信息共享的最高目標(biāo)相比,又算得了什么呢?
            posted @ 2010-06-12 16:50 ACong 閱讀(245) | 評論 (0)編輯 收藏
            所謂的流星閃過,留下一堆影子,其實(shí)就是一系列同樣的星星次第爆發(fā)而已。
            posted @ 2010-06-11 17:47 ACong 閱讀(194) | 評論 (0)編輯 收藏

            筆記本裝的系統(tǒng)是Win 7,很煩人。
            一段時間沒用筆記本上面的Flash CS4和Flash Builder 4,今天上的時候發(fā)現(xiàn)提示說Licensing for this product has expired,然后兩個都要求輸入序列號了,而且FB4輸入啥序列號都不行,懷疑是我的版本Out了一時沒找到序列號,要么就下載個最新的,要么就下載回FB3,于是重新下載FB3,但是要等很久,于是趁此機(jī)會重新找找看能否找到FB4的序列號解決這個問題。

            回顧之前解決CS4這個問題的方法是:

            要先往 C:\WINDOWS\system32\drivers\etc\Hosts 中最后面添加
            127.0.0.1 localhost
            127.0.0.1 activate.adobe.com
            127.0.0.1 practivate.adobe.com
            127.0.0.1 ereg.adobe.com
            127.0.0.1 activate.wip3.adobe.com
            127.0.0.1 wip3.adobe.com
            127.0.0.1 3dns-3.adobe.com
            127.0.0.1 3dns-2.adobe.com
            127.0.0.1 adobe-dns.adobe.com
            127.0.0.1 adobe-dns-2.adobe.com
            127.0.0.1 adobe-dns-3.adobe.com
            127.0.0.1 ereg.wip3.adobe.com
            127.0.0.1 activate-sea.adobe.com
            127.0.0.1 wwis-dubc1-vip60.adobe.com
            127.0.0.1 activate-sjc0.adobe.com
            ::1 localhost


            然后運(yùn)行軟件,會提示輸入序列號,這時就輸入這些:
            1325-1110-3786-4687-3270-8979


            問題又來了,我用的是自己的賬戶登錄,沒有管理員權(quán)限,Win7死活不給我修改系統(tǒng)文件,于是只得繼續(xù)百度:
            http://www.ylmf.net/read.php?tid=1374858&page=e
            好長,長到我都快沒耐心了~~最后總算堅持搞定了,于是可以改hosts,其實(shí)我改它不止是因?yàn)楝F(xiàn)在要用,估計以后會經(jīng)常要改,它是用來設(shè)置主機(jī)域名映射的。

            然后CS4沒問題了,剛好FB3下載好了,就安裝,總算搞定~

            《Flex 3 權(quán)威指南》這本書確實(shí)不錯,我要利用晚上下班的時間搞定它。
            posted @ 2010-06-09 23:51 ACong 閱讀(836) | 評論 (0)編輯 收藏
            (不定期更新)
            1.負(fù)責(zé)Web網(wǎng)游客戶端開發(fā)
            2.針對開發(fā)功能進(jìn)行分析設(shè)計實(shí)現(xiàn)
            3.針對公司的需求,制作Flash AS3演示
            1.使用Action script兩年以上 ,精通AS3編程Flex ,熟悉OOP
            2.一年以上團(tuán)隊(duì)管理經(jīng)驗(yàn),有主持大型Flash項(xiàng)目多人合作項(xiàng)目開發(fā)經(jīng)驗(yàn) 。
            3.精通Action script與Java 后臺Socket網(wǎng)絡(luò)通訊編程、熟悉XMLAjaxJavaScript數(shù)據(jù)庫等技術(shù)
            4.熟知游戲或軟件開發(fā)流程,熟知游戲常規(guī)算法
            5.掌握多種開源框架,善于使用設(shè)計模式開發(fā),掌握FLEX/FLASH代碼和素材安全機(jī)制以及性能優(yōu)化技術(shù)
            6.程序編碼規(guī)范,文檔編寫能力良好
            7.具備一定項(xiàng)目管理知識,能合理分配任務(wù),能協(xié)調(diào)并指導(dǎo)其他團(tuán)隊(duì)成員完成項(xiàng)目開發(fā)。
            8.熱愛游戲行業(yè),善于溝通和鉆研技術(shù),工作認(rèn)真、負(fù)責(zé)、有激情、能承擔(dān)較大工作壓力
            良好的數(shù)學(xué)、物理、計算機(jī)及操作系統(tǒng)知識,熟悉各種運(yùn)算法則和公式;
             有跨平臺的良好開發(fā)能力,Java(J2ME/J2SE)

            具體Flash技術(shù):
            事件機(jī)制:對AS3的時間冒泡機(jī)制了如指掌并會依照實(shí)際情況進(jìn)行優(yōu)化
            安全機(jī)制:有能避免安全砂箱出錯的處理辦法
            Preloader機(jī)制:深入了解Proloader機(jī)制,并且優(yōu)化過Proloader的加載順序
            模塊化編譯機(jī)制:知道原理并進(jìn)行過優(yōu)化
            Flex的Profile使用:嘗試使用他來優(yōu)化我的程序
            垃圾回收:清楚理解垃圾回收以及內(nèi)存泄露的關(guān)系,有針對性地進(jìn)行優(yōu)化
            采用Flash Builder, Flex Builder, FDT, Flash Develop開發(fā)
            IDE技巧:編寫過jsfl腳本完成重復(fù)的工作
            外部資源(MovieClip, Image, Font)使用:針對外部資源進(jìn)行過優(yōu)化
            嵌入字體:用IDE或者代碼方式嵌入字體,并解決過相應(yīng)BUG
            有自己的開發(fā)類庫
            用AIR開發(fā)過項(xiàng)目
            能通過UML圖表達(dá)自己的思想以及程序邏輯
            知道MVC的優(yōu)劣和適用范圍
            使用過UI框架(ASwing,F(xiàn)lex)、輔助類庫(As3Corelib,Swfaddress,Tweenlite)、常見MVC框架(PureMVC,Cairngorm,RobotsLegs)、3D類庫(Pv3d,Away3d)
            用過幾種IOC開源框架

            Flash動畫設(shè)計與開發(fā):
            崗位職責(zé): 
            1.能夠獨(dú)立構(gòu)建全Flash框架下的交互站點(diǎn) ; 
            2.為站點(diǎn)創(chuàng)作合適而充滿樂趣的動效表現(xiàn) ; 
            3.項(xiàng)目前期/需要對框架的合理性提出明確想法和可行性計劃 ; 
            4.項(xiàng)目中期/需要從動效及AS部分對交互體驗(yàn)進(jìn)行實(shí)施和效果負(fù)責(zé) ; 
            5.項(xiàng)目后期/需要了解及測試體驗(yàn)成果并將成果進(jìn)行知識轉(zhuǎn)化 ; 
            6.我們需要你積極的與互動研究小組的其它動效或AS專家、設(shè)計師以及后臺功能程序師進(jìn)行多方面溝通 ; 
            7.對思路與想法通過故事腳本或流程圖的方式表達(dá)你的意圖 ; 
            8.知識分享與繼承,包括了培訓(xùn)和常用模塊建設(shè). 
            任職要求:
            1.2年以上Flash應(yīng)用經(jīng)驗(yàn) ; 
            2.動畫特效經(jīng)驗(yàn)豐富,具備音樂編輯能力 ; 
            3.熟悉Action Script,了解面向?qū)ο缶幊蹋‵LASH軟件,熟悉網(wǎng)站技術(shù) ; 
            4.愿意深入了解用戶可用性,對交互設(shè)計有一定研究 ; 
            5.有獨(dú)特的視角,富有創(chuàng)意表現(xiàn)欲; 
            6.良好的團(tuán)隊(duì)溝通和協(xié)作能力 ; 
            7.具備嚴(yán)謹(jǐn)?shù)拈_發(fā)規(guī)范和書面文檔能力; 
            8.具備職業(yè)道德和職業(yè)恒心者優(yōu)先

            一個Flash項(xiàng)目團(tuán)隊(duì)需要的人員:
            工作職責(zé):承接并如期交付我司交予的項(xiàng)目,保證項(xiàng)目質(zhì)量。
            要求:
            1、有較成熟的flash動畫項(xiàng)目開發(fā)隊(duì)伍(4人以上),
            2、熟悉Adobe Flash 各版本的操作;團(tuán)隊(duì)中至少兩人精通Action Script,能制作flash游戲及互動動畫。
            3、團(tuán)隊(duì)中至少一人有美術(shù)功底,有較強(qiáng)的手繪能力,能設(shè)計卡通人物造型,繪制卡通場景;
            4、團(tuán)隊(duì)中至少一人熟練應(yīng)用photoshop, AI等圖像處理軟件;
            5、工作認(rèn)真負(fù)責(zé),有時間觀念及團(tuán)隊(duì)精神。 
            1、應(yīng)征團(tuán)隊(duì)請列明主要項(xiàng)目經(jīng)驗(yàn)及提交3個以上項(xiàng)目成品(2個互動游戲)
            2、請列明隊(duì)伍人數(shù)及分工情況。 .


            AS3.0中的異步異常處理捕捉 http://www.caoyusky.com/blog/as3-try-catch/
            AS3 中URLLoader和Loader的區(qū)別 http://www.jb51.net/flash/actionscript/18319.html
            玩轉(zhuǎn)Flash AS 3D  http://space.flash8.net/bbs/viewthread.php?tid=323970&highlight
            asp.net上傳文件權(quán)限問題 http://www.iecn.net/read-html-tid-29087.html
            TMD,加班中,下被子絕對不當(dāng)程序員,文件上傳權(quán)限問題 http://study.qqcf.com/web/720/261271.htm
            一個在服務(wù)器上模擬客戶端上傳文件的問題 http://topic.csdn.net/t/20060506/03/4732107.html
            FLASH AS3 urlloader調(diào)用ASP.NET,2032流錯誤 http://zhidao.baidu.com/question/70037072.html
            FLASH asp.net后臺通訊 IOERROR2032的問題,完美解決!http://hi.baidu.com/kidcdf/blog/item/623114d15a0132d5562c84c0.html 
            夢境家園flash 3D虛擬社區(qū)游戲 http://tieba.baidu.com/f?kz=614183511
            Flash AS 3D貼圖教程[1]  http://hgfghw1.javaeye.com/blog/633027
            as3和后臺數(shù)據(jù)交互(轉(zhuǎn)) http://cid-d37fb67ef2993635.spaces.live.com/blog/cns!D37FB67EF2993635!157.entry
            asp.net上傳文件 http://luckyjaky.javaeye.com/blog/350697
            posted @ 2010-06-02 15:55 ACong 閱讀(1014) | 評論 (1)編輯 收藏

            哼哼哈嘿。
            有些歌能夠讓人很是亢奮,提起精神工作。

            出埃及進(jìn)行曲
            蝶舞天涯
            男兒當(dāng)自強(qiáng)

            誰是大英雄

            再推薦一些好聽的歌:
            偏愛
            擦肩而過——李圣杰
            花樣年華
            南山憶
            廬州月
            平凡的浪漫
            posted @ 2010-05-28 13:59 ACong 閱讀(225) | 評論 (0)編輯 收藏
            一、 分享第一條經(jīng)驗(yàn):“學(xué)歷代表過去、能力代表現(xiàn)在、學(xué)習(xí)力代表未來。”
                  其實(shí)這是一個來自國外教育領(lǐng)域的一個研究結(jié)果。相信工作過幾年、十幾年的朋友對這個道理有些體會吧。
                但我相信這一點(diǎn)也很重要:“重要的道理明白太晚將抱憾終生!”所以放在每一條,讓剛剛畢業(yè)的朋友們早點(diǎn)看到哈!
            二、   一定要確定自己的發(fā)展方向,并為此目的制定可行的計劃。
                不要說什么,“我剛畢業(yè),還不知道將來可能做什么?”,“跟著感覺走,先做做看”。因?yàn)椋@樣的觀點(diǎn)會通過你的潛意識去暗示你的行為無所事事、碌碌無為。
                一直做技術(shù),將來成為專家級人物?向管理方向走,成為職業(yè)經(jīng)理人?先熟悉行業(yè)和領(lǐng)域,將來自立門戶?還是先在行業(yè)里面混混,過幾年轉(zhuǎn)行做點(diǎn)別的?這很重要,它將決定你近幾年、十年內(nèi)“做什么事情才是在做正確的事情!”。
            三、
                 軟件開發(fā)團(tuán)隊(duì)中,技術(shù)不是萬能的,但沒有技術(shù)是萬萬不能的!
                在技術(shù)型團(tuán)隊(duì)中,技術(shù)與人品同等重要,當(dāng)然長相也比較重要哈,尤其在MM比較多的團(tuán)隊(duì)中。在軟件項(xiàng)目團(tuán)隊(duì)中,技術(shù)水平是受人重視和尊重的重要砝碼。無論你是做管理、系統(tǒng)分析、設(shè)計、編碼,還是產(chǎn)品管理、測試、文檔、實(shí)施、維護(hù),多少你都要有技術(shù)基礎(chǔ)。
                算我孤陋寡聞,我還真沒有親眼看到過一個外行帶領(lǐng)一個軟件開發(fā)團(tuán)隊(duì)成功地完成過軟件開發(fā)項(xiàng)目,哪怕就一個,也沒有看到。倒是曾經(jīng)看到過一個“高學(xué)歷的牛人”(非技術(shù)型)帶一堆人做完過一個項(xiàng)目,項(xiàng)目交付的第二天,項(xiàng)目組成員扔下一句“再也受不了啦!”四分五裂、各奔東西。那個項(xiàng)目的“成功度”大家可想而知了。四、   
            詳細(xì)制定自己軟件開發(fā)專業(yè)知識學(xué)習(xí)計劃,并注意及時修正和調(diào)整(軟件開發(fā)技術(shù)變化實(shí)在太快)。
                請牢記:“如果一個軟件開發(fā)人員在1、2年內(nèi)都沒有更新過自己的知識,那么,其實(shí)他已經(jīng)不再屬于這個行業(yè)了。”
                 不要告訴自己沒有時間。來自時間管理領(lǐng)域的著名的“三八原則”告誡我們:另外的那8小時如何使用將決定你的人生成敗!本人自畢業(yè)以來,平均每天實(shí)際學(xué)習(xí)時間超過2小時。
            五、
                書籍是人類進(jìn)步的階梯,對軟件開發(fā)人員尤其如此。
               書籍是學(xué)習(xí)知識的最有效途徑,不要過多地指望在工作中能遇到“世外高人”,并不厭其煩地教你。
                對于花錢買書,我個人經(jīng)驗(yàn)是:千萬別買國內(nèi)那幫人出的書!我買的那些家伙出的書,100%全部后悔了,無一本例外。更氣憤的是,這些書在二手市場的地攤上都很難賣掉。“擁有書籍并不表示擁有知識;擁有知識并不表示擁有技能;擁有技能并不表示擁有文化;擁有文化并不表示擁有智慧。”只有將書本變成的自己智慧,才算是真正擁有了它。

                  不要僅局限于對某項(xiàng)技術(shù)的表面使用上,哪怕你只是偶爾用一、二次。“對任何事物不究就里”是任何行業(yè)的工程師所不應(yīng)該具備的素質(zhì)。
                開發(fā)Windows應(yīng)用程序,看看Windows程序的設(shè)計、加載、執(zhí)行原理,分析一下PE文件格式,試試用SDK開發(fā)從頭開發(fā)一個Windows應(yīng)用程序;用VC++、 Delphi、Java、.Net開發(fā)應(yīng)用程序,花時間去研究一下MFC、VCL、J2EE、.Net它們框架設(shè)計或者源碼;除了會用J2EE、 JBoss、Spring、Hibernate等等優(yōu)秀的開源產(chǎn)品或者框架,抽空看看大師們是如何抽象、分析、設(shè)計和實(shí)現(xiàn)那些類似問題的通用解決方案的。
                試著這樣做做,你以后的工作將會少遇到一些讓你不明就里、一頭霧水的問題,因?yàn)椋芏鄸|西你“知其然且知其所以然”!

                  在一種語言上編程,但別為其束縛了思想。
                “代碼大全”中說:“深入一門語言編程,不要浮于表面”。深入一門語言開發(fā)還遠(yuǎn)遠(yuǎn)不足,任何編程語言的存在都有其自身的理由,所以也沒有哪門語言是“包治百病”的“靈丹妙藥”。編程語言對開發(fā)人員解決具體問題的思路和方式的影響與束縛的例子俯拾皆是。
                我的經(jīng)驗(yàn)是:用面對對象工具開發(fā)某些關(guān)鍵模塊時,為什么不可以借鑒C、C51、匯編的模塊化封裝方式?用傳統(tǒng)的桌面開發(fā)工具(目前主要有VC++、Delphi)進(jìn)行系統(tǒng)體統(tǒng)結(jié)構(gòu)設(shè)計時,為什么不可以參考來自Java社區(qū)的IoC、AOP設(shè)計思想,甚至借鑒像Spring、Hibernate、JBoss等等優(yōu)秀的開源框架?在進(jìn)行類似于實(shí)時通信、數(shù)據(jù)采集等功能的設(shè)計、實(shí)現(xiàn)時,為什么不可以引用來自實(shí)時系統(tǒng)、嵌入式系統(tǒng)的優(yōu)秀的體系框架與模式?為什么一切都必須以個人、團(tuán)隊(duì)在當(dāng)然開發(fā)語言上的傳統(tǒng)或者經(jīng)驗(yàn)來解決問題???“他山之石、可以攻玉”。
                八
                眾所周知,對軟件開發(fā)人員而言,有、無經(jīng)驗(yàn)的一個顯著區(qū)別是:無經(jīng)驗(yàn)者完成任何任務(wù)時都從頭開始,而有經(jīng)驗(yàn)者往往通過重組自己的可復(fù)用模塊、類庫來解決問題(其實(shí)這個結(jié)論不應(yīng)該被局限在軟件開發(fā)領(lǐng)域、可以延伸到很多方面)。這并不是說,所有可復(fù)用的東西都必須自己實(shí)現(xiàn),別人成熟的通過測試的成果也可以收集、整理、集成到自己的知識庫中。但是,最好還是自己實(shí)現(xiàn),這樣沒有知識產(chǎn)權(quán)、版權(quán)等問題,關(guān)鍵是自己實(shí)現(xiàn)后能真正掌握這個知識點(diǎn),擁有這個技能。
                養(yǎng)成總結(jié)與反思的習(xí)慣,并有意識地提煉日常工作成果,形成自己的個人源碼庫、解決某類問題的通用系統(tǒng)體系結(jié)構(gòu)、甚至進(jìn)化為框架。  

                工程師的內(nèi)涵是:以工程師的眼光觀察、分析事物和世界。
                一個合格的軟件工程師,是真正理解了軟件產(chǎn)品的本質(zhì)及軟件產(chǎn)品研發(fā)的思想精髓的人(個人觀點(diǎn)、歡迎探討)。
            掌握軟件開發(fā)語言、應(yīng)用語言工具解決工作中的具體問題、完成目標(biāo)任務(wù)是軟件工程師的主要工作,但從軟件工程師這個角度來看,這只是外在的東西,并非重要的、本質(zhì)的工作。學(xué)習(xí)、掌握軟件產(chǎn)品開發(fā)理論知識、軟件開發(fā)方法論,并在實(shí)踐中理解、應(yīng)用軟件產(chǎn)品的分析、設(shè)計、實(shí)現(xiàn)思想來解決具體的軟件產(chǎn)品研發(fā)問題,才是真正的軟件工程師的工作。站在成熟理論與可靠方法論的高度思考、分析、解決問題,并在具體實(shí)踐中驗(yàn)證和修正這些思想與方式,最終形成自己的理論體系和實(shí)用方法論。
            十、
                書到用時方恨少,不要將自己的知識面僅僅局限于技術(shù)方面。
                盡量參加開源項(xiàng)目的開發(fā)、或者與朋友共同研制一些自己的產(chǎn)品,千萬不要因?yàn)闆]有錢賺而不做。網(wǎng)絡(luò)早已不再只是“虛擬世界”,網(wǎng)上有很多的開源項(xiàng)目、合作開發(fā)項(xiàng)目、外包項(xiàng)目,這都是涉獵工作以外的知識的絕好機(jī)會,并且能夠結(jié)識更廣的人緣。不要因?yàn)楣ぷ魇亲鯡RP,就不去學(xué)習(xí)和了解嵌入式、實(shí)時、通信、網(wǎng)絡(luò)等方面的技術(shù),反過來也是一樣。如果當(dāng)別人拿著合同找你合作,你卻這也不會,那也不熟時,你將后悔莫及。 
            posted @ 2010-05-20 10:29 ACong 閱讀(286) | 評論 (2)編輯 收藏
            僅列出標(biāo)題  下一頁

            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            留言簿

            隨筆檔案

            文章檔案

            廣商豪杰

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            一本久久久久久久| 一本色综合网久久| 久久影院午夜理论片无码| 性高湖久久久久久久久AAAAA| 久久久久久久波多野结衣高潮| 久久国产精品成人免费| 亚洲国产成人精品91久久久 | 国产99久久九九精品无码| 久久久久亚洲AV成人网人人软件| 国内精品久久久久影院薰衣草 | 精品久久久久久无码中文野结衣 | 国产精品国色综合久久| 久久精品中文字幕有码| 久久久婷婷五月亚洲97号色| 伊人久久大香线蕉综合网站| 国产精品99久久久久久猫咪| www性久久久com| 日本强好片久久久久久AAA| 亚洲人成无码网站久久99热国产 | 91精品久久久久久无码| 亚洲综合熟女久久久30p| 香蕉aa三级久久毛片| 久久国产精品免费一区| 久久国产乱子伦免费精品| 久久综合亚洲色HEZYO社区| 久久93精品国产91久久综合| 狠狠色丁香久久综合五月| 久久久久亚洲AV无码永不| 中文字幕乱码久久午夜| 久久天天躁狠狠躁夜夜不卡| 日韩美女18网站久久精品| 人妻精品久久久久中文字幕| 久久亚洲中文字幕精品一区四| 99久久国产综合精品五月天喷水 | 性欧美大战久久久久久久久| 久久狠狠爱亚洲综合影院| 亚洲?V乱码久久精品蜜桃| 久久99热这里只频精品6| 中文字幕亚洲综合久久菠萝蜜| 久久夜色撩人精品国产| 久久免费视频1|