當前位置:首頁 » 數據倉庫 » 介面設計需要什麼配置
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

介面設計需要什麼配置

發布時間: 2022-08-06 21:43:59

⑴ 兩個軟體之間的介面設計需要注意什麼

兩個軟體的介面設計,最重要的是數據結構的設計,就是A軟體發送給B軟體數據,B軟體收到數據後,進行解析。當然前提是B軟體需要提供一個接受A軟體信息的介面。

⑵ 如何設計介面,應注意什麼問題

共享臨時文本文件這種進程之間的通訊方法相比其它方法的優點有很多,下面僅列出我現在能想到的:
·進程之間松耦合
·進程可在同一台機器上,也可跨機,跨操作系統,跨硬體平台,甚至跨國。
·方便調試和監視,只需讓第三方或人工查看該臨時文本文件即可。
·方便在線開關服務,只需刪除或創建該臨時文本文件即可。
·方便實現分布式和負載均衡。
·方便隊列化提供服務,而且幾乎不可能發生隊列滿的情況(除非硬碟空間滿)

⑶ 學室內設計需要什麼樣的筆記本啊,據說要用到3D,CAD之類的軟體,買什麼配置的啊

學室內設計 確實會用到3D的
現在的主流筆記本基本了以滿足你的基本要求 當然最好還是台式機
這是今年的購機消息
4000-4999元 已經是主流的了
另外配置如下
處理器 酷睿2 雙核 主頻2.13GHZ
內存 2GB DDR2 建議換成DDR5。。。
主板PM45+ICH9M
顯卡獨立 512M顯存 NVDIA GeForce居多
硬碟320G
DVD刻錄光碟機
無線網路 WIFI LINK 居多
筆記本電池容量 4800mAh
筆記本重量 2.3KG左右
呵呵 這就是今年電腦報8月份4000-4999元的主流配置
也是今年的主流配置
根據這個配置
在聯想 DELL 惠普 IBM 華碩 宏碁 中選擇機器 即可
華碩F83s 4599
海爾T628 4999
康柏CQ40-519TX 4899
聯想IdeaPAd Y450A-TFO(D) NBA特色版 4890
宏碁Aspire4736G 4699
方正R621G 4000
DELL Inspiron1427-C35 4950
以上的機器全部推薦 最推薦DELL 1427 聯想的那個NBA特色版 華碩的那個處理器不怎麼樣 但是好在性能搭配好 可以搭配高性能獨立顯卡 反而更具有優勢
已下都是性價比本本 挑一個 都不錯的 除了神舟的。。。。
隨著IT產品製造工藝的進步,價格也在逐年下降,對於近些年需求較大的筆記本來說也是如此,主流產品從之前的萬元左右己經降至5000元左右,我們不用在花兩倍預算來選購筆記本,市場的整體價格大幅度下拉,讓預算有限的消費者依然可以享受到筆記本電腦帶來的輕便和優越,今天我們就為消費者推薦幾款5000元以下的筆記本,希望能對預算不多的消費者購本起到幫助。 方正S410IG-510採用了酷睿2雙核T6400處理器和NV9300獨立顯卡,整體性能非常強悍,近日從經銷處傳來喜訊方正S410IG-510直降400元最新售價為4800元,喜歡的朋友可要抓緊了!方正S410IG外觀上,方正S410IG頂蓋雖然基於ABS工程塑料材質,但加入了時下流行的膜內漾印技術,令筆記本同時擁有靚麗的外觀和出色的抗劃耐磨性能。內飾方面,C面更是融合了乳白色的設計,在眾機當中,這款筆記本更顯得是「鶴立機群」。方正S410IG配置上,這款方正S410IG採用了45nm的英特爾酷睿2雙核T6400處理器,擁有2.0G的主頻,2M二級緩存和800Mhz匯流排頻率,基於的是IntelPM45晶元組,標配2GB內存和250GB硬碟,而且還採用了NVIDIA的GeForce9300MGS獨立顯卡,屏幕採用的是14.1英寸液晶屏。方正S410IG方正S410IG介面集中在筆記本的左側,包括VGA、HDMI等視頻埠,RJ45網路埠,兩個USB介面和一個e-SATA介面,另外還有讀卡器和Express擴展塢,散熱風口也設置在這一側,不過這個設計值得商榷。右側安置了DVD刻錄機以及一個USB介面和音頻輸入輸出介面,略顯空盪。網路方面,除了自適應網卡之外,無線採用的是英特爾5100 AGN無線網卡方案,並配上130萬像素高清攝像頭,機器搭載的是WindowsVistaBasic操作系統。編輯觀點:方正S410IG-510配置主流,酷睿雙核T6400處理器和256M顯存的NV9300獨顯的組合相得益彰,感興趣的朋友不妨同經銷商取得聯系。[參考價格] 4900元
暑促馬上到了,近日編輯從經銷商處獲悉同方K420A-03最新售價為4200元,該機採用了Turion64 X2 TK-53雙核處理器、ATI Mobility Radeon HD2400獨立顯卡,整體性能非常均衡,一起來看看吧。 同方K420A外觀外觀方面,同方鋒銳K420A採用了全黑色主色調設計,在筆記本的A面除了品牌標志以外,還增加了一條銀色金屬邊條,使產品的外觀不至於過分單調。產品的內飾方面也是採用了全黑設計,不過鍵盤上方留有寬大的邊條,並且配置有立體聲音箱,而中間的豎條形按鍵也恰如其分地點綴了這一設計。14.1英寸16:10高亮寬屏擁有1280×800標准解析度,顯示效果非常細膩。同方K420A鍵盤特寫配置上,同方鋒銳K420A採用AMDMobileAthlon64X2TK-53處理器,主頻1.7G,搭配nVIDIAMCP67晶元組,內置ATIMobilityRadeonHD2400獨立顯卡,擁有256M顯存,支持DirectX10技術,非常適合欣賞高清視頻。標配2GBDDR2內存、250GB高速硬碟和DVD±RW光碟機。 同方K420A左右介面設計介面方面,同方鋒銳K420A提供4個USB2.0介面,內置多合一讀卡器,支持VGA介面、RJ11、RJ45、聲音輸入、聲音輸出孔、直流電源插孔、安全鎖孔等。並且內置56KMODEM及百兆自適應網卡和支持802.11a/b/g協議無線網卡。待機方面標配6芯4000mAh鋰電,擁有3個小時左右的續航能力。編輯點評:同方鋒銳K420A整體配置非常均衡。ATI 2400獨顯是整機一大亮點、而250GB超大硬碟方便存儲更多的影音資料。[參考價格] 4200元
戴爾Inspiron靈越1526(S510326CN)採用了AMD炫龍64x2TL-60處理器,2G內存,160G硬碟整體性能比較均衡,目前訂購價為3999元。感興趣的朋友可以撥打免費電話:座機:800-858-0410 手機:400-884-9431
戴爾Inspiron 靈越 1526(S510326CN)外觀方面:戴爾Inspiron 靈越 1526(S510326CN)採用新穎獨特的設計風格,邊緣設計巧妙,頂蓋的戴爾LOGO圖標採用金屬鑲嵌,凸顯戴爾的貴族氣質。屏幕上,採用15.4英寸TFT材質的WXGA寬屏設計,顯示效果不錯。
戴爾Inspiron 靈越 1526(S510326CN)配置方面:戴爾Inspiron靈越1526(S510326CN))採用了AMD炫龍64x2TL-60處理器,集成顯卡,2GBDDR2內存,160GB硬碟,DVDRW光碟機,預裝操作系統。
戴爾Inspiron 靈越 1526(S510326CN)介面方面:戴爾Inspiron 靈越 1526(S510326CN)包括4個USB 2.0,1394,8 in 1 card reader,HDMI Port以及8合1讀卡器;網路上內建10/100M乙太網卡以及802.11b/g無線網卡。編輯點評:戴爾Inspiron 靈越 1526(S510326CN)筆記本整機配置均衡,基本滿足消費者需求,目前官方售價僅為3999元,,感興趣的朋友可以撥打免費電話:座機:800-858-0410 手機:400-884-9431 近日筆者從經銷商處獲悉,海爾T621最新售價4349元,該機用了45納米無鉛環保工藝英特爾奔騰雙核處理器T4200,對於家用來說還是綽綽有餘,感興趣的朋友不妨同經銷商取得聯系。 海爾T621- T4200G20250BgH外觀方面:海爾T621-T4200G20250BgH的外觀首先令人眼前一亮,精緻的螺旋紋樣不僅契合女士的浪漫情懷,更可以彰顯男士的時尚藝術氣息。創新採用無噴漆環保材料,打造出華美的鋼琴烤漆外觀,洛可可的設計風格更彰顯擁用者品味個性。並以用業界領先的IMR工藝,保護屏幕避免外力沖擊。配置方面:海爾T621-T4200G20250BgH配備了45納米無鉛環保工藝英特爾奔騰雙核處理器T4200,性能更強、功耗更低。2MB內存,250GB硬碟,NVIDIA9300MGS顯卡,自帶256MB顯存,應用強大的物理加速引擎,加GPU超強的並行處理能力,將視覺享受上升到全新的水平,比8M系列GPU整體性能提升40%,影音播放和圖像編輯時,畫質更細膩自然,播放更流暢。海爾T621- T4200G20250BgH其他方面:海爾T621-T4200G20250BgH還採用了eSATA高速介面提供3Gbps傳輸速度,能讓數據傳輸更穩定,HDMI1.3高清介面全面實現340MHz的帶寬和10.2Gbps的速率,當與家中的高清電腦相連時,下載的高清大片肯定是一覽無遺。 編輯點評:海爾T621配置均衡滿足日常應用足以,降價之後性價比更為突出,喜歡的朋友可要抓緊了。[參考價格] 4349元
Thinkpad SL500有著不錯的性價比。該機採用了Intel 賽揚雙核 T1600處理器,整體性能足以滿足家庭用戶使用。目前該機最新售價為3800元,而且還有原裝包和滑鼠贈送,一起來看看吧。 Thinkpad SL500整機外觀外觀上,Thinkpad SL500打破傳統小黑的外觀設計,大膽的採用了鋼琴烤漆外殼設計,使得整機時尚且不失商務氣息,黑色的內飾與鍵盤,鍵盤正中經典的小紅帽設計依然存在。該機採用15.4寸高亮度寬屏,標准分辯率為1280×800,顯示效果出色。Thinkpad SL500外殼方面配置上,ThinkPadSL500(2746CA2)採用了Intel賽揚雙核T1600處理器,IntelGM45+ICH9M晶元組、1G內存、250G硬碟、DVD刻錄機、預裝WindowsVistaHomeBasic操作系統。顯卡方面採用了IntelGMA4500MHD集成顯卡,可以流暢運行一些小游戲。 Thinkpad SL500側面介面介面上,ThinkPadSL500(2746CA2)擁有4×USB2.0、1×1394、1×VGA、1×RJ45、1×RJ11、1組音頻輸入輸出介面、1×HDMI。網路方面:56KV.92數據機、10/100/1000M自適應乙太網卡、ThinkPadWi-Fiwireless802.11b/g。Thinkpad SL500鍵盤方面 編輯點評:Thinkpad SL500關注度一直很高,配置雖難稱主流但滿足日常應用足以,15.4寸高亮度寬屏可以獲得更好的影音效果。[參考價格]:3850元
東芝L332配備了T4200雙核處理器和GMAX4500HD集成顯卡,整體性能非常均衡,其價格也受到了很多人的關注。近日從經銷商處傳來喜訊,東芝L332最新報價僅為3800元,與以往相比有了100元的降幅,而且還有原裝包和滑鼠贈送,感興趣的朋友一起來看看吧。東芝L332外觀東芝L332在設計上延續了L300銀灰色商務的設計風格,大器卻帶一點沉穩。同時在鍵盤上方設了多媒體控制快捷鍵,看起來美觀大方,更加方便用戶娛樂操作。屏幕為14.1英寸寬屏顯示屏,解析度為1280×800。東芝L332鍵盤特寫東芝L332採用了IntelPentiumDual-Core(Penryn)T4200雙核處理器(主頻:2.0G,二級緩存:1024KB,前端匯流排:800MHz)。主板晶元組:IntelGM45+ICH9M。標配內存1024MBDDR2。硬碟,250GBSATA。內置DVD±RW光碟機。顯卡則為IntelMobileGMA X4500 HD集成顯卡。 東芝L332左右介面設計介麵包括有3個USB2.0介面,1個ExpressCard擴展卡插槽,1個4合1(SD,MS,MSPro,MMC)讀卡器,1個VGA介面,1個RJ11介面,1個RJ45介面,1組耳麥插孔,直流電源插孔以及安全鎖孔等。網路方面則是擁有10-100M網卡和802.11b/g無線網卡。東芝L332整體 編輯點評:東芝L332配置算不上主流但足以滿足日常使用,東芝做為一線品牌口碑也是很不錯的,目前3900元的售價確實很超值,感興趣的朋友不妨同經銷商取得聯系。[參考價格]:3800元
雖然惠普ProBook4411s(VA045PA)商務本剛剛到貨不久,但人氣卻是直線上升,編輯郵箱幾乎每天都有網友詢問這款本的信息。該機採用了英特爾酷睿2雙核T6570處理器和HD4330獨立顯卡,目前最新售價為4800元,與以往相比又有了一百元的降幅,一起來看看吧。 惠普 ProBook 4411s外觀惠普 ProBook4411s採用了商務筆記本硬朗的線條設計,但是卻應用了十分時尚的黑色烤漆表面工藝,在商務與時尚中獲得了相當好的平衡。屏幕方面採用了寬高比為16:9 的 14 英寸高清寬屏顯示屏,有Merlot或高光Noir(黑色)兩種表面可供選擇。惠普 ProBook 4411s鍵盤特寫在配置上,該款機採用英特爾酷睿2雙核T6570處理器(2.1GHz主頻,800MHz前端匯流排,2MB二級緩存),標配1GB內存,250GB硬碟,顯卡採用ATI MobilityRadeon HD 4330 512M獨立顯卡,內置DVD刻錄,200萬像素攝像頭。 惠普 ProBook 4411s左右介面設計惠普 ProBook 4411s整體 編輯點評:惠普 ProBook 4411s整體性能非常強勁,同時外觀的設計也很時尚,降價之後性價比更為突出,喜歡的朋友可要抓緊了![參考價格] 4800元
宏碁AS4736Z-421G25MN採用了非常適合家用的Intel奔騰雙核T4200處理器搭載1GBDDR3內存、250GB硬碟以及NV105獨顯,整體性能非常強勁,並且促銷期間僅售3999元,還有原裝包、滑鼠贈送,感興趣的朋友不妨同經銷商取得聯系。 宏碁AS4736Z-421G25MN外觀方面:宏碁AS4736Z-421G16MN仍採用了二代深色寶石外觀設計,整機線條圓潤,讓人一見傾心。屏幕方面:14英寸麗鏡寬屏,集成30萬像素攝像頭,作為一款消費型筆記本還採用LED背光屏,顯示效果相當好。宏碁AS4736Z-421G25MN配置方面:宏碁AS4736Z-421G16MN採用了Intel奔騰雙核T4200處理器主頻2.0GHZ,1GB DDR3內存、250GB硬碟、NV105M獨立顯卡、DVD刻錄、預裝Linpus Linux BE操作系統。 宏碁AS4736Z-421G25MN介面方面:宏碁AS4736Z-421G16MN擁有3個USB2.0介面、1個ExpressCard擴展卡插槽、1個RJ11介面、RJ45、1個VGA和1個原生HDMI輸出、1組耳麥插孔、直流電源插孔以及安全鎖孔、1個內置多合一讀卡器(xD,SD,MS,MSPro,MMC)等。網路方面,本本提供了56K Modem,10-100M自適應網卡以及802.11b/g/n無線網卡。編輯點評:整體來看宏碁AS4736Z-421G25MN筆記本,性能非常不錯,目前售價僅有3999元可謂非常超值,喜歡的朋友可要抓緊了。[參考價格]:3999元
暑促即將鳴槍,其實要想在暑促中獲得較高的人氣,性價比是最有力的武器。今天給大家介紹的七喜V88就有著非常高的性價比,該機採用了全新45nm處理器T6400、NV9300獨顯整機性能上十分強勁。經銷商最新報價僅為4199元,喜歡的朋友可要抓緊了。 「瑩彩燙印」技術彰顯高檔、品味V88與V86採用統一模具,依舊是彰顯高檔的「瑩彩燙印」技術,在色彩的運用、細節修飾等方面,側重於表達年輕、個性、時尚等元素,符合亞洲人的審美觀,相比先前的V系列產品,V86、V88這類的產品無疑更能打動年輕類消費群體。V88也是基於英特爾移動平台,性能更為穩定。不過相比V86,配置上最明顯的改變是處理器已經採用了更強勁的45nm製程工藝酷睿2T6400處理器,相比V86的英特爾T4200雙核處理器,性能上有了一定提升,T6400處理器也是目前中高端價位機型上比較常見的酷睿2核處理器,性能上接近P7350,而這款機器搭配了同樣來自英特爾的PM45晶元組,保證了系統更為穩定而出色的發揮。獨顯還在,輕松搞定游戲、高清今年七喜推出的V系列新品都有個明顯特徵:搭配獨立顯卡!這款V88同樣保留了這個「優良傳統」——裝備了Nvidia的GF9300MGS顯卡,256M獨立顯存,支持DX10,能助游戲玩家在極品飛車、CS等夢幻游戲中,體驗到急速、逼真絢麗的場景。而在高清娛樂方面,GF9300MGS顯卡對於高清電影也有著很好的硬體解碼能力,與家人一起享受高清盛宴也是輕而易舉。周邊配置全面,主流其它方面與V86配置一樣,也是2G內存,250G硬碟,以及DVD刻錄光碟機這樣的豪華配置,由於採用主流的14英寸寬屏,這款機器僅2.2Kg,移動性能出色,V88也在屏幕上方內置了200W像素的高清攝像頭,並內置了無線網卡,能輕松與家人即時溝通,商務人士也能輕松進行網上視頻會議,相當便利。V86的介面也是相當豐富,除了USB、VGA、Express Card、4合1讀卡器等外,還帶有HDMI、eSATA等時髦介面。整機重量控制在2.4Kg。方便用戶攜帶。七喜V88、V86凸顯主流風范編輯點評:作為七喜電腦全力出擊中低價位時尚市場的主打機型,七喜V88外觀高雅美觀,而採用更強處理器以及獨顯、2G內存、DVD刻錄、無線等諸多主流配置後,能給用戶帶來超越級別的性能享受。[商家價格] 4199元
今天給大家介紹的是Gateway藍灰脊紋的T6346c,該機配備了英特爾奔騰雙核處理器T3400和250G大容量硬碟,整體性能非常均衡,目前經銷商報價僅為3498元,性價比不錯,感興趣的朋友不妨同經銷商取得聯系。
Gateway T6346c 整體色調方面,極具魅力的藍色再加上鋼琴烤漆的噴漆工藝,讓整機看起來高貴、奢華,極具檔次。頂蓋中間位置設置有醒目的「Gateway」Logo,銀灰色標識在深藍色頂蓋的映襯下增強了整體層次感。該機採用的是14.1寸超亮寬屏液晶顯示器,解析度為1280×800,機身尺寸為329×248×25-35mm,重量約為2.5Kg。。
Gateway T6346c GatewayT6346c的內部設計是外觀方面的最大亮點,其鍵盤四周採用銀色金屬拉絲工藝製成,在穩重、大方的風格下體現出一絲時尚質感,視覺效果極佳。配置方面:GatewayT6346c採用英特爾奔騰雙核處理器T3400(2.16GHz,1MB二級高速緩存,667MHzFSB),搭配IntelGL960主板晶元組,標配1GDDR2內存和250GSATA硬碟,集成英特爾圖形多媒體加速器X3100(具備最大384MB動態視頻顯存),預裝了Linux操作系統。內置802.11a/b/g無線上網模塊和百兆網卡,DVD刻錄光碟機。介面方面:3個USB埠,1個VGA 連接器,1個RJ-45乙太網埠,1個耳機/揚聲器/線路輸出插孔,1個麥克風插孔,1個Kensington鎖槽,1個交流適配器連接器。編輯點評:Gateway T6346c整體配置非常均衡,無論是辦公還是家用都可以從容應付,目前3498元的售價也很超值,喜歡的朋友可要抓緊來了。[參考價格] 3498元DELL是老廠家了 散熱比較好
華碩是近年來突出性價比的廠家 也注重了實際效果
惠普也不錯 但是惠普機器散熱不好 不過不會死機
這三個品牌要是在筆記本中比較的話我覺得
戴爾和惠普都是第一
華碩勉強第二

⑷ 軟體開發對電腦配置要求高嗎

Win、Mac、Linux是常用的三大操作系統,因為不同的崗位需求對不同的電腦性能要求也不一樣。比如像前端開發、後端開發、運維、演算法、嵌入式等這些崗位的要求都還不太一樣。
1.前端開發
不管是用「三件套」的原生技術棧時代,也就是所謂的html、css、javascript。還是後來的「封裝庫」時代,也就是有了jQury和ajax的時代。亦或是現在如今比較火的「組件式」開發時代,有angular、react、Vue這些組件化框架開發時代。我們以最新的為例來說:首先,你一般會需要一個命令行終端,然後前端開發也需要一個比較大的IDE環境,現在我看好像用webstorm比較多,前端開發再厲害點的就還需要一個vscode或者是atom也就是文本編譯器,最後就還需要一個瀏覽器。所以前端開發常見也就使用這個四五個開發軟體,所以說前端開發對於電腦性能沒什麼要求,因為它不怎麼吃電腦性能沒有什麼特殊要求,正常配置就可以了。當然唯一的要求可能就是屏幕解析度和屏幕色准,不管怎麼說都是跟圖形化的東西打交道。所以從這些角度上來講,我是推薦還是用一台Mac來做前端開發比較好,因為它屏幕還是挺不錯的。關於顯卡的話,顯卡不是必須的,但是具備最好,因為前段也有可能會接觸到一些UI設計方面的應用軟體。綜上所說,前段其實不耗電腦性能:8G內存,一個固態SSD基本上就夠了。
2.後端開發
以java後端開發為例,需要一個大的IDE,一般是eclipse或者是intellij IDEA(後者現在更多)、瀏覽器(Google)、而資料庫可視化可能需要類似於Navicat這種軟體、前後端調試介面需要Postman、編輯器vscode或者是atom、後端開發也需要命令行終端、遠程連接伺服器就需要一個SSH終端。當時我在自己2016款中配MacBook pro上做過實驗,把java開發的所需要的軟體全部打開會耗費多少性能。實驗證明我自己的這台16款中配8G內存的MacBook pro是非常能勝任的,運行非常流暢。後端開發的話我建議內存盡量8G及以上、系統盤是SSD(256G)基本夠了、顯卡就看自己的喜好就行,如果你要搞大數據、虛擬化、編程環境復雜一些的技術,需要虛擬機支持的話就需要你的電腦CPU、內存、硬碟都得要再上一個台階了。
1.AI(人工智慧)
如果你是做AI、機器學習、圖形圖像處理演算法,除了在CPU、硬碟、內存(16G+)要求比較高之外還需要GPU的加持。因為我們以前在實驗室做圖形圖像處理和一些模式處理的演算法的時候就會用到並行計算,這個時候就需要GPU的加速了。
4.運維
其實我覺得運維崗對客戶端機要求是最低的,因為運維絕大部分時間都是在一個遠程終端連接到一個遠程伺服器上去進行操作。所以你本地客戶機基本上一個SSH終端就能搞定一切,厲害些的可能就還需要一些文件對比工具和編譯器等,很小的一些小工具就可以了。
5.嵌入式開發
如果你是做嵌入式開發或者跟硬體打交道的話,那盡量還是在Windows或則是Linux下做比較好,Mac不是一個好的選擇,因為Mac上很多嵌入式開發的軟體確實是沒有。
所以說在大部分情況下我還是覺得一台中配的MacBook pro就可以搞定一切,最好是15寸的(效率相對而言高一些),具體哪一款的話,我自己用過:14、15、16、17、18款都用過,在我感覺16款的體驗稍微的好一點點,但是差別也沒那麼大,因人而議。如果說你MacBook pro不想買新的話,買一個二手的也是不錯的選擇,像14款的中配MacBook pro就是13寸的8G內存156G基本上也就是4000多塊錢。而15款二手的MF840差不多也就賣5000塊錢。我自己的現在是16款的帶Touch Bar的這個MacBook pro 8G內存、256SSD、i5處理器的話頂天也就只能賣一個7000塊錢。所以說二手的性價比是最高的。除了MacBook pro之外的話還有ThinkPad T系列也還不錯。

⑸ 如何設計模塊介面 模塊介面設計技巧

每一個大的系統都是有許多模塊系統組成的,系統的開發是一個很大的工程,開發起來得難度也是比較大。因此任何一個有一定規模系統,通常會把系統做一定分解降低分析設計開發的難度,模塊劃分是一個比較常見的方式,而模塊與模塊之間則是通過介面設計將它們整合在一起的。 實踐中,極有可能出現兩種狀況:介面維護失控或者過嚴而死板(而影響開發)。介面失控是因為介面的維護太過隨意,因為A模塊的需要就輕易在B模塊中添加一個介面(方法),導致該介面(方法)非獨立性(基本上只給模塊A的這個功能點使用),或者是介面的控制過嚴,導致或者工作效率不高,或者介面的易用性不好。 原因在於:介面是兩個模塊間的耦合,而發生的種種問題在於模塊耦合太過緊密;同時實踐中,把模塊對外提供的介面,與模塊需要實現的外部模塊的介面混為一談。 根據指導原則:為了降低耦合只有在中間加一層。一種可行的實踐是:不輕易為模塊設計對外提供的介面(方法),除非是通過重構得來的;模塊對外提供兩種類:一個是需要外部模塊實現的介面(介面設計從本模塊需要出發,當然每個介面盡管是為某個功能點服務,但也要注意其在模塊內通用性),另一個是其它模塊要求本模塊實現的介面的實現類。 即:A模塊擁有一些需要B模塊實現的介面(A模塊對B模塊的要求),而B模塊中也有要求A模塊實現的介面,因而A有這些介面的實現類。 這種實踐方式的好處在於:模塊的介面就多了一層隔離降低了耦合,把介面的通用性和介面的適應性分離,又明確了模塊的邊界,使得介面在日後的優化和調整有了緩沖。介面設計的關鍵是能夠將系統的每一個模塊能夠很好的整合在一起,而且能夠讓系統能夠更好的運行。模塊介面設計也是實現系統功能實現整體化的手段,而且是有益於系統拆分、整合等手段所必備的。

⑹ 介面設計的主要依據是什麼介面設計主要包括哪些內容

軟體與用戶之間的交互設計

⑺ 求操作系統介面:Windows命令介面 設計(C++編的) 謝謝

基於XML的配置文件訪問介面設計和實現(1)

目錄

摘要

配置文件結構

XmlConfigReader類的實現

XmlConfigReader類的使用

摘要

在進行程序開發過程中,經常要將一些程序設置/使用的信息儲存起來.由於這些信息和程序的設置/使用相關,與程序有相當的獨立性,所以不可能硬編碼到程序中.在這個時候我們選擇使用基於Xml的配置文件進行存儲.Microsoft的.NET Framework提供了一系列的基於.Config文件的讀取的類,如System.Configuration 命名空間提供的AppSettings等類.但是此命名空間提供的類只能對配置文件進行讀取,不能進行設置.所以在這里,我們實現自己的一個基於Xml的配置文件的類XmlConfigReader/XmlConfigWriter.

配置文件的結構

為了達到與原有的,系統自帶的(.Config)配置文件的兼容性,我們選擇使用類似.Config 文件的結構.示例如下:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<appSettings>

<add key="TimeOut" value="5000"/>

<add key="UserName" value="client7" />

<add key="FileServerPort" value="8050" />

<add key="SpliteCharsForCMD" value=":"/>

<add key="SpliteCharsForItem" value=";"/>

<add key="SpliteCharsForSubItem" value=","/>

</appSettings>

<SockBaseSettings>

<addd key="ServerIP" value="localhost"/>

</SockBaseSettings>

</configuration>

所有的要設置的信息都放在Configuration節點的子節點(如appSettings/SockBaseSettings)的子節點中,這種結構有助於將不同的設置的信息進行歸類/統一.結構和系統的.Config結構基本類似.這樣就可以很方便的將此自定義的結構轉為.Config文件.

XmlConfigReader類的實現

現在文件的基本結構已完成了,現在就開始編碼,完成XmlConfigReader.

由於配置文件是以文件的形式放在硬碟上面的,所以這個XmlConfigReader類在解析Xml文件前得得到文件的路徑.

public class XmlConfigReader

{

private string _filepath;

public XmlConfigReader(string filepath){

_filepath = Path.GetFullPath(filepath).ToUpper();

}

}

好,現在可以得到文件路徑了.然後就是對配置文件進行解析了.在這里,我們選用.NET Framework提供的System.Xml命名空間中的輕量級的XmlTextReader來對配置文件進行解析.對應的XmlConfigReader中的函數定義如下:

public string Process(string sectionName,string key){

bool inConfiguration = false;

bool inSection = false;

string values;

XmlTextReader reader = new XmlTextReader(_filepath);

while( reader.Read()){

if( reader.IsStartElement()){

if( reader.Prefix == String.Empty)

{

if( reader.LocalName == "configuration")

{

inConfiguration = true;

}

else if( inConfiguration == true){

if( reader.LocalName == sectionName){

inSection = true;

}

else if( inSection && reader.LocalName == "add"){

if( reader.GetAttribute("key") == null || reader.GetAttribute("value") == null)

{

throw new Exception(sectionName + " key or value is null");

}

if( reader.GetAttribute("key") == key){

values = reader.GetAttribute("value");

break;

}

}

}

}

}

}

reader.Close();

return values;

}

通過XmlTextReader的Read()函數對Xml文件中的節點進行遍歷.同時先判斷是否屬於configuration節點中,再判斷是否屬於相應的sectionName中.只有在這兩部分同時成立的時候才判斷是否是相應的Key.如果是,得到其Value,並返回.

XmlConfigReader類的使用

好了,現在通過XmlConfigReader可以對配置文件進行讀取了,這里我們看看實際使用的代碼:

public class TestXmlConfigReader{

public void GetValues(){

XmlConfigReader reader = new XmlConfigReader(@"AppConfig.xml");

String Temp;

// Get appSettings username value

Temp = reader.Process("appSettings",」UserName");

// Get SockBaseSettings ServerIP value

Temp = Reader.Process(「SockBaseSettings」,」ServerIP」);

}

}

總結

通過XmlConfigReader類,我們可以很方便的自定義我們自己的配置文件.

基於XML的配置文件訪問介面設計和實現(2)

目錄

摘要

XmlConfigWriter類的實現

XmlConfigWriter類的使用

摘要

在進行程序開發過程中,經常要將一些程序設置/使用的信息儲存起來.由於這些信息和程序的設置/使用相關,與程序有相當的獨立性,所以不可能硬編碼到程序中.在這個時候我們選擇使用基於Xml的配置文件進行存儲.Microsoft的.NET Framework提供了一系列的基於.Config文件的讀取的類,如System.Configuration 命名空間提供的AppSettings等類.但是此命名空間提供的類只能對配置文件進行讀取,不能進行設置.所以在這里,我們實現自己的一個基於Xml的配置文件的類XmlConfigReader/XmlConfigWriter.

XmlConfigWriter類的實現

由於要對配置文件進行寫入,而且可能寫入的次數比較多.所以這里我們不使用輕便的XmlTextWriter,使用XmlDocument.XmlDocument可以在內存中修改所有的Xml的節點,只有等到顯式的調用Save函數的時候才會保存Xml文件.在有大量修改的時候,性能要好一些.

同樣的,先實現XmlConfigWriter的構造函數

public class XmlConfigWriter

{

private string _filepath;

private XmlDocument doc ;

public XmlConfigWriter(string filepath)

{

_filepath = Path.GetFullPath(filepath);

doc =new XmlDocument();

doc.Load(_filepath);

}

}

通過構造函數,將配置文件的路徑傳進去,同時調用XmlDocument的Load方法,將此文件載入到內存中.

這里我們使用的是XmlDocument類.它實現 W3C 文檔對象模型 (DOM) 級別 1 核心 (Level 1 Core) 和核心 DOM 級別 2 (Core DOM Level 2)。DOM 是 XML 文檔的內存中(緩存)樹狀表示形式,允許對該文檔的導航和編輯.通過XmlDocument,我們就可以很方便的在內存中直接操作節點.

.對配置文件的寫入,不外忽三種,一種就是新插入一個節點,一種就是對現有節點的修改,最後一個就是刪除現有的節點.我們首先從插入開始入手.代碼如下:

private XmlNode CreateXmlNode(string localname){

return doc.CreateNode(XmlNodeType.Element,localname,"");

}

private XmlAttribute CreateXmlAttribute(string localname){

return doc.CreateAttribute("",localname,"");

}

public void AddSection(string section){

XmlNode secNode = doc.SelectSingleNode("/configuration/"+section);

if(secNode != null){

return;

}

doc.DocumentElement.AppendChild(CreateNode(section));

}

public void AddKey(string section,string key,string value){

XmlNode secNode = doc.SelectSingleNode("/configuration/"+section);

if( doc.SelectSingleNode("/configuration/" + section + "/add[@key=\"" + key + "\"]") != null)

{

return;

}

XmlNode chi = CreateXmlNode("add");

XmlAttribute att = CreateXmlAttribute("key");

att.Value = key;

chi.Attributes.Append(att);

att = CreateXmlAttribute("value");

att.Value = value;

chi.Attributes.Append(att);

secNode.AppendChild(chi);

}

對於配置文件的插入,有兩種情況,一個就是插入一個新的Section節點(即appSettings/SockBaseSettings這樣的節點),一個就是在當前的Section節點下面插入一個新的add節點.在上面的代碼中,對於插入節點的操作,都是首先通過doc的SelectSingleNode函數來判斷是否已存在此同名節點,如果存在,則直接return,避免創建同名的節點.但是,由於在最終使用的add節點是分屬於不同的Section節點的,所以只是判斷在同一個Section節點下面的此節點不能同名.

如果不存在同名的節點,就通過secNode.AppentChild函數將此新建的(通過CreateXmlNode函數)節點加入到doc對象中.同時,對於add節點,通過CreateXmlAttribute函數及XmNode.Attributes.Appent函數將其key / value屬性加入到此節點中.這樣,插入操作就完成了.

接著我們來完成刪除操作.刪除操作直接通過XmlDocument的SelectSingleNode得到目標節點的父節點,再通過XmlNode.RemoveChild操作將其刪除.代碼如下:

public void DeleteSection(string section){

XmlNode secNode = doc.SelectSingleNode("/configuration/"+section);

doc.DocumentElement.RemoveChild(secNode);

}

public void DeleteKey(string section,string key){

XmlNode secNode = doc.SelectSingleNode("/configuration/" + section + "/add[@key=\"" + key + "\"]");

if(secNode != null)

{

secNode.ParentNode.RemoveChild(secNode);

}

}

現在開始修改操作.對於修改操作,思路是這樣的,首先通過XmlDocument的SelectSingleNode搜索,看是否有滿足條件的節點.如果沒有,直接return,如果存在,則分兩情況.對於add節點,只是直接修改其value屬性.對於Section節點,則是通過遍歷把其下所有的子節點(add節點)得到,再把此Section節點刪除,再生成一個新的節點(這個新的節點的Name就為要設置的值),再把得到的所有子節點再賦給這個新的節點.代碼如下:

public void ModifySection(string oldSection,string newSection){

XmlNode secNode = doc.SelectSingleNode("/configuration/"+oldSection);

XmlNodeList list = secNode.ChildNodes;

doc.DocumentElement.RemoveChild(secNode);

secNode = doc.CreateNode(XmlNodeType.Element,newSection,"");

foreach( XmlNode i in list){

secNode.AppendChild(i);

}

doc.DocumentElement.AppendChild(secNode);

}

public void ModifyKey(string section,string key,string value){

XmlNode secNode = doc.SelectSingleNode("/configuration/" + section + "/add[@key=\"" + key + "\"]");

if(secNode != null)

{

secNode.Attributes["value"].Value = value;

}

}

好了,插入,修改,刪除操作到現在基本完成了,但是現在還只是在內存中進行操作,還不是對實際的文件進行操作.這個時候,我們就還得通過XmlDocument.Save函數把內存中修改好的Xml文件寫入到文件中去.代碼如下:

public void Save(){

doc.Save(_filepath);

}

public void Save(string filepath)

{

doc.Save(filepath);

}

XmlConfigWriter類的使用

使用方法很簡單.先產生一個XmlConfigWriter對象,通過構造函數把配置文件傳進去,再通過Add/Modify/Delete等函數進行操作.代碼如下:

XmlConfigWriter Writer = new XmlConfigWriter(@」appconfig.xml」);

Writer.AddSection(「appSettings」);

Writer.AddKey(「appSettings」,」ServerIP」,」localhost」);

Writer.ModifyKey(「appSettings」,」ServerIP」,」127.0.0.1」);

Writer.ModifySection(「appSettings」,」SockBaseSettings」);

Writer.DeleteKey(「SockBaseSettings」,」ServerIP」);

Writer.DeleteSection(「SockBaseSettings」);

Writer.Save();

總結

通過編寫XmlConfigWriter,我們學會使用XmlDocument的使用.

基於XML的配置文件訪問介面設計和實現(3)

目錄

摘要

增加緩存支持

增加配置文件監視

增加ConfigurationSettings類

摘要

前面的兩篇中,我們實現了XmlConfigReader和XmlConfigWriter的基本功能.由於XmlConfigReader的實現方式是每請求一次,就去解析配置文件一次,性能很低下.同時,為了更方便使用,我們增加一個ConfigurationSettings類,用來調用XmlConfigReader和XmlConfigWriter,使之用起來和System.Configuration中的類使用方式一樣.

增加緩存支持

由於XmlConfigReader的實現方式是請求一次,解析配置文件一次,而且配置文件的信息在程序運行的時會大量使用,這樣子顯然效率太低.因此,這里就要使用到緩存.

緩存,其實就相當於一個靜態的變數,在整個程序運行時是唯一的,通過這樣的一個變數,把信息存儲到這個變數裡面,在程序的其它地方就可以直接得到這個信息了.從而避免了頻繁的解析配置文件.這里,我們選擇使用Hashtable做為緩存變數.

在MSDN中,我們可以查到System.Configuration命名空間中的AppSettings類返回的是一個NameValueCollection(Key/Value鍵值對).為了方便使用,我們將配置文件解析後的信息也存成NameValueCollection這樣的集合.

這樣定義好了後,對於Hashtable中的Key設置為Section節點的名字(appSettings/SockBaseSettings),其Value值即為此節點的所有子節點的NameValueCollection類的對象.

修改代碼.給XmlConfigReader增加一個靜態Hashtable變數,並修改相關函數.把得到的信息直接以NameValueCollection的形式存入到此Hashtable中.

private static Hashtable confTypes = new Hashtable();

private string rootname;

public void Process(){

XmlTextReader reader = new XmlTextReader(_filepath);

while( reader.Read()){

if( reader.IsStartElement()){

#region Analyze the files

if( reader.Prefix == String.Empty)

{

if( reader.LocalName == "configuration")

{

inConfiguration = true;

}

else if( inConfiguration == true){

if(reader.LocalName == "add")

{

if( reader.GetAttribute("key") == null || reader.GetAttribute("value") == null)

{

throw new Exception(rootname + " key or value is null");

}

AddKey(tables,reader.GetAttribute("key"),reader.GetAttribute("value"));

}

else

{

rootname = reader.LocalName;

}

}

}

#endregion

}

else if ( reader.LocalName == "configuration"){

inConfiguration = false;

}

}

reader.Close();

}

private void AddKey(string key,string value){

NameValueCollection collection ;

if(confTypes.ContainsKey( rootname )){

collection = (NameValueCollection) confTypes [rootname];

}

else{

lock(confTypes.SyncRoot){

collection = new NameValueCollection();

confTypes.Add( rootname,collection);

}

}

collection.Add(key,value);

}

上面代碼中,我們修改了Process函數.把原來的直接return結果的地方改成調用AddKey函數.通過一個類成員 rootname臨時儲存當前的SectionName,通過AddKey把得到的Key/Value加入到Hashtable中.

現在這樣修改後,就不能直接通過Process得到我們想到得到的Key的Value了.所以我們再寫一個函數,

public NameValueCollection GetCollection(string SectionName){

if( confTypes.ContainsKey(SectionName)){

return (NameValueCollection)confTypes[SectionName];

}

else{

throw new Exception(confName + " is not found in XmlConfiguration files");

}

}

這里,我們直接通過SectionName得到此節點所有的子節點的NameValueCollection集合.這樣,我們就可以得到我們想要的值了.

增加配置文件監視

上面的代碼實現了配置文件的緩存.大大提高了靈活性.但是存在一個問題,就是,如果配置文件修改了,這個緩存不會自動更新.

要解決這個問題,我們得使用FileSystemWatcher這個類,用來訂閱文件修改消息,進而更新緩存.由於在第一次解析前就要把此配置文件加入到監視文件表中,所以我們修改XmlConfigReader,增加一個靜態的FileSystemWatcher,用來保存監視文件的對象,增加一個靜態的Bool值表明是否修改過.再修改構造函數,使配置文件在一開始就加入到監視列表中.代碼如下:

Private static FileSystemWatcher watch = new FileSystemWatcher();

Private static bool isModify = true;

public XmlConfigReader(string filepath){

_filepath = Path.GetFullPath(filepath).ToUpper();

watch.IncludeSubdirectories = false;

watch.Path = Path.GetDirectoryName(filepath);

watch.NotifyFilter = NotifyFilters.Size | NotifyFilters.LastWrite;

watch.Filter = Path.GetFileName(filepath);

watch.Changed += new FileSystemEventHandler(Change_Even);

watch.EnableRaisingEvents = true;

}

由於是通過事件機制實現文件修改通知的,所以我們還要實現Chane_Even這個函數,通過這個函數修改isModify的值.

private void Change_Even(object sender, FileSystemEventArgs e){

isModify = true;

}

這樣子,對於配置文件的監視的代碼就完成了,現在就是修改我們的GetCollection代碼的時候了.

修改後的代碼如下:

public NameValueCollection GetCollection(string SectionName){

if( isModify ){

lock(confTypes.SyncRoot){

confTypes.Clear();

Process();

}

isModify = false;

}

if( confTypes.ContainsKey(SectionName)){

return (NameValueCollection)confTypes[SectionName];

}

else{

throw new Exception(confName + " is not found in XmlConfiguration files");

}

}

到現在,整個XmlConfigReader的代碼已完成了,可以實現對文件的監視,從而動態修改緩存中的值.

增加ConfigurationSettings類

為了便於使用,我們增加了一個ConfigurationSettings的類,使用他的用法和System.Configuration命名空間中的類的用法一樣.代碼定義如下:

public class ConfigurationSettings : XmlConfigWriter

{

private static string _filepath = @"AppConfig.xml";

public static string DefaultFilePath

private static XmlConfigReader reader;

{

get{return _filepath;}

set{_filepath = Path.GetFullPath(value);}

}

public static NameValueCollection AppSettings

{

get{

if( reader == null){

reader = new XmlConfigReader(DefaultFilePath);

}

return reader.GetCollection("appSettings");

}

}

public static NameValueCollection GetConfig(string sectionName){

get{

if( reader == null){

reader = new XmlConfigReader(DefaultFilePath);

}

return reader.GetCollection(sectionName);

}

}

⑻ 想組裝個電腦價位便宜點做設計用的,需要什麼配置,請大家幫忙告訴我下。

PCPOP配置單

圖片 類型 產品名稱 數量 當時價格 今日價格

CPU Intel 賽揚D 360(散) 1 ¥305 ¥305
CPU說明:Celeron D 360 3.46G 生產廠商:Intel CPU針腳數目:775Pin 二級緩存容量:512KB CPU系列型號:Celeron D 核心類型:CedarMill 處理器頻率:3.46GHz 處理器倍頻:26

主板 磐英 945PL天尊版 1 ¥399 ¥399
主板晶元組:INTEL945PL CPU插槽:Socket 775 CPU類型:INTEL775介面全線處理器 主板匯流排:FSB 800MHz 支持內存類型:DDR2 顯卡介面標准:PCI Express ×16 主板結構:ATX 電源迴路:四相供電

內存 超勝 1GB DDR2 800 1 ¥315 ¥315
內存主頻:800MHz 內存適用類型:台式機 內存傳輸類型:DDR2 內存容量:1024MB 顆粒封裝:FBGA 介面類型:240Pin 內存電壓:1.8V 傳輸標准:PC2-6400

硬碟 三星 80G/7200轉/8M/串口(HD... 1 ¥340 ¥340
硬碟容量:80GB 硬碟介面類型:Serial ATA 適用類型:台式機 單碟容量:160GB 硬碟轉數:7200rpm 緩存:8MB 傳輸規范:SATA-300 盤體尺寸:3.5英寸 碟片數量:1 平均尋道時間:8.9ms NCQ:支持 磁頭數量:1

顯卡 祺祥 X1650GT 512M HM DDR3雙... 1 ¥570 ¥570
顯卡核心:X1650GT 顯卡核心頻率:550MHz 顯卡核心工藝:80納米 顯存位寬:128bit 顯卡顯存容量:512MB 顯存類型:GDDR3 顯存速度:1.4ns 顯存封裝:FBGA 顯存頻率:1400MHz 視頻輸出:分量 顯示器介面:VGA+DVI

CRT顯示器 AOC 995F 1 ¥990 ¥990
CRT顯示器尺寸:19英寸 顯示器介面:15針 D-sub 顯像管類型:純平 帶寬:203MHz 柵距/水平:0.21mm 垂直掃描頻率:50-160Hz 解析度:1600×1200 認證標准:CUL/FCC/CCC/TCO99

光碟機 LG GDR-8164B 1 ¥145 ¥145
光碟機種類:DVD-ROM 介面類型:ATAPI/EIDE 緩存區容量:256KB 光碟機適用類型:台式機 刻錄機規格:DVD±RW/DVD-RAM 最大DVD讀取速度:16速

機箱 金河田 颶風8197b 1 ¥235 ¥235
機箱類型:標准機箱 機箱樣式:立式 機箱結構:ATX/microATX 標配電源:金河田355WB 3C 其他特性:外觀大方,顏色協調,配高亮時尚藍色指示燈 5.25寸倉位數:4個 重量:5.9kg

鍵鼠套裝 明基 無敵套裝 1 ¥80 ¥80
鍵盤介面類型:USB 鍵盤連接方式:有線 滑鼠介面類型:USB 滑鼠連接方式:有線

配置說明
3400