| 移動(dòng)通信產(chǎn)品分成四大類(lèi),第一類(lèi)是設備.包括交換機、路由器、基站等有線(xiàn)和無(wú)線(xiàn)網(wǎng)絡(luò )中的設備,第二類(lèi)產(chǎn)品是終端.包括普通手機、智能手機、PDA和尋呼機等設備.第三類(lèi)是電信平臺.包括智能網(wǎng)平臺、BOSS、運營(yíng)商的各種管理平臺(比如misc)等系統.第四類(lèi)是服務(wù).就是短信、彩信、WAP、IVR、KJAVA和BREW等增值業(yè)務(wù)。第一類(lèi)產(chǎn)品基本都是嵌入式設備,包括硬件和嵌入式軟件.第二類(lèi)產(chǎn)品中除硬件外,軟件包括驅動(dòng)(嚴格來(lái)說(shuō)是軟硬件的接口層)、操作系統和應用軟件。第三類(lèi)和第四類(lèi)產(chǎn)品全是軟件產(chǎn)品.所以終端和設備中的軟件再加上電信平臺和增值業(yè)務(wù)就是我們所說(shuō)的移動(dòng)通信軟件.那么進(jìn)行電信軟件開(kāi)發(fā)的技術(shù)人員應該有什么樣的知識結構呢,中國自學(xué)編程網(wǎng),www.zxbc.cn 。 首先針對每一類(lèi)產(chǎn)品所需要的知識進(jìn)行分析。 第一:設備軟件開(kāi)發(fā),80%以上都是采用VxWorks或pSOS,當然有一些公司的設備(包括華為)正陸續遷移到Linux平臺.采用的開(kāi)發(fā)語(yǔ)言主要是C/C++,開(kāi)發(fā)環(huán)境VxWorks是Tornado,使用這兩個(gè)平臺的設備商的開(kāi)發(fā)團隊在該平臺方面肯定有積累,很多的功能(比如IPC方面的,內存分配方面的)都已經(jīng)做好了封裝,所以你需要做的工作是熟悉這些封狀的API.但是,因為其中涉及大量的比較復雜的數據結構,比如十字鏈表和Radix樹(shù),以及圖,所以要求你對數據結構有比較深刻的認識,當然你的C語(yǔ)言的功能要深厚,尤其是指針的使用.因為這些設備都是進(jìn)行協(xié)議處理的設備,所以你對于即將開(kāi)發(fā)的協(xié)議要有充分的認識.如果你要做路由,那么必須要研究TCP/IP協(xié)議,如果你要做MSC,那么必須研究GSM的網(wǎng)絡(luò )結構、處理流程和協(xié)議結構。如果你要開(kāi)發(fā)VOIP和流媒體產(chǎn)品,你需要研究H.232和SIP協(xié)議.如果要開(kāi)發(fā)GGSN和SGSN,那么就要研究CDMA中的骨干網(wǎng)結構,協(xié)議和流程.所以第一類(lèi)產(chǎn)品的知識結構為深厚和C語(yǔ)言功底+深刻的協(xié)議理解. 第二:終端軟件開(kāi)發(fā).終端軟件中的主流操作系統包括Windows CE、Symbian、Linux和Palm os,其中前三中系統的市場(chǎng)占有率超過(guò)99%.操作系統本身都比較成熟,基本不涉及什么開(kāi)發(fā)的工作,但Linux系統課程要做一些修改和定制.終端上的應用軟件跟PC上的應用軟件從本質(zhì)上是相同的.而終端上的驅動(dòng)開(kāi)發(fā)相對來(lái)說(shuō)就是技術(shù)難度較高的開(kāi)發(fā).因為需要你對硬件有什么的認識,還可能要用到匯編.而應用軟件的開(kāi)發(fā)在各平臺下都有成熟的開(kāi)發(fā)工具.Linux下用gcc+c(c++)就可以了,wince可用EVC,symbian的SDK也可以跟VC集成,如果你有比較豐富的VC開(kāi)發(fā)經(jīng)驗,對你的終端軟件開(kāi)發(fā)會(huì )有非常大的幫助.所以第二類(lèi)產(chǎn)品的知識結構為語(yǔ)言+平臺提供的API(如果是驅動(dòng)需要計算機結構的知識). 第三類(lèi):平臺軟件開(kāi)發(fā).電信平臺軟件90%以上都是基于UNIX平臺的,使用的數據庫包括oracle,informix和sybase,其中oracle的分額最大,而且現在很多的系統在從informix和sybase遷移到oracle.平臺軟件中即包括B/S結構的也包括C/S結構的.C/S結構的一般采用C/C++開(kāi)發(fā),B/S結構的一般采用J2EE,當然也會(huì )出現B/S和C/S結構的混合.C/S結構中的客戶(hù)端主要是Delphi或VC開(kāi)發(fā)的,在C/S結構的應用中對網(wǎng)絡(luò )編程(利用Socket)要較高的要求,很多人覺(jué)得socket編程很簡(jiǎn)單,其實(shí)不然,其中有很多的陷阱.所以第三類(lèi)產(chǎn)品的知識結構為C/C++ + UNIX(Linux) + Oracle + J2EE(java) + 應用服務(wù)器+界面開(kāi)發(fā).[Page] 第四類(lèi):服務(wù)產(chǎn)品開(kāi)發(fā).服務(wù)產(chǎn)品開(kāi)發(fā)中可以分成嵌入式方面的Kjava/BREW和非嵌入式方面的短信,彩信,WAP和IVR.當然,還包括定位業(yè)務(wù)和彩鈴業(yè)務(wù).Kjava是Java的一個(gè)子集,所以,一個(gè)JAVA程序員過(guò)度到Kjava相對容易.BREW是用C或C++開(kāi)發(fā),并且提供了與VC集成的開(kāi)發(fā)環(huán)境.所以,這兩中技術(shù)開(kāi)發(fā)的知識結構是語(yǔ)言+開(kāi)發(fā)環(huán)境的API+運營(yíng)商的規范.SMS/MMS/WAP開(kāi)發(fā)技術(shù)與第三類(lèi)軟件的開(kāi)發(fā)技術(shù)類(lèi)似,只不過(guò)技術(shù)含量更低一些,而且因為性能和安全要求要低一些,所以可能采用MS的.NET技術(shù)架構.為進(jìn)行服務(wù)產(chǎn)品開(kāi)發(fā),同時(shí)需要對運營(yíng)商的協(xié)議和規范有清楚的認識 綜合以上所述移動(dòng)通信軟件的知識結構為 C(C++)+JAVA(J2EE)+UNIX+ORACLE+嵌入式平臺+電信協(xié)議+運營(yíng)商規范.而要做一個(gè)非常出色的軟件人員,操作系統和數據結構是必須要研究的,盡管各種開(kāi)發(fā)架構提供的數據結構越來(lái)越豐富,我們的開(kāi)發(fā)越來(lái)越跨平臺,但這些基礎的東西必須要扎實(shí).其中,很多的思想,比如進(jìn)程調度思想,內存分配思想,各種查詢(xún)算法等對你的思路的鍛煉和開(kāi)拓的作用是相當大的,如果能夠掌握的很扎實(shí),那么將使你受益無(wú)窮. |