Search
Pages
-
Recent Posts
- 思科CCNA考試費1月15日開始漲價$295USD
- CCIE Workbook v5.0
- 一次通過CCIE實驗室考試的有效實驗
- SharePoint 2007 新手教程
- RedHat Unix 與 linux 系統管理技術手冊 (第4版)
- SharePoint 2010 Workflows 實戰
- Android系統原理及開發要點詳解
- Android基礎教程 (中文譯版)
- Mac OS X Directory Services 10.6 9L0-624
- Mastering SQL Server 2008
- Juniper Networks JNCIA-Junos認證介紹
- 一星期學會 Adobe Flex 4(Flex in a Week)
- GNU Make 專案管理(第三版)
- MySQL必知必會(MySQL Crash Course)
- CCNA Security網路安全認證介紹
- CCNA Service Provider Operations(CCNA SP Ops)認證介紹
- [PDF] HTML開發王
- [PDF]C++程式設計教程—基於Visual Studio 2008(簡體書)
- 新版CCDP 642-874 ARCH考試介紹
- MCITP Enterprise Desktop Support Technician 7 認證介紹
Categories
Tags
链接表
IT Certification- CCNA, CCENT(ICND1, ICND2) and CCDA Exam Price Increases Effective January 16, 2012
- CompTIA Storage+ Powered by SNIA Certification
- Adobe Dreamweaver CS5 ACE Certification Exam
- Adobe InDesign CS5 ACE Certification Exam
- Adobe Photoshop CS5 ACE Certification Exam
- Adobe Certifications – Adobe Certified Professional Program
- Zend Certifications (PHP and Framework)
- Zend Certified Engineer (ZCE) Zend PHP 5.3 Certification
- Zend Certified Engineer(ZCE) Zend Framework Certification
- Java SE 6 Update Release Notes
Archives
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- April 2011
- March 2011
- February 2011
- January 2011
- December 2010
- November 2010
- October 2010
- September 2010
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- December 2008
Monthly Archives: December 2009
基於Oracle 高級複製功能的數據庫同步研究與應用
摘要:隨著數據庫的廣泛使用和網絡的迅速發展,數據庫同步技術的研究一直是一個熱點。本文介紹了Oracle 的高級複製功能的相關概念及提供的功能。接著分析比較了幾種網絡間數據庫同步方法,並總結了基於Oracle 高級複製功能的同步的優勢。最後通過一個具體的數據庫同步需求,介紹一種基於Oracle高級複製功能的數據庫同步方案的具體實現。 1.引言 數據庫系統是現代企業運作和管理自動化系統的重要組成部分。在Internet 飛速發展的今天,數據庫一方面向集中化,大型化方向發展,但應用卻在向著分散化,小型化的方向延伸。對於越來越多的企業分支機構和辦公人員,他們需要隨時查詢和更新數據庫,而他們所需要操作的一般並不是數據庫的全部,而往往只是與之緊密相關的少量數據,但少量的數據必須與企業中心數據庫同步更新。如何根據實際情況有效地解決數據庫系統的數據同步問題已成為企業或系統的整個數據庫系統應用的核心環節。 點擊下載:Oracle高級複製功能的數據庫同步研究與應用
學習Java語言的重要含義
1. Java是目前使用最為廣泛的網絡編程語言之一。它具有簡單,面向對象,穩定,與平台無關,解釋型,多線程,動態等特點。 2.簡單Java語言簡單是指這門語言既易學有好用。不要將簡單誤解為這門語言很乾癟。你可能很贊同這樣的觀點英語要比阿了伯語言容易學。但這並不意味著英語就不能表達丰富的內容和深刻的思想,許多文學若貝爾獎的作品都是英文寫的。如果你學習過C++語言,你會感覺Java很眼熟,因為Java中許多基本語句的語法和C++一樣,像常用的循環語句,控制語句等和C++幾乎一樣,但不要誤解為Java是C++的增強版,Java和C++是兩種完全不同的語言,他們各有各的優勢,將會長期並存下去,Java語言和C++語言已成為軟件開發者應當掌握的語言。如果從語言的簡單性方面看,Java要比C++簡單,C++中許多容易混淆的概念,或者被Java棄之不用了,或者以一種更清楚更容易理解的方式實現,例如, Java不再有指針的概念。 3.面向對象基於對象的編程更符合人的思維模式,使人們更容易編寫程序。在實際生活中,我們每時每刻都與對像在打交道。我們用的鋼筆,騎的自行車,乘的公共汽車等。而我們經常見到的卡車,公共汽車,轎車等都會涉及以下幾個重要的物理量可乘載的人數,運行速度,發動機的功率,耗油量,自重,輪子數目等。另外,還有幾個重要的功能加速功能,減速功能,剎車,轉彎功能等。我們也可以把這些功能稱作是他們具有的方法,而物理量是它們的狀態描述。僅僅用物理量或功能不能很好的描述它們。在現實生活中,我們用這些共有的屬性和功能給出一個概念機動車類。一個具體的轎車就是機動車類的一個實例對象.Java語言與其它面向對象語言一樣,引入了類的概念,類是用來創建對象的模板,它包含被創建的對象的狀態描述和方法的定義。 4.與平台無關與平台無關是Java語言最大的優勢。其它語言編寫的程序面臨的一個主要問題是操作系統的變化,處理器升級以及核心系統資源的變化,都可能導致程序出現錯誤或無法運行。 Java的虛擬機成功地解決了這個問題,Java編寫的程序可以在任何安裝了Java虛擬機JVM的計算機上正確的運行,Sun公司實現了自己的目標“一次寫成,處處運行”。 5.解釋型我們知道C,C++等語言,都是只能對特定的CPU芯片進行編譯,生成機器代碼,該代碼的運行就和特定的CUP有關。例如,在C語言中,我們都碰到過類似下面的問題int型變量的值是10 ,那麼下面代碼的輸出結果是什麼呢printf(“%d,%d”,x,x=x+1 )如果上述語句的計算順序是從左到右,結果是10,11但是,有些機器會從右到左計算,那麼結果就是11,11.Java不像C++,它不針對特定的CPU芯片進行編譯,而是把程序編譯為稱做字節碼的一個“中間代碼”。字節碼是很接近機器碼的文件,可以在提供了Java虛擬機JVM的任何系統上被解釋執行。 Java被設計成為解釋執行的程序,即翻譯一句,執行一句,不產生整個的機器代碼程序。翻譯過程如果不出現錯誤,就一直進行到完畢,否則將在錯誤處停止執行。同一個程序,如果是解釋執行的,那麼它的運行速度通常比編譯為可執行的機器代碼的運行速度慢一些。但是,對Java來說,二者的差別不太大,Java的字節碼經過仔細設計,很容易便能使用JIT即時編譯方式編譯技術將字節碼直接轉化成高性能的本地機器碼,Sun公司在Java 2發行版中提供了這樣一個字節碼編譯器——JIT(Just In Time),它是Java虛擬機的一部分。 Java運行系統在提供JIT的同時仍具有平台獨立性,因而“高效且跨平台”對Java來說不再矛盾。如果把Java的程序比做“漢語”的話,字節碼就相當於“世界語”,世界語不和具體的“國家”關,只要這個“國家”提供了“翻譯”,就可以再快速地把世界語翻譯成本地語言。 6.多線程Java的特點之一就是內置對多線程的支持。多線程允許同時完成多個任務。實際上多線程使人產生多個任務在同時執行的錯覺,因為,目前的計算機的處理器在同一時刻只能執行一個線程,但處理器可以在不同的線程之間快速地切換,由於處理器速度非常快,遠遠超過了人接收信息的速度,所以給人的感覺好像多個任務在同時執行。 C++沒有內置的多線程機制,因此必須調用操作系統的多線程功能來進行多線程程序的設計。 7.安全當你準備從網絡上下載一個程序時,你最大的擔心是程序中含有惡意的代碼,比如試圖讀取或刪除本地機上的一些重要文件,甚至該程序是一個病毒程序等。當你使用支持Java的瀏覽器時,你可以放心地運行Java的小應用程序Java Applet ,不必擔心病毒的感染和惡意的企圖,Java小應用程序將限制在Java運行環境中,不允許它訪問計算機的其它部分。 8.動態Java程序的基本組成單元就是類,有些類是自己編寫的,有一些是從類庫中引入的,而類又是運行時動態裝載的,這就使得Java可以在分佈環境中動態地維護程序及類庫,而不像C++那樣,每當其類庫升級之後,相應的程序都必須重新修改,編譯。
寫Java程序的三十個基本規則
(1)類名首字母應該大寫。字段、方法以及對象(句柄)的首字母應小寫。對於所有標識符,其中包含的所有單詞都應緊靠在一起,而且大寫中間單詞的首字母。例如: ThisIsAClassName thisIsMethodOrFieldName 若在定義中出現了常數初始化字符,則大寫static final基本類型標識符中的所有字母。這樣便可標誌出它們屬於編譯期的常數。 Java包(Package)屬於一種特殊情況:它們全都是小寫字母,即便中間的單詞亦是如此。對於域名擴展名稱,如com,org,net或者edu等,全部都應小 寫(這也是Java 1.1和Java 1.2的區別之一)。 (2)為了常規用途而創建一個類時,請採取“經典形式”,並包含對下述元素的定義: equals() hashCode() toString() clone()(implement Cloneable) implement Serializable (3)對於自己創建的每一個類,都考慮置入一個main(),其中包含了用於測試那個類的代碼。為使用一個項目中的類,我們沒必要刪除測試代碼。若進行了任何形式的改動,可方便地返回測試。這些代碼也可作為如何使用類的一個示例使用。 (4)應將方法設計成簡要的、功能性單元,用它描述和實現一個不連續的類接口部分。理想情況下,方法應簡明扼要。若長度很大,可考慮通過某種方式將其分割成較短的幾個方法。這樣做也便於類內代碼的重複使用(有些時候,方法必須非常大,但它們仍應只做同樣的一件事情)。 (5)設計一個類時,請設身處地為客戶程序員考慮一下(類的使用方法應該是非常明確的)。然後,再設身處地為管理代碼的人考慮一下(預計有可能進行哪些形式的修改,想想用什麼方法可把它們變得更簡單)。 (6)使類盡可能短小精悍,而且只解決一個特定的問題。下面是對類設計的一些建議: 1.一個複雜的開關語句:考慮採用“多形”機制 2.數量眾多的方法涉及到類型差別極大的操作:考慮用幾個類來分別實現 3.許多成員變量在特徵上有很大的差別:考慮使用幾個類。 (7)讓一切東西都盡可能地“私有”——private。可使庫的某一部分“公共化”(一個方法、類或者一個字段等等),就永遠不能把它拿出。若強行拿出,就可能破壞其他人現有的代碼,使他們不得不重新編寫和設計。若隻公佈自己必須公佈的,就可放心大膽地改變其他任何東西。在多線程環境中 ,隱私是特別重要的一個因素——只有private字段才能在非同步使用的情況下受到保護。 (8)謹惕“巨大對象綜合症”。對一些習慣於順序編程思維、且初涉OOP領域的新手,往往喜歡先寫一個順序執行的程序,再把它嵌入一個或兩個巨大的對象裡。根據編程原理,對象表達的應該是應用程序的概念,而非應用程序本身。 (9)若不得已進行一些不太雅觀的編程,至少應該把那些代碼置於一個類的內部。 (10)任何時候只要發現類與類之間結合得非常緊密,就需要考慮是否採用內部類,從而改善編碼及維護工作(參見第14章14.1.2小節的“用內部類改進代碼”)。
從ITIL到PMP
從ITIL到PMP 會想到寫這篇文章,主要是因為看到ITIL V3的相關消息,及我在資策會上ITIL(IT Infrastructure Library)課程的講師吳傑離開精誠(負責CA產品)到聯想集團服務的消息。 大概8年前,IBM提出SLM(Service Level Management)的概念,強調IT的服務水平是可以被量化,被管理的。當時我服務的公司也代理SLM的工具(Compuware,同質產品有IBM Tivoli,BMC Patrol,HP Openview,CA……),許多客戶見到這種工具,都相當有興趣,原因不外乎:系統部門可以和AP部門釐清問題的責任、可以在終端用戶報怨時有量化的數據可以討論、看看究竟是誰用掉大部份的系統或網路資源….等等。為了實現SLM(之後又發展出SLA, Service Level Agreement)的精神:提升終端用戶滿意度、有效投資IT的案例倒是不多。加上SLM不是生產的必要工具,所以,在台灣,這個市場和資訊安全的產品一樣,叫好不叫座。 資訊業,是不是服務業?我想,這個問題的答案見仁見智。 資訊從業人員大多必須經歷許多學習,才能成為專家。在付出相當的時間與金錢,好不容易考上專業證照之後,才發現,什麼!資訊業是服務業!和錢櫃KTV的服務生一樣,是服務業!……. 我想,這種情形大概沒有人可以接受。 今日的台灣,交通相當便利,一日生活圈已成事實。從台北到高雄,不僅可以選擇搭飛機,還可以搭高鐵。同樣的,開飛機的機長,必須付出相當的努力,通過考試,才有資格開飛機。機長是不是也從事服務業呢?機長的工作,就是把旅客「安全」的送到目的地,如果能加上「舒適」這個元素,那是更是棒了。是的,機長是從事服務業。 “程式與香雞排”這篇網路文章相信很多人看過,其中道儘台灣資訊從業人員薪資與工時的不平等,與心酸。我想,這種情形和民族性有相當大的關係。雖然,現在的政治情勢讓我搞不清楚我到底是哪一族?是中華民族?還是台灣族?還是……..,既然在這個環境下打拼,面對這種不可抗拒的因素,我們能想的是,如何讓自己過的更愉快而已。 “請尊重專業!”,這句話的點播率相當高。 那什麼是專業呢?考上專業證照之後,是不是就代表”專業”了呢?許多專業證照,只需要會考試就行了,考古題唸一唸,通過率也相當高,不知道去哪download考古題的人,還可去到 Test104去買。試問,這樣考出來的專業證照,足以代表什麼? 機長把旅客「安全」的送到目的地,必須依賴專業證照,不是只有考試而已,還必須有相當的飛行時數,也就是實務經驗。同樣的,資訊從業人員也是如此。 「舒適」,是一種感覺。客戶對你的服務是否滿意,是一種主觀因素。資訊從業人員如何讓你的客戶,或者你的客戶的客戶感到「舒適」呢?ITIL 是一個值得參考的精神(根據OGC英國商務部http://www.itil.co.uk/ 的說明,ITIL是最佳實務)。台灣資訊系統的建置潮已過,IT服務的價值如何量化,將是下一個關注的目標。與例來說,如果你是MIS人員或主管,公司同仁問:為什麼公司給我們的MAIL空間只有200MB,GOOGLE都給我2GB了。試問,該如何回答?”資訊系統升級要錢啊,可是老闆不同意”,看來像是回答了,不過,問題還是沒解決,如此只會是惡性循環。 MIS部門,只是個會花錢的單位嗎?70年代開門做生意,需要”電話”這個工具,80年代開始,開門做生意需要資訊系統,而資訊系統就像個無底洞,硬體會老舊,軟體需要更新,每一項都要”錢”?從事IT供應商十多年,當然,站在供應商的角度,我們樂見這種情況,因為,這樣才有案子做,有案子做才能賺錢。不過,使用者也不是笨蛋,景氣好的時候樂於投資資訊系統,景氣不好的時候呢?當然是預算縮減,廠商削價競爭,最後,客戶得到什麼?IT?是Information Technology,還是In Trouble? 「計劃趕不上變化,變化趕不上爺爺一句話」,這樣的情境,相信許多人不會感到陌生。在工作的過程中往往需要即興的表演一下,只因為,發生了一些不在計劃中、或想像中的事。如果這種情形發生在業務同仁身上,帶來的影響可能是訂單飛了;如果這種情形發生工程同仁身上,帶來的影響可能是工作沒做好,也可能帶來客戶損失。而這些問題的根本原因,都來自於”溝通”與”變更管理”。 PMP面向客戶,追求團隊的共同努力去完成任務。 從ITIL到PMP,追求的共同目標都是”客戶滿意”,讓IT不再是In Trouble。 原文出处:http://www.itcert.org
Java開發者的堅守的基本原則
有許多標準和實踐準則可適用於Java開發者,但此處要說的,是每個Java開發者需堅守的基本原則。 一、為代碼加註釋。雖然每個人都知道這點,但有時卻不自覺忘了履行,今天你“忘了”加註釋了嗎?雖然註釋對程序的功能沒什麼“貢獻”,但過一段時間,比如說兩星期之後或者更長,回過頭來看看自己的代碼,說不定已經記不住它是乾什麼的了。假如這些代碼是你個人的,那還算是走運了,不幸的是,當然了,大多數時候都是別人的不幸,很多時候大家都是在為公司寫代碼,寫代碼的人也許早已經離開了公司,但別忘了一句古話,有來有往嘛,為他人,也為我們自己,請為你的代碼加上註釋。 二、不要讓事情複雜化。程序員有時候總是對簡單問題想出複雜的解決方案,比如說,在只有五個用戶的程序中引入EJB、對程序實現了並不需要的框架(framework),之類的還有屬性文件、面向對象解決方案、多線程等等。為什麼要這樣做呢?也許我們並不知道是否這樣會更好,但這樣做也許可以學到一些新東西,或者讓自己更感愛好一些。假如是不知道為什麼這樣做,建議多請教經驗豐富的程序員,假如是為了個人的目的,麻煩讓自己更專業一點。 三、始終牢記——“少即是好(Less is more)並不總是對的”。代碼效率雖然很重要,但在許多解決方案中,編寫更少的代碼並不能改善這些代碼的效率,請看下面這個簡單的例子: if(newStatusCode.equals(“SD”) && (sellOffDate == null || todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null && todayDate.compareTo(lastUsedDate)>0)) || (newStatusCode.equals(“OBS”) && (OBSDate == null || todayDate.compareTo(OBSDate)<0))){ newStatusCode = “NYP”; } 能看明白if條件語句是乾什麼的嗎?能想出來是誰寫的這段代碼嗎?假如把它分成兩段獨立的if語句,是不是更輕易理解呢,下面是修改後的代碼: if(newStatusCode.equals(“SD”) && (sellOffDate == null || todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null [...]
CIW的考試費用及考試重點
參加CIW考試須到指定的授權考試中心參加考試,考試費用為135美元/門(各考試機構應該有不同的折算,具體費用考生可諮詢當地考試機構)。 考題數量及重點 一般情況下,考題數量分配情況是: “Network Security and Firewalls”有22道考題; “Operating Systems security”有16道考題; “Security Auditing, Attacks and Threat Analysis”有22道考題考試時間為150分鐘,通過分數線的百分比為75%左右,即每部分正確率為75%即可通過考試. CIW認證的考試途徑和報考條件 如要申請CIW安全分析師證書,考生必須至少已經獲得下表列出的資格證書中的一種,並將相關證明文件寄往CIW中心,同時訪問認證機構的網站查詢獲得的證書是否通用。報考CIW安全分析師的先決條件/證書名稱/版本號。 Microsoft Certified Systems Engineer(MCSE) NT4.0/2000/2003 Certified Novell engineer(CNE) NetWare 4/5 Cisco Certified Network Associate(CCNA) Cisco Certified Network Professional(CCNP) Cisco Certified Internetwork Expert(CCIE) Linux Professional Institute(LPI) Level 2 SAIR Linux Certified Engineer Level 2