統(tǒng)計

          留言簿(1)

          DB

          Others

          QA

          Tech Website

          閱讀排行榜

          評論排行榜

          2011年3月22日 #

          【轉(zhuǎn)載】自動化測試體系整體解決方案探討

               摘要:  一個完整的自動化測試框架體系包含以下幾個部分:1、自動化測試框架;2、測試腳本以及測試數(shù)據(jù)管理;3、測試腳本的執(zhí)行管理系統(tǒng);4、測試結(jié)果的顯示與分析系統(tǒng)。其中最重要的是自動化測試框架部分。  閱讀全文

          posted @ 2011-08-30 18:59 XXXXXX 閱讀(352) | 評論 (0)編輯 收藏

          Java開源測試工具

               摘要: JUnit

          JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個回歸測試框架(regression testing framework)。Junit測試是程序員測試,即所謂白盒測試,因為程序員知道被測試的軟件如何(How)完成功能和完成什么樣(What)的功能。Junit是一套框架,繼承TestCase類,就可以用Junit進行自動測試了。
          更多JUnit信息  閱讀全文

          posted @ 2011-08-30 17:29 XXXXXX 閱讀(351) | 評論 (0)編輯 收藏

          Linux Directory Structure (File System Structure) Explained with Examples

               摘要: Have you wondered why certain programs are located under /bin, or /sbin, or /usr/bin, or /usr/sbin?
          For example, less command is located under /usr/bin directory. Why not /bin, or /sbin, or /usr/sbin? What is the different between all these directories?
          In this article, let us review the Linux filesystem structures and understand the meaning of individual high-level directories  閱讀全文

          posted @ 2011-08-29 11:41 XXXXXX 閱讀(1854) | 評論 (1)編輯 收藏

          【轉(zhuǎn)】互聯(lián)網(wǎng)產(chǎn)品開發(fā)中的“快”字訣

               摘要: 當今互聯(lián)網(wǎng)的發(fā)展,已不是大魚吃小魚的時代,而是快魚吃慢魚的時代。互聯(lián)網(wǎng)產(chǎn)品的制勝原則就是一個字——“快”。在各種形態(tài)的產(chǎn)品研發(fā)中,我們始終貫徹如一的價值觀之一就是“快”,我們應該如何來理解和詮釋“快”?又會從哪些方面來執(zhí)行貫徹這個原則呢?  閱讀全文

          posted @ 2011-08-28 23:47 XXXXXX 閱讀(332) | 評論 (0)編輯 收藏

          【轉(zhuǎn)載】軟件測試的十二個誤區(qū)

               摘要: 軟件測試的十二個誤區(qū)大體總結(jié)如下:

          1) 測試人員不需要了解軟件開發(fā)的知識:
          這個很要命的,我們談到軟件測試人員未來的發(fā)展方向大致有:自動化測試,性能測試,測試管理,項目經(jīng)理。這其中自動化測試和性能測試包括項目管理,都會要求對軟件開發(fā)有深入的理解,如何能設計一個好的自動化框架,好的性能測試用例,如何管理一個開發(fā)團隊,這都需要我們在軟件開發(fā)方面有所掌握。不單要掌握,而且要精通。此其一。
          其二:如果不了解開發(fā)知識,測試人員很容易被開發(fā)人員牽著鼻子走,因為開發(fā)人員隨便一忽悠,你如果不了解個中奧妙,你一個字也說不上來。(以前我們討論 Cookie和Session,由于GoAhead不支持Session,只能用Cookie來控制,差點別開發(fā)人員忽悠了)  閱讀全文

          posted @ 2011-08-23 13:25 XXXXXX 閱讀(394) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Painless threading

               摘要: 寫在前面:寫Android程序有一個很重要的原則,不阻塞UI線程。因此Android提供了5種方法來,讓一些耗時的作業(yè)在其它線程中執(zhí)行,然后把結(jié)果返回給UI線程,以免阻塞UI線程。  閱讀全文

          posted @ 2011-08-23 09:25 XXXXXX 閱讀(361) | 評論 (0)編輯 收藏

          Heuristics of Software Testability

          探討了軟件測試的可測試性,主要包括Controllability, Observability, Availability,Simplicity, Stability 和 Information.


          HeuristicsOfSoftwareTestability.pdf

          posted @ 2011-08-19 23:24 XXXXXX 閱讀(1394) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】selector in Android

               摘要: android的selector的用法:
          首先android的selector是在drawable/xxx.xml中配置的。
          先看一下listview中的狀態(tài):
          把下面的XML文件保存成你自己命名的.xml文件(比如list_item_bg.xml),在系統(tǒng)使用時根據(jù)ListView中的列表項的狀態(tài)來使用相應的背景圖片。drawable/list_item_bg.xml  閱讀全文

          posted @ 2011-08-16 23:12 XXXXXX 閱讀(289) | 評論 (0)編輯 收藏

          UI/Application Exerciser Monkey

               摘要: The Monkey is a command-line tool that that you can run on any emulator instance or on a device. It sends a pseudo-random stream of user events into the system, which acts as a stress test on the application software you are developing.

          The Monkey includes a number of options, but they break down into four primary categories:

          Basic configuration options, such as setting the number of events to attempt.
          Operational constraints, such as restricting the test to a single packag  閱讀全文

          posted @ 2011-08-13 10:14 XXXXXX 閱讀(507) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Python的標準logging模塊

               摘要: Programmers can configure logging either by creating loggers, handlers, and formatters explicitly in a main module with the configuration methods listed above (using Python code), or by creating a logging config file. The following code is an example of configuring a very simple logger, a console handler, and a simple formatter in a Python module:

            閱讀全文

          posted @ 2011-08-12 14:49 XXXXXX 閱讀(1217) | 評論 (0)編輯 收藏

          Android Debug Bridge

               摘要:   閱讀全文

          posted @ 2011-08-11 13:22 XXXXXX 閱讀(894) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Linux IPC


          一)Linux環(huán)境進程間通信(一)管道及有名管道
          http://www.ibm.com/developerworks/cn/linux/l-ipc/part1/

          二)Linux環(huán)境進程間通信(二): 信號
          上:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index1.html
          下:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index2.html

          三)Linux環(huán)境進程間通信(三)消息隊列
          http://www.ibm.com/developerworks/cn/linux/l-ipc/part3/

          四)Linux環(huán)境進程間通信(四)信號燈
          http://www.ibm.com/developerworks/cn/linux/l-ipc/part4/

          五)Linux環(huán)境進程間通信(五): 共享內(nèi)存
          上:http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html
          下:http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index2.html

          posted @ 2011-07-31 08:53 XXXXXX 閱讀(249) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】深入理解Android消息處理系統(tǒng)

               摘要: Android系統(tǒng)中Looper負責管理線程的消息隊列和消息循環(huán),具體實現(xiàn)請參考Looper的源碼。 可以通過Loop.myLooper()得到當前線程的Looper對象,通過Loop.getMainLooper()可以獲得當前進程的主線程的Looper對象。  閱讀全文

          posted @ 2011-07-29 11:53 XXXXXX 閱讀(262) | 評論 (0)編輯 收藏

          Glossary of Android

               摘要: The list below defines some of the basic terminology of the Android platform.

          .apk file
          Android application package file. Each Android application is compiled and packaged in a single file that includes all of the application's code (.dex files), resources, assets, and manifest file. The application package file can have any name but must use the .apk extension. For example: myExampleAppname.apk. For convenience, an application package file is often referred to as an ".apk".
          Re  閱讀全文

          posted @ 2011-07-25 11:42 XXXXXX 閱讀(313) | 評論 (0)編輯 收藏

          Manifest.permission Summary

               摘要:   閱讀全文

          posted @ 2011-07-24 15:15 XXXXXX 閱讀(704) | 評論 (0)編輯 收藏

          Special Methods for Customizing Classes

               摘要: C.__init__(self[, arg1, ...] )
          Constructor (with any optional arguments)

          C.__new__(self[, arg1, ...] )[a]
          Constructor (with any optional argu ments); usually used for setting up subclassing of immutable data types

          C.__del__(self)
          Destructor

          C.__str__(self)
          Printable string representation; str() built-in and print statement

          C.__repr__(self)
          Evaluatable string representation; repr() built-in and '' operator

            閱讀全文

          posted @ 2011-07-21 23:25 XXXXXX 閱讀(254) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】再談Yahoo關于性能優(yōu)化的N條軍規(guī)

               摘要: 本來這是個老生常談的問題,上周自成又分享了一些性能優(yōu)化的建議,我這里再做一個全面的Tips整理,謹作為查閱型的文檔,不妥之處,還請指正;
          如果你已經(jīng)對yahoo這些優(yōu)化建議爛熟于心,果斷點這里

            閱讀全文

          posted @ 2011-07-21 09:21 XXXXXX 閱讀(218) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Choosing a test automation framework


          Five test auomation framework are discussed in this paper.
          1) The Test Script Modularity Framework
          2) The Test Library Architecture Framework
          3) The Keyword-Driven or Table-Driven Testing Framework
          4) The Data-Driven Testing Framework
          5) The Hybrid Test Automation 

          posted @ 2011-07-15 22:30 XXXXXX 閱讀(316) | 評論 (0)編輯 收藏

          ASE入門

               摘要: 一、ASE(Android Scripting Environment)為Android系統(tǒng)帶來了腳本語言的技術,通過它我們可以編輯和執(zhí)行腳本,和腳本解釋交互。腳本可以訪問多數(shù)Android API,目前有一個開源項目叫做Scripting Layer for Android (SL4A) ,提供了對python,javaScript, Lua等腳本的支持。ASE主要通過兩種方式來訪問 Android API,一種是通過JSON-RPC來訪問,另外一種通過BeanShell(Java語言的動態(tài)版本)直接訪問Android API。SL4AL架構(gòu)如下圖:  閱讀全文

          posted @ 2011-07-10 10:08 XXXXXX 閱讀(2615) | 評論 (0)編輯 收藏

          獲取Android的Java源代碼并在Eclipse中關聯(lián)查看的最新方法

          感謝一網(wǎng)友做出的努力,具體請看:http://618119.com/archives/2011/01/01/201.html

          posted @ 2011-07-09 09:38 XXXXXX 閱讀(242) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Android 2.1 源碼結(jié)構(gòu)分析

               摘要:   閱讀全文

          posted @ 2011-07-09 09:37 XXXXXX 閱讀(246) | 評論 (0)編輯 收藏

          Android Coding for Life-Battery Life

          關于Android編程中如果省電的講解

          可以作為開發(fā)者的參考 :)

          posted @ 2011-07-08 09:37 XXXXXX 閱讀(1576) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Java學習的30個目標以及系統(tǒng)架構(gòu)師推薦的書

               摘要: 2.你需要學習JAVA語言的基礎知識以及它的核心類庫 (collections,serialization,streams,networking, multithreading,reflection,event,handling,NIO,localization,以及其他)。  閱讀全文

          posted @ 2011-06-18 15:25 XXXXXX 閱讀(692) | 評論 (1)編輯 收藏

          學習Python的好網(wǎng)站

          1)http://www.pythonchallenge.com/
            提供了不同level的Python題目,非常有趣的題目。做完一題后,把URL中的pc改為pcc可以看到上一題的答案

          2)http://projecteuler.net/
            里面有200多道題目,不要要求提交代碼,只要最終答案,提供用各種語言來解決問題。這里(http://dcy.is-programmer.com/posts/8750.html)有部分題目的答案

          非常好玩,有興趣的朋友,快來試試吧

          看看 project euler 的第一道題:

          If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000.

          用 python 語言寫出來是:

           

          print sum(i for i in xrange(11000if i % 3 == 0 or i % 5 == 0)

           


           

          posted @ 2011-06-17 20:26 XXXXXX 閱讀(4387) | 評論 (2)編輯 收藏

          Dom4j解釋XML示例

               摘要:   閱讀全文

          posted @ 2011-06-15 17:53 XXXXXX 閱讀(371) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】《InfoQ Explores: REST》介紹

          This is the first edition of what is expected to become a recurring series on InfoQ. The idea behind this minibook is that a number of InfoQ articles and interviews which deal with a particular topic (in this case, REpresentational State Transfer, or REST) are combined together to provide a detailed exploration suitable for both beginners and advanced practitioners.

          Read More: http://www.infoq.com/minibooks/emag-03-2010-rest;jsessionid=1E2375E822D980824403DAD46588FAFE

          posted @ 2011-06-15 12:39 XXXXXX 閱讀(249) | 評論 (0)編輯 收藏

          Python中的Closure


          #定義:如果在一個內(nèi)部函數(shù)里,對在外部作用域(但不是在全局作用域)的變量進行引用,那么內(nèi)部函數(shù)就被認為是閉包(closure)
          分解來說,包含下面3個條件:
          1) 需要函數(shù)嵌套, 就是一個函數(shù)里面再寫一個函數(shù).
          2) 外部函數(shù)需要返回一個內(nèi)部函數(shù)的引
          3) 外部函數(shù)中有一些局部變量, 并且, 這些局部變量在內(nèi)部函數(shù)中有使用
          一些概念:
          1)自由變量: 外部函數(shù)中定義的局部變量, 并且在內(nèi)部函數(shù)中被使用
          2) 閉包: 那個使用了自由變量并被返回的內(nèi)部函數(shù)就稱為閉包

          #支持閉包的語言有這樣的特性:
          1)函數(shù)是一階值(First-class value),即函數(shù)可以作為另一個函數(shù)的返回值或參數(shù),還可以作為一個變量的值
          2)函數(shù)可以嵌套定義,即在一個函數(shù)內(nèi)部可以定義另一個函數(shù)

          #代碼示例

           1def counter(start_at=0):
           2    count = [start_at]
           3    def incr():
           4        count[0] += 1   #對局部變量的引用
           5        return count[0]
           6    return incr  #返回一個函數(shù)對象
           7
           8
           9if __name__ == '__main__':
          10    c = counter(3)
          11    print type(c)
          12    print c()
          13    print c()
          14


           

          posted @ 2011-06-15 07:31 XXXXXX 閱讀(1310) | 評論 (0)編輯 收藏

          Trie Tree

               摘要: #Trie Tree的基本特點
          1)根節(jié)點不包含字符,除根節(jié)點外每個節(jié)點只包含一個字符
          2)從根節(jié)點到某一個節(jié)點,路徑上經(jīng)過的字符連接起來,為該節(jié)點對應的字符串

          3)每個節(jié)點的所有子節(jié)點包含的字符串不相同
            閱讀全文

          posted @ 2011-06-14 16:57 XXXXXX 閱讀(1085) | 評論 (0)編輯 收藏

          Bloom Filter

               摘要: The Bloom filter, conceived by Burton Howard Bloom in 1970, is a space-efficient probabilistic data structure that is used to test whether an element is a member of a set.False positivesare possible, but false negatives are not. Elements can be added to the set, but not removed (though this can be addressed with a counting filter). The more elements that are added to the set, the larger the probability of false positives
            閱讀全文

          posted @ 2011-06-12 23:58 XXXXXX 閱讀(303) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - A Brief Interlude

               摘要: These posts have garnered a number of interesting comments. I want to address two of the negative ones in this post. Both are of the same general opinion that I am abandoning testers and that Google is not a nice place to ply this trade. I am puzzled by these comments because nothing could be further from the truth. One such negative comment I can take as a one-off but two smart people (hey they are reading this blog, right?) having this impression requires a rebuttal. Here are the comments:  閱讀全文

          posted @ 2011-06-06 16:03 XXXXXX 閱讀(342) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Six

               摘要:   閱讀全文

          posted @ 2011-06-04 16:08 XXXXXX 閱讀(245) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Seven

               摘要:   閱讀全文

          posted @ 2011-06-04 16:08 XXXXXX 閱讀(265) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Five

               摘要:   閱讀全文

          posted @ 2011-06-04 15:54 XXXXXX 閱讀(293) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Four

               摘要: One of the key ways Google achieves good results with fewer testers than many companies is that we rarely attempt to ship a large set of features at once. In fact, the exact opposite is often the goal: build the core of a product and release it the moment it is useful to as large a crowd as feasible, then get their feedback and iterate. This is what we did with Gmail, a product that kept its beta tag for four years. That tag was our warning to users that it was still being perfected. We removed   閱讀全文

          posted @ 2011-06-04 15:43 XXXXXX 閱讀(263) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Three

               摘要: Lots of questions in the comments to the last two posts. I am not ignoring them. Hopefully many of them will be answered here and in following posts. I am just getting started on this topic.  閱讀全文

          posted @ 2011-06-04 10:44 XXXXXX 閱讀(293) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How Google Tests Software - Part Two

               摘要:   閱讀全文

          posted @ 2011-06-02 11:00 XXXXXX 閱讀(276) | 評論 (0)編輯 收藏

          Android好文章

               摘要:   閱讀全文

          posted @ 2011-06-01 15:17 XXXXXX 閱讀(221) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Avoiding Memory Leaks

               摘要: Android applications are, at least on the T-Mobile G1, limited to 16 MB of heap. It's both a lot of memory for a phone and yet very little for what some developers want to achieve. Even if you do not plan on using all of this memory, you should use as little as possible to let other applications run without getting them killed. The more applications Android can keep in memory, the faster it will be for the user to switch between his apps. As part of my job, I ran into memory leaks issues in Andr  閱讀全文

          posted @ 2011-06-01 14:52 XXXXXX 閱讀(342) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】Android = Java ?

               摘要: The Java community is now swamped with discussions about Oracle's patent suit against Google's Android platform. I've been contributing my opinion in several places, but there is one critical topic that needs repeating the same comments everywhere... so, this blog spills the beans once and completely.  閱讀全文

          posted @ 2011-05-31 11:06 XXXXXX 閱讀(550) | 評論 (0)編輯 收藏

          Activity Lifecycle

               摘要: Activities in the system are managed as an activity stack. When a new activity is started, it is placed on the top of the stack and becomes the running activity -- the previous activity always remains below it in the stack, and will not come to the foreground again until the new activity exits.  閱讀全文

          posted @ 2011-05-31 09:31 XXXXXX 閱讀(291) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】How google test software-part one

               摘要: The one question I get more than any other is "How does Google test?" It's been explained in bits and pieces on this blog but the explanation is due an update  閱讀全文

          posted @ 2011-05-30 08:10 XXXXXX 閱讀(703) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】To new or not to new

               摘要: Dependency injection asks us to separate the new operators from the application logic. This separation forces your code to have factories which are responsible for wiring your application together. However, better than writing factories, we want to use automatic dependency injection such as GUICE to do the wiring for us. But can DI really save us from all of the new operators?  閱讀全文

          posted @ 2011-05-29 10:20 XXXXXX 閱讀(263) | 評論 (1)編輯 收藏

          【轉(zhuǎn)】How to think about OO

               摘要: Everyone seems to think that they are writing OO after all they are using OO languages such as Java, Python or Ruby. But if you exam the code it is often procedural in nature  閱讀全文

          posted @ 2011-05-29 09:48 XXXXXX 閱讀(287) | 評論 (1)編輯 收藏

          【轉(zhuǎn)】The SET Career Path

          By James Whittaker

          I’ve had a number of questions about the SET role and it seems I have confused folks when I say that the SWE is a tester and the SET is a tester and at the same time the SWE is a developer and the SET is a developer. What could possibly be confusing about that?

          Oh, yeah. Right.

          My next series of posts are going to detail the role of the SET and all will eventually be clear but some clarification on career path seems worthwhile.

          SETs are developers who write test code and automation as their primary task. They are in every sense of the word a developer. When we interview SETs, SWEs are on the interview loop and SWE questions are asked. They are not all of the interview, but they are part of it.

          This means that the skill set that our SETs possess makes them perfect candidates for switching to the SWE role. There is neither incentive nor deterrent to do so. SETs and SWEs are on the same pay scale and bonus structure (I have both roles reporting to me so I have real visibility into salary data) and their promotion velocity (again based on actual data) is roughly equivalent. This means that SETs have no outside influences to prompt them one way or the other.

          The key factor is really the type of work you are doing. SETs who find themselves involved in SWE work usually convert to SWE. SWEs are also drawn in the opposite direction. Much of this happens through our 20% time work. Any SET interested in SWE work can take on a 20% task doing feature development. Any SWE interested in automation can find a group and sign up for a 20%. Right now I have both SWEs and SETs involved in such cross pollination.

          The ideal situation is that the title reflects the actual work that you are involved in. So if an SET starts doing more feature dev work than automation, he or she should convert, same for SWEs doing automation work. In my time here, conversions in both directions have happened, but it is not all that common. The work of both roles is engaging, interesting and intense. Few Googlers are walking around bored.

          Bottom line: do the work you are passionate about and capable of and the right job title will find you.

          posted @ 2011-05-25 00:04 XXXXXX 閱讀(282) | 評論 (0)編輯 收藏

          Visitor模式和Double Dispatch


          一、概念
            靜態(tài)分派(Static Dispatch),發(fā)生在編譯時期,分派是根據(jù)靜態(tài)類型信息發(fā)生的,方法重載就是靜態(tài)分派。
            動態(tài)分派(Dynamic Dispatch),發(fā)生在運行時期,動態(tài)分派動態(tài)地置換掉某個方法。面向?qū)ο蟮恼Z言用動態(tài)分派實現(xiàn)多態(tài)性。
            Java語言支持靜態(tài)多分派和動態(tài)的單分派,利用設計模式Java可以實現(xiàn)Double Dispatch,即訪問者模式。

          二、Visitor Pattern
            目的:封裝一些施加于某種數(shù)據(jù)結(jié)構(gòu)元素之上的操作。
            UML圖:
           
             主要原理:“反傳球”,Element來Visitor之間二輪調(diào)用,調(diào)用過程中用sinlge dispatch確定類型


              

          posted @ 2011-05-24 16:54 XXXXXX 閱讀(1630) | 評論 (1)編輯 收藏

          【轉(zhuǎn)】性能測試指標的基本概念

               摘要:   閱讀全文

          posted @ 2011-05-21 15:04 XXXXXX 閱讀(341) | 評論 (0)編輯 收藏

          REST-表象化狀態(tài)轉(zhuǎn)變


          記錄關于REST的一些技術:

          1、REST簡介:http://zh.wikipedia.org/zh/REST
          2、InfoQ 深入淺出REST:  http://www.infoq.com/cn/articles/rest-introduction

          posted @ 2011-05-10 22:07 XXXXXX 閱讀(321) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】架構(gòu)就是關注點分離

               摘要: 要設計良好的架構(gòu),必須做到關注點分離,這樣可以產(chǎn)生高內(nèi)聚、低耦合的系統(tǒng),這是美麗架構(gòu)的終極原則  閱讀全文

          posted @ 2011-05-10 22:02 XXXXXX 閱讀(435) | 評論 (0)編輯 收藏

          CyclicBarrier in Java

               摘要: A synchronization aid that allows a set of threads to all wait for each other to reach a common barrier point. CyclicBarriers are useful in programs involving a fixed sized party of threads that must occasionally wait for each other. The barrier is called cyclic because it can be re-used after the waiting threads are released.  閱讀全文

          posted @ 2011-05-07 15:35 XXXXXX 閱讀(648) | 評論 (0)編輯 收藏

          CountDownLatch in Java

               摘要: A java.util.concurrent.CountDownLatch is a concurrency construct that allows one or more threads to wait for a given set of operations to complete  閱讀全文

          posted @ 2011-05-07 15:10 XXXXXX 閱讀(260) | 評論 (0)編輯 收藏

          Multithreaded Servers in Java

          文章描述了實現(xiàn) Multithreaded Servers的3種方法:
          1)單線程,性能性差,請求等待時間長
          2)多線程,把接受請求和處理請求的線程分開,接受后交給 worker處理
          3)線程池,性能最佳,有效地防止負載過重,重復利用線程,請求多時,讓請求排隊接收處理
          4)主要用socket來通信, ServerSocket 和 Socket

          具體文章請看:http://tutorials.jenkov.com/java-multithreaded-servers/index.html

          posted @ 2011-05-07 09:58 XXXXXX 閱讀(186) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】探索式測試

               摘要:   閱讀全文

          posted @ 2011-05-05 22:58 XXXXXX 閱讀(268) | 評論 (0)編輯 收藏

          回調(diào)機制

               摘要: 軟件模塊之間總是存在著一定的接口,從調(diào)用方式上,可以把他們分為三類:同步調(diào)用、回調(diào)和異步調(diào)用。
          同步調(diào)用是一種阻塞式調(diào)用,調(diào)用方要等待對方執(zhí)行完畢才返回,它是一種單向調(diào)用,如HTTP;
          回調(diào)是一種雙向調(diào)用模式,也就是說,被調(diào)用方在接口被調(diào)用時也會調(diào)用對方的接口;
          異步調(diào)用是一種類似消息或事件的機制,不過它的調(diào)用方向剛好相反,接口的服務在收到某種訊息或發(fā)生某種事件時,會主動通知客戶方(即調(diào)用客戶方的接口),如JMS;
            閱讀全文

          posted @ 2011-04-29 22:36 XXXXXX 閱讀(367) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】關于多線程編程您不知道的 5 件事

               摘要: 雖然很少有 Java? 開發(fā)人員能夠忽視多線程編程和支持它的 Java 平臺庫,更少有人有時間深入研究線程。相反地,我們臨時學習線程,在需要時向我們的工具箱添加新的技巧和技術。以這種方式構(gòu)建和運行適當?shù)膽贸绦蚴强尚械模悄梢宰龅牟恢惯@些。理解 Java 編譯器的線程處理特性和 JVM 將有助于您編寫更高效、性能更好的 Java 代碼  閱讀全文

          posted @ 2011-04-28 11:59 XXXXXX 閱讀(227) | 評論 (0)編輯 收藏

          Python設計的核心理念

          The Zen of Python, by Tim Peters

          Beautiful is better than ugly.
          Explicit is better than implicit.
          Simple is better than complex.
          Complex is better than complicated.
          Flat is better than nested.
          Sparse is better than dense.
          Readability counts.
          Special cases aren't special enough to break the rules.
          Although practicality beats purity.
          Errors should never pass silently.
          Unless explicitly silenced.
          In the face of ambiguity, refuse the temptation to guess.
          There should be one-- and preferably only one --obvious way to do it.
          Although that way may not be obvious at first unless you're Dutch.
          Now is better than never.
          Although never is often better than *right* now.
          If the implementation is hard to explain, it's a bad idea.
          If the implementation is easy to explain, it may be a good idea.
          Namespaces are one honking great idea -- let's do more of those!

          posted @ 2011-04-18 09:10 XXXXXX 閱讀(353) | 評論 (0)編輯 收藏

          You’ve got to find what you love(By Steve Jobs)

               摘要: This is the text of the Commencement address by Steve Jobs, CEO of Apple Computer and of Pixar Animation Studios, delivered on June 12, 2005.

          I am honored to be with you today at your commencement from one of the finest universities in the world. I never graduated from college. Truth be told, this is the closest I’ve ever gotten to a college graduation. Today I want to tell you three stories from my life. That’s it. No big deal. Just three stories.

          The first story is about conn  閱讀全文

          posted @ 2011-04-05 10:34 XXXXXX 閱讀(433) | 評論 (0)編輯 收藏

          【轉(zhuǎn)】軟件構(gòu)架設計 讀書筆記

               摘要: 1. 軟件架構(gòu)概述
          1.1 什么是軟件架構(gòu)

          ◎ 軟件架構(gòu)的概念很混亂。如果你問五個不同的人,可能會得到五種不同的答案。

          ◎ 軟件架構(gòu)概念主要分為兩大流派:
          組成派:軟件架構(gòu) = 組件 + 交互。
          決策派:軟件架構(gòu) = 重要決策集。

          ◎ 組成派和決策派的概念相輔相成。
            閱讀全文

          posted @ 2011-04-04 00:08 XXXXXX 閱讀(1149) | 評論 (0)編輯 收藏

          關系數(shù)據(jù)庫設計范式介紹

               摘要: 所謂第一范式(1NF)是指數(shù)據(jù)庫表的每一列都是不可分割的基本數(shù)據(jù)項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復的屬性。如果出現(xiàn)重復的屬性,就可能需要定義一個新的實體,新的實體由重復的屬性構(gòu)成,新實體與原實體之間為一對多關系。在第一范式(1NF)中表的每一行只包含一個實例的信息。簡而言之,第一范式就是無重復的列。
            閱讀全文

          posted @ 2011-03-22 20:23 XXXXXX 閱讀(477) | 評論 (3)編輯 收藏

          主站蜘蛛池模板: 栾川县| 安阳市| 那曲县| 兴义市| 旅游| 梧州市| 开原市| 裕民县| 六枝特区| 维西| 穆棱市| 柳江县| 枣强县| 新津县| 汕头市| 永顺县| 临沂市| 井研县| 蕉岭县| 嘉义县| 曲水县| 黎川县| 沐川县| 伊川县| 清水县| 和平县| 邢台县| 南宫市| 东阿县| 长沙市| 瓮安县| 南汇区| 古蔺县| 辽阳县| 崇阳县| 枣庄市| 当涂县| 吴江市| 阿城市| 讷河市| 新巴尔虎右旗|