CSDN頭版頭條 《近匠》 Wijmo 5 CTO:從Web到移動,我的25年編程生涯

來源:互聯網
上載者:User

標籤:

現年52歲的Bernardo Castilho先生是GrapeCity(中文名為葡萄城)ComponentOne公司的CTO,在與他的對話過程中。充滿風趣嚴謹和厚重的曆史感。

 

 

當作為年輕人的我們崇拜著各式娛樂男神女神時,他的偶像卻是這個世界上最為傑出的科學家。從少年時代開始。編程成了他的興趣愛好。並終於成為了他許以一生的職業。作為Wijmo 5Team Dev的Leader之中的一個,他是HTML5、JavaScript等眾多技術的行家裏手,在採訪他之前,筆者特地在CSDN論壇上發起了一個問題徵集的活動,接下來,就讓我們一起看看Bernardo Castilho先生就自己、團隊以及Wijmo都回答了哪些問題吧。

圖:GrapeCity ComponentOne CTO Bernardo Castilho先生

CSDN:首先,請向我們的讀者自我介紹一下,能夠分享一些您的小八卦。

從業以來,有哪些印象深刻的經曆?從Web到移動,有哪些經驗分享?

Bernardo Castilho:我的編程生涯能夠追溯到少年時代。當時我使用的是一台45k記憶體的Apple II。我沉醉於這種能讓一切事物變得格外簡單的編程滋味兒。上世紀90年代初,當我編寫出我的第一款適用於Visual Basic 1.0的自己定義控制項,這種愛好變成了我許以一生的職業。

一直以來。我都非常熱愛閱讀。假設必須選擇一本的話,我會推薦侯世達的《哥德爾、埃舍爾、巴哈:集異璧之大成》,從嚴格意義上來講。它並非一本編程書籍。但它卻涵蓋了包含萬物相連在內的諸多領域。

我也有非常多的偶像。比方阿基米德、伽利略、牛頓、高斯、馮·諾伊曼、艾倫·圖靈等,但在我的生命中,我最崇拜的人是Turbo Pascal、Delphi、C#和TypeScript的創造者——安德斯·海爾斯伯格,我參加過他非常多的演講,他獨到的見解與想法總會讓我倍感驚喜。

在過往25年的職業生涯裡,我有幸目睹了Web革命的完整曆程,從上世紀的一個天才想法逐漸演變成為今時今日人們生活中不可或缺的一部分。從向一個平台公布內容到一次編程處處執行的跨平台應用。於我個人而言,從Web到移動最重要的轉折點是微軟決定停止開發Silverlight,它讓我看到了HTML5和JavaScript將成為未來的技術趨勢。

從我涉足這一行業開始。一切都變得有趣起來,回首過去,人們發明了個人電腦和全球資訊網。許很多多驚天地的事情對現實生活產生了劇烈影響。而今天,冒著像個老男人一樣嘮叨的風險。我看到非常多年輕的孩子在iPad上浪費他們的大好光陰,而成年人則成日在Facebook等社交網路上刷屏度日,甚至還有的人在為他們的下一部手機該選個什麼顏色而苦惱。

當然。在此之中。仍然有很多有趣的事情正在發生。僅僅是還不為人知罷了。

對我來說,EcmaScript 5、TypeScript、AngularJS以及Wijmo 5都格外地有趣。希望會有很多其它的人喜愛它們。

CSDN:請詳細說一下Wijmo 5是什嗎?為什麼將其命名為“Five”?

Bernardo Castilho:Wijmo 5是新一代的HTML5/JavaScript控制項陳列庫,採用最新和最受歡迎的技術,包含了開發可執行於案頭與行動裝置之上的現代MVVM應用須要的全部控制項和組件,而且。它不再相容不論什麼傳統瀏覽器。我們仍然會繼續支援並更新Wijmo 3。以便傳統瀏覽器的使用者還能繼續使用。

Wijmo 5的“Five”實際上來自於EcmaScript 5。在Wijmo 5中有一項非常重要的特性。就是真正實現了對於getter和setter屬性的支援,這是EcmaScript 5新加入的部分。也是Wijmo早期版本號碼一直缺乏的東西。

CSDN:請講講Wijmo 5Team Dev的成員以及分工情況。

Bernardo Castilho:Wijmo 5團隊的大部分人也負責其它的產品開發工作。

我們利用在各自擅長領域的專業經驗來為各個類別的開發項目建立擁有最好品質的控制項。

就我而言。我之前負責了從ActiveX、Winforms到XAML等FlexGrid全部版本號碼的開發工作,而我在Grid方面也擁有著極為豐富的經驗,並把它們帶到了Wijmo 5 FlexGrid的開發中。Alex Trefilov是Wijmo 5 FlexChart控制項的開發人員。他一直負責XAML圖表控制項的開發工作,能夠說是圖表方面的行家。Tim Emanuel是我們的主設計師兼CSS專家。他建立了Wijmo控制項的外觀和布局行為。以及可輕鬆建立控制項主題的LESS檔案。

Chris Bannon是Wijmo的產品經理,負責包含Wijmo 5在內的Wijmo全部版本號碼的研發工作。Chris在Web開發、HTML5、JavaScript以及包含jQuery、SVG、Bootstrap、AngularJS、KnockoutJS等的全部流行JavaScript技術和控制項方面絕對稱得上是行家,他為我們瞭解當下最先進的Web開發技術以及該怎樣開展研發工作投入了大量的精力。Alex Ivanenko是我們的專案經理,負責包含構建過程、自己主動化測試、Bug管理及使用者請求等基礎架構工作。而Wijmo 5的全部示範示範範例則是由Raleigh Johnson來開發的,Nazim Turakulov是我們負責互動層的開發人員,主要包含AngularJS和KnockoutJS指令等。Kim Landis是我們的技術文檔project師,主要負責文檔、技術論文部落格等的審校工作,確保全部資訊都是簡潔明白的。而市場經理Eve Turzillo則負責包含廣告、視頻、會議等在內的推廣工作。除此之外。我們另一個分布在中美等國家的Team Dev。同一時候負責Wijmo 3和Wijmo 5產品的開發工作。

CSDN:Wijmo 5的開發用到了哪些技術?詳細的開發思路是怎樣的?

Bernardo Castilho:2013年,當我們看到通過EcmaScript 5、HTML5、TypeScript、AngularJS等全新的Web技術能夠建立出像Silverlight和.NET中的那些工具一樣強大的HTML工具時,我們決定開發Wijmo 5。

我們想要建立一個這種庫,當我們的客戶習慣於體積更小、依賴性更弱的其它平台時。能夠為他們提供擁有相同強大的功能及靈活性的控制項。

我們使用到了jQuery,但不包含jQuery UI、Raphael、Globalize或其它的庫。

我們希望這些控制項能夠充分利用HTML5隨處執行的特性,因此,全部的控制項設計都以可良好執行於移動/觸屏及電腦裝置為前提。

圖:Wijmo 5設計草圖

Wijmo 5使用TypeScript語言編寫,它融合了包含類、繼承等在內的物件導向編程全部長處,並編譯成EcmaScript 5。從而實現可執行於全部現代瀏覽器。此外。TypeScript還提供了靜態誤差檢查,能夠極大地加快開發速度並提供產品品質。

Wijmo 5的控制項擁有著非常豐富的物件模型,在我們其它平台已有控制項的基礎上,利用我們作為控制項開發人員的經驗優勢來降低客戶的學習曲線。而且。我們還從Silverlight移植了JavaScript堆棧所缺失的類,當中就包含和MVVM應用關鍵介面ICollectionView類似的Control和Event基礎類。

CSDN:這款工具做了多久?遇到過哪些坑?

Bernardo Castilho:我們用了一年的時間來開發Wijmo 5,整個過程能夠說非常順利。但也遇到了一些挑戰。而最大的挑戰當屬文檔。我們渴望能夠找到像JSDoc這種工具來將代碼凝視編譯進線上協助系統,但卻無功而返,終於,我們自己編寫了一款能夠從原始碼中提取凝視並產生支援本地化的XML檔案的工具。另外。另一款專門用於將XML檔案編譯成Web頁面一起匯成協助系統的工具,這樣一來,不管何時構建Wijmo,我們的協助網站都能實現自己主動更新。

相對而言。其它的問題則easy得多。

CSDN:Wijmo 5和Wijmo在本質上有哪些不同?與同類工具相比,Wijmo 5的優勢在哪兒?

Bernardo Castilho:Wijmo 5與之前諸多版本號碼的Wijmo存在著非常大的不同。而且全然不相相容,它包含了一系列截然不同的控制項,不同的架構。最為關鍵的是,它不再對傳統瀏覽器提供支援。

與其它同類工具相比,Wijmo 5的控制項體積更小。速度更快,並有著更為富足也便於使用的物件模型,整個Wijmo 5庫也就300k大小,同類產品則通常比它大10倍左右,Wijmo的控制項不是“widgets”,而是真真正正的控制項,擁有著更棒的效能。

CSDN:關於Wijmo 5未來會有哪些規劃?是否會考慮開源?

Bernardo Castilho:我們沒有將Wijmo 5開源的計劃,相反,我們會將Wijmo 5以一個極具競爭力的價格出售。並提供使用者支援。對於Wijmo 5的未來發展。我們有一套路線圖以及使用者請求列表。在公布Beta之後,我們會將所收集到的資訊匯總出一個優先順序列表,依據它們來制定詳細的實施計劃。

CSDN:非常多開發人員關心,Angular與其它流行組件整合時是否會存在問題?

Bernardo Castilho:對於Angular的支援實際上是Wijmo 5開發的重點項目之中的一個,我們熱愛AngularJS。並在大部分的示範範例中使用了它,而且,我們還提供了指令來讓使用帶有AngularJS的Wijmo 5變得更easy。另外,對於控制項本身。Wijmo 5另一個CollectionView類。讓使用AngularJS的MVVM開發達到XAML平台的水準。

CSDN:假設開發人員想將項目從Wijmo向Wijmo 5遷移。該怎麼實現?

Bernardo Castilho:從Wijmo向Wijmo 5遷移非常easy,假設開發人員使用AngularJS和MVVM,那麼就能夠通過對控制類進行細微的調整並指令執行以舊換新操作。就可以完畢項目遷移。當然,我們非常樂於為使用者提供遷移指導,在官網的NewsGroup版塊就包含了Wijmo等主題相關的資訊,對開發人員而言絕對非常有用。

圖:Wijmo 5代碼

CSDN:在Wijmo 5的介紹中,有一塊“真正的JavaScript控制項”。可否詳細講講它所指的意思?

Bernardo Castilho:從字面意思來理解。“控制項”是指一個具備使用者介面以及包含屬性、事件、方法等的物件模型的可反覆使用的軟構件。大多數JavaScript庫所提供的都是與控制項極為類似的組件(Widget),僅僅只是,組件的效能有一個單一卻相當難管理的“Options”對象。而且。它們使用調用方法或附加事件處理常式的字串,導致文法冗長又easy出錯。

而Wijmo 5則全然不同。它實現了getter和setter等屬性支援,擁有真正的事件和方法。

全部的物件模型都是型別安全的,開發人員可從IntelliSense和TypeScript編譯器受益。最重要的是。Wijmo 5文法和JavaScript類一樣簡潔,代碼更易於編寫、閱讀和理解。

CSDN:Wijmo 5控制項能否夠依據裝置或瀏覽器進行自適應?其通用性怎樣?

Bernardo Castilho:Wijmo 5控制項支援包含手機、平板電腦、PC在內的全部裝置。不管開發人員選擇使用哪種布局架構。都能夠完美整合。比方說,我們大部分的示範範例都是用Bootstrap來實現調適型配置。這就確保了應用程式不僅能夠執行於小屏裝置之上。還能自適應。當然,有些示範範例還用到了其它架構。比方專門用於開發混合應用的Ionic。Wijmo並不提供布局服務。但不管開發人員選擇Bootstrap、Ionic還是其它不論什麼CSS庫,都可將其輕鬆整合到Wijmo中。

CSDN:Wijmo 5在中國有哪些支援人員?假設中國的開發人員們遇到問題該怎樣尋求協助?

Bernardo Castilho:我們將為來自中國的開發人員提供一流的服務支援。

我們的母公司GrapeCity在中國的上海和西安都設有分公司,關於Wijmo 5開發的很多工作都是在中國完畢。假設來自中國的開發人員們關於Wijmo有不論什麼的問題,都能夠在GrapeCity論壇提出。我們的開發人員一定會及時提供協助。

CSDN:作為資深程式猿,能否談談您對於HTML5/JavaScript技術趨勢的看法?

Bernardo Castilho:在我看來。EcmaScript 5、TypeScript、AngularJS等技術的更新已經讓HTML5和JavaScript成為應用開發最高效有用的平台。EcmaScript 5引入了最為重要的getter和setter屬性以及SVG、Canvas、JSON等支援,而在此版本號碼之前, EcmaScript根本不夠強大。TypeScript也新增了很多關鍵元素,除了物件導向之外,還有能節省時間並提高代碼品質的靜態錯誤檢查。AngularJS則提供了豐富的MVVM和Web組件。兩者都是現代應用開發的關鍵區段。雖然AngularJS所具備的功能並非獨此一家。但它卻是當下最流行的技術之中的一個。

CSDN:最近在中國,有一個頗為熱門的話題。就是Adobe關閉了在中國的研發分公司。僅留銷售部門,當中非常重要的一個原因就是對於國人而言,正版軟體太過昂貴,就GrapeCity控制項來說,你們是否會針對中國市場進行價格調整以適應中國國情?

Bernardo Castilho:我們曾就定價進行過很多內部討論,大部分人覺得眼下的價格是相當合適的。而有的人則希望能夠添加一個價格較低但有限制條件或降低支援的選擇。對於中國的開發人員,到底該提供一個什麼樣的價位?關於這一切,我們仍在思考中。

同一時候。依據我們在中國的業務團隊的反饋,中國的企業使用者非常重視技術服務,因此在中國市場。我們會提供本地化的支援人員,以及電話、郵件響應等增值服務,以協助開發人員擷取更棒的體驗。

CSDN:有沒有想對中國的開發人員們說的話?

Bernardo Castilho:我鼓舞全部對HTML5和JavaScript感興趣的中國開發人員登陸我們的官網瞭解Wijmo 5。在這裡,不僅能夠下載Wijmo 5,還有視頻、示範範例、文檔、論壇等讓你深入瞭解Wijmo 5。更希望來自中國的開發人員們能夠以英語或中文等方式直接與我們聯絡。擷取很多其它資訊,或向我們提出建議。來協助我們將Wijmo 5做得更好!

----------------

Wijmo 5中文官網:http://wijmo.gcpowertools.com.cn/5

Wijmo 5中文社區:http://gcdn.gcpowertools.com.cn/showforum-140.html

CSDN頭版頭條 《近匠》 Wijmo 5 CTO:從Web到移動,我的25年編程生涯

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.