第220章 院士請指教
第220章 院士請指教
Java語言是95年才發布的,算是目前IT領域最新潮的一種計算機語言。
不過,因為發布時間太短,導致大部分人對這款語言都處於摸索階段。
周浩然就不一樣了。
實時更新,請訪問s🎇to9.com
作為行業從業者,Java是IT工程師們必須精通的語言。
現在才96年,JDK才更新了兩個版本。
全世界的工程師對Java都處於學習階段,說他是全世界最精通Java語言的人,有些誇張。要說他是世界前五,也不算太謙虛。
眼下這個小團隊遇到的技術困境,對他來說太小意思了。
只不過周浩然猶豫著要不要幫他們。
「他?他不行!」這時,一個聲音在旁邊響起,「他不是咱們學校的同學,他是紅星台的。」
周浩然微微一怔,轉頭看到了一個大帥哥。
白白淨淨的清秀陽光。
像是韓國歐巴。
長相很熟。
「你是不是叫周浩然?」
「你是?」
「我叫喬海,喬諾是我妹妹。」
「哦,你就是喬海?」周浩然眼睛一亮,就覺得真巧,「我來之前諾諾還說過呢,說她哥在復旦讀研,沒想到是在計算機學院讀研啊。」
喬海笑道:「我看過你們兩個的合影,感謝你在單位里對我妹妹的照顧。」
周浩然不以為意,「互相照應。」
「你不是在電視台里當銷售嗎?」喬海就很好奇,「怎麼來學校了?」
「我……」
周浩然剛想說他是來辦休學手續的,話到嘴邊,趕緊收住。
喬諾那邊還瞞著呢。
要是讓她知道,她一直崇拜仰慕的師父,其實是比她小四屆的學弟,她搞不好要精神崩潰,師徒關係都沒法維繫了。
「哦,我過來是想找程院長合作的。」
周浩然馬上改口。
「合作?」
喬海感到疑惑,不知道他一個跑銷售的業務員,來計算機學院這邊有什麼合作。
程德昌院長轉過身,好奇的看著他,「你是電視台的?要合作什麼?」
周浩然解釋道:「現在的企業管理中,會遇到很多複雜的財務、供應鏈、倉庫、銷售等方面的大量數據。過去採用的都是手寫的單據來記錄,這就太影響效率了。」
「哦,要做信息管理系統?」
程德昌對這樣的項目不陌生。
周浩然笑笑,「對,數位化的管理可以讓企業運營更高效、信息傳遞更暢通。」
程德昌搖搖頭,「這樣一個系統,沒你想的那麼簡單,不同的企業可能會有不同的需求。要根據不同的需求,開發出不同的設計、不同的功能,需要定製化開發。」
喬海失笑道:「周浩然,信息管理系統我們都開發過,背後的原理很複雜呢,要對接資料庫,要對不同的部門開不同的權限……」
「我知道。」周浩然打斷了他,「我們可以把所有的功能都開發出來,以模塊化的方式……剛好現在有了Java語言,開發起來就更容易了。」
喬海微微一愣。
對他的話感到吃驚,他好像真懂Java語言?
在場唯一的一個女同學,戴著眼鏡其貌不揚,若有所思的說:「把功能模塊化,然後根據不同的客戶需求,去調用不同功能的模塊。」
周浩然笑道:「就是這個意思。就像稱院長說的,企業的個性化就意味著信息管理系統需要定製,可如果是模塊化的架構設計,就可以按需分配,用最小的成本做最大的事。」
「這怎麼架構?」喬海覺得這太有挑戰性了,「沒人會。」
有一個同學嘗試著說:「要不找二組的房師兄問問?他是博士後,技術最好,對Java語言的研究也最深。」
「他行嗎?」
喬海覺得不靠譜。
軟體架構,就跟蓋房子的承重梁一樣。
正常的軟體開發,就像蓋樓。
這都能理解。
可周浩然說的這個功能模塊化,隨需隨取,這就很複雜了。
這就相當於把每個房間給單獨都建造出來,然後按照需求,把臥室、客廳、儲藏間、浴室、洗手間等「功能」,都組裝進承重梁里。
這對房屋框架的設計就會有極高的要求。
周浩然指了指自己,「我啊,我來當架構師。我把框架搭建起來,請我們計算機學院的同學,來幫我把功能都落地實現就行了。」
「你?」
喬海睜大眼睛,想笑又不能笑。
倒是身邊有幾個同學,都笑起來了,覺得這不知道從哪來的小伙兒,說起話來不著邊際。還在電視台工作呢,能不能成熟點?像個愣頭青似的。
程德昌院長盯著他看了幾眼,問道:「你叫周浩然?」
「對。」
「剛好,這裡有一個小Bug,這些人都研究一上午了,你來看看?」
「呃……」周浩然考慮了一下,出於長遠的計劃考慮,也就答應了,「那行,我來看看,這是要做網頁的動態GG吧?」
喬海搖頭道:「什麼GG?這是在HotJava瀏覽器上做粒子動畫效果的演示。」
周浩然點了點頭,「一回事,你說的是技術,我說的是技術的應用。你們這個技術開發出來,就是為了在網頁端現實動態GG。實驗室要是能連接網際網路,可以登錄雅虎主頁看看,就可以看到。」
「啊?」
喬海愣住,轉頭看了一眼他的師兄弟們。
都是大眼瞪小眼。
一臉茫然。
喬海嘿嘿一笑,跟旁邊的同學低聲顯擺:「這是我妹夫。」
周浩然坐了過去。
鍵盤、滑鼠、顯示器都很老氣,桌子上還放了一本《Java語言規範》的參考書。
不過,目前國內還沒有中文版。
這是英文版,該書的最初版。
「這誰的書?」
周浩然指了一下。
喬海笑著說:「我的,從美國捎回來的。」
周浩然瞟他一眼,很讚嘆,「英文的,能看懂?」
喬海道:「還行。」
周浩然指點道:「這書有好幾個地方都不太對,你看的時候要注意點。」
「周浩然,你也太能吹了吧?」喬海能感受出來這小子很有才華,可實在受不了,「這書有錯誤?這本書是高斯林寫的,他是Java之父,這門語言就是他設計的!」
周浩然道:「我知道他是Java之父,詹姆斯·高斯林唄。他創造了這門語言,不代表他就最懂這門語言。」
「呵呵。」
「哈哈!」
「你太逗了!」
一時間,大家就鬨笑起來。
周浩然很奇怪的看他們,「這很正常吧?就像咱們做高考閱讀理解似的,文章的原作者去做那些題,都未必能答對。這就是公眾產品的價值附加原則啊,你們碩士、博士的,這點都不懂?程院長,你懂吧?」
程德昌一腦門黑線,「看你能不能解決這個Bug!」
周浩然笑笑,「這個簡單。」
喬海道:「不簡單,這個程序,我們在Sun演示機上跑得好好的,轉到了瀏覽器上,運行五分鐘就凍結了。」
「檢查下事件的分發線程。」
周浩然開始操作。
「Java的線程模型太垃圾了……」
喬海在旁邊抱怨,下一刻,他就頓住了。
因為周浩然的操作太熟練了。
而且速度極快。
「找到了,就在這。」
周浩然伸手指著屏幕上的一段代碼。
public class Particle extends Thread {
public void run(){
while(true){
repaint();//直接調用AWT繪圖方法
try { sleep(100);}
catch(InterruptedException e){}}}}
「現在的Java語言有很多缺陷和漏洞,那位Java之父也未必知道,你看著他的書來編程,難免會遇到一些解決不了的Bug。」
這一刻,周浩然好像跟程院長換了身份。
好像他才是科學院院士、博士生導師,學科帶頭人、復旦大學計算機學院的院長。
所有人都頃刻震驚!
程院長臉色扶了扶眼鏡,往前湊,使勁盯著這段代碼。
周浩然笑道:「程院長,你這種大專家,就別來研究代碼了,你都多大歲數了。」
程德昌難以置信,「你說的是對的?」
周浩然道:「肯定對啊,你們在用戶線程里直接操作AWT組件,實際上,所有GUI操作都必須在系統事件線程執行。這是Java的設計缺陷。」
這其實不是什麼太高深的難題。
二十年後,著作《Java並發編程實戰》一書里,就把這個問題詳細的給說清楚了。從那以後,全球開發者才明白這到底是怎麼回事。
原來困擾多年都很難解決的困境,竟然是Java之父給弄錯了。
放在當下這個年代,堪稱絕殺!
周浩然笑著說:「其實也不怪你們,全世界多少開發者都被這個缺陷給困擾住了。回頭我寫一篇論文發出來,給全球的網際網路行業發展做點微薄的貢獻。」
「有辦法解決嗎?」
喬海發現有點冷場,就主動跟他溝通。
真尷尬啊!
堂堂的院士、博導、院長,在一個小年輕面前,跟個學生似的。
「簡單。」
周浩然調整了輸入法,開始敲鍵盤,修改代碼。
主要是調用Runnable接口,調用EventQueue類API,調用invokeLater函數,把繪圖操作拋回給系統事件隊列。
修改過後,演示起來。
屏幕上的動態粒子恢復了流暢運動。
成功了!
「嘶!」
整個實驗室,一片死靜。
各自震驚。
好像都忘記了呼吸。
「掌聲吧?」
還是程德昌院長見多識廣,先鎮定下來鼓掌。
然後,圍著他們站成一圈的博士、碩士們,才開始熱烈鼓掌。
喬海鼓掌最凶。
都有點熱淚盈眶。
他現在終於明白妹妹為什麼這段時間總在家裡說「周浩然」這個名字了。
這還是人嗎?
太強了吧?!
(本章完)
(還有更新耶)