ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>免费日韩av,午夜亚洲精品,亚洲一区在线看http://www.aygfsteel.com/nobody_am/zh-cnThu, 19 Jun 2025 15:30:54 GMTThu, 19 Jun 2025 15:30:54 GMT60国外½E‹åºå‘˜æŽ¨èçš„å…è´¹¾~–程书ç±èµ„æºhttp://www.aygfsteel.com/nobody_am/archive/2011/11/07/363071.htmlMingIsMeMingIsMeMon, 07 Nov 2011 10:36:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2011/11/07/363071.html

  StackOverflow 上有ä½ç½‘å‹ï¼ˆxenoterracideåQ‰æé—®ï¼š

ã€€ã€€æˆ‘æ­£è¯•ç€æœé›†æ•´ç†ä¸€ä¸ªå¯åœ¨ç½‘上å…è´šw˜…è¯Èš„计算机编½E‹ä¹¦¾c列表。这些书å¯ä»¥æ˜¯æŸ¿U特定编½E‹è¯­­a€åQŒä¹Ÿå¯ä»¥è®¡ç®—机方é¢é€šç”¨ä¹¦ç±ã€‚网上有哪些å…è´¹å¯ç”¨çš„书¾cå‘¢åQ?/p>

ã€€ã€€ä¸‹é¢æ˜¯ä¸€äº›ç½‘å‹åœ¨å›žå¤ä¸­çš„æŽ¨è资æºåQŒå…¶ä¸­æœ‰è§†é¢‘ã€å¤§å­¦è¯¾½E‹ã€ç¼–½E‹è¯­­a€æ•™ç¨‹¾|‘ç«™åQŒç”±ä¼¯ä¹åœ¨çº¿æ•´ç†¾~–译ã€?/p>

 

  一ã€George Stocker æä¾›äº†ä¸€å¤§ä¸²åQŒåˆ†¾cÕd¦‚下:

 

  Meta-Lists

  How to Design Programs: An Introduction to Computing and Programming

  25 Free Computer Science Ebooks

  Free Tech Books

  MindView Inc

  Wikibooks: Programming

  Cheat Sheets (Free)

  CodePlex List of Free E-Books

  Book Training – On Video!

  Sofware Program Managers Network – Free EBooks

  EBook Share @ linbai.info

  FreeBooksClub.Net

  Theassayer.org

  O’Reilly’s Open Books Project

  TechBooksForFree.com

  Galileo Computing (徯‚¯­)

  Microsoft Press: Free E-Books

  Graphics Programming 囑ÖÅž¾~–程

  GPU Gems

  GPU Gems 2ch 8,14,18,29,30 as pdf

  GPU Gems 3

  Graphics Programming Black Book

  ShaderX series

  DirectX manual (draft)

  Learning Modern 3D Graphics Programming (draft)

  Language Agnostic

  Object-Oriented Reengineering Patterns

  Foundations of Programming

  Computer Musings (由唾U›_¯d·å…‹åŠªæ–¯æŽˆè¯?

  The Cathedral and the Bazaar

  Patterns and Practices: Application Architecture Guide 2.0

  Security Engineering

  Digital Signal Processing For Engineers and Scientists

  Getting Real

  Structure and Interpretation of Computer Programs

  Domain Driven Design Quickly

  OO Design

  Best Kept Secrets of Peer Code Review

  NASA Software Measurement Handbook

  NASA Manager Handbook for Software Development (PDF)

  Introduction to Functional Programming (¾l典评¡¨‹)

  How to Design Programs

  Guide to the Software Engineering Body of Knowledge

  Online Course Materials

  Algorithms (draft)

  Data Structures and Algorithms

  Essential Skills for Agile Development

  Programming Languages: Application and Interpretation

  Learn to Program

  Patterns of Software: Tales from the Software Community (PDF)

  How to write Unmaintainable Code

  The Art of Unix Programming ã€?a rel="nofollow" target="_blank">UNIX ¾~–程艺术ã€?/p>

  The Definitive Guide to Building Code Quality

  How to Think Like a Computer Scientist

  Planning Algorithms

  Mathematical Logic – an Introduction (PDF)

  An Introduction to the Theory of Computation

  Developers Developers Developers Developers

  Linkers and loaders

  Let’s Build a Compiler

  Producing Open Source Software

  How to Write Parallel Programs

  Don’t Just Roll the Dice

  97 Things Every Programmer Should KnowåQˆè¿™æœ¬ä¹¦æœ‰ä¸­æ–‡ç‰ˆã€?a rel="nofollow" target="_blank">½E‹åºå‘˜åº”该知é“çš„97件事》)

  How Computers Work

  Introduction to Information Retrieval

  Is Parallel Programming Hard, And, If So, What Can You Do About It?

  Matters Computational

  Type Theory and Functional Programming

  Getting started with Open source development (PDF)

  Database Fundamentals (PDF)

  Clever Algorithms

  Summary of the GoF Design Patterns

  Flow based Programming

  Algorithms and Data-Structures (PDF)

  Compiler Construction (PDF)

  Project Oberon (PDF)

  The Little Book of Semaphores

  Essential Skills for Agile Development

  I Am a Bug

  Mining of Massive Datasets

  Data-Intensive Text Processing with MapReduce (PDF)

  Understanding IP Addressing: Everything you ever wanted to know (PDF)

  Operating Systems and Middleware (PDF and LaTeX)

  ASP.NET MVC

  NerdDinner Walkthrough

  Assembly Language 汇编语言

  ProgrammingGroundUp (PDF)

  Paul Carter’s Tutorial on x86 Assembly

  Software optimization resources by Agner Fog

  Bash

  Advanced Bash-Scripting Guide

  Lhunath’s Bash Guide

  C / C++

  The new C standard – an annotated reference

  Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt

  The C book

  Thinking in C++åQ?Second Edition åQˆã€?a rel="nofollow" target="_blank">C++¾~–ç¨‹æ€æƒ³ã€‹ï¼‰

  C++ Annotations

  Software optimization resources by Agner Fog

  Introduction to Design Patterns in C++ with Qt 4 (PDF)

  Object Oriented Programming in C (PDF)

  Beej’s Guide to Network Programming

  Learn C the hard way

  Also see: The Definitive C++ Book Guide and List

  C#

  请å‚è§ä¸‹é?.NET æ–šw¢çš?/p>

  Clojure

  Clojure Programming

  ColdFusion

  CFML In 100 Minutes

  DB2

  Getting started with IBM Data Studio for DB2 (PDF)

  Getting started with IBM DB2 development (PDF)

  Getting started with DB2 Express-C (PDF)

  Delphi / Pascal

  Essential Pascal Version 1 and 2

  The Tomes of Delphi

  Django

  Djangobook.com

  Erlang

  Learn You Some Erlang For Great Good

  Flex

  Getting started with Adobe Flex (PDF)

  F#

  The F# Survival Guide

  F Sharp Programming in Wikibooks

  Forth

  Starting Forth

  Thinking Forth

  Git

  Pro Git

  The Git Community Book

  Git From The Bottom Up (PDF)

  Grails

  Getting Start with Grails

  Haskell

  Learn You a Haskell

  Real World Haskell

  HTML / CSS

  Dive Into HTML5

  HTML Dog Tutorials

  Java

  Sun’s Java Tutorials

  Thinking in Java åQˆã€?a rel="nofollow" target="_blank">Java ¾~–ç¨‹æ€æƒ³ã€‹ï¼‰

  How to Think Like a Computer Scientist

  Java Thin-Client Programming

  OSGi in Practice (PDF)

  Java 6 Tutorial (PDF)

  JavaScript

  Eloquent JavaScript

  Crockford’s JavaScript

  jQuery Fundamentals (starts with JavaScript basics)

  Mozilla Developer Network’s JavaScript Guide

  Essential Javascript & jQuery Design Patterns for Beginners

  Latex

  The Not So Short Introduction to LATEX (perfect for beginners 特别适åˆåˆå­¦è€?

  Linux

  Advanced Linux Programming

  Lisp

  A Gentle Introduction to Symbolic Computation (PDF)

  Practical Common Lisp

  On Lisp

  ANSI Common Lisp

  Common Lisp the Language, 2nd Edition

  Successful Lisp

  Let Over Lambda – 50 Years of Lisp

  Natural Language Processing in Lisp

  Lua

  Programming In Lua (for v5 but still largely relevant)

  Lua Programming Gems åQˆä¸å®Œå…¨å…è´¹åQŒä½†æœ‰å¾ˆå¤šå…费的章节åŠä»£ç ï¼‰

  Maven

  Better Builds with Maven

  Maven by Example

  Maven: The Complete Reference

  Repository Management with Nexus

  Developing with Eclipse and Maven

  Mercurial

  Mercurial: The Definitive Guide

  HGInit – Mercurial Tutorial by Joel Spolsky

  Nemerle

  See .NET below

  .NET (C# / VB / Nemerle / Visual Studio)

  C# School (covers C# 1.0 and 2.0)

  Visual Studio Tips and Tricks (VS 2003-2005 only)

  Entity Framework

  Charles Petzold’s .NET Book 0

  Threading in C#

  C# Yellow Book (intro to programming)

  C# Programming – Wikibook

  C# Essentials

  Data Structures and Algorithms with Object-Oriented Design Patterns in C#

  Illustrated C# 2008 (.zip, dead link)

  O’Reilly’s C# Pocket Reference Manual (dead link)

  Nemerle

  NoSQL

  CouchDB: The Definitive Guide

  The Little MongoDB Book

  Oberon

  Programming in Oberon (PDF)

  Objective-C

  The Objective-C Programming Language

  OCaml

  Unix System Programming in OCaml

  Introduction to OCaml (PDF)

  Oracle Server

  Oracle’s Guides and Manuals

  Oracle PL/SQL

  PL/SQL Language Reference

  PL/SQL Packages and Types Reference

  Steven Feuerstein’s PL/SQL Obsession – Videos and Presentations

  Parrot / Perl 6

  Using Perl 6 (work in progress)

  Perl

  Higher-Order Perl

  Perl The Hard Way

  Extreme Perl

  Perl Free Online EBooks (meta-list)

  The Mason Book

  Practical mod_perl

  Beginning Perl

  Embedding Perl in HTML with Mason

  Perl & LWP

  Perl for the Web

  Web Client Programming with Perl

  Modern Perl 5

  PHP

  Practical PHP Programming (wiki containing O’Reilly’s PHP In a Nutshell)

  Zend Framework: Survive the Deep End

  PowerShell

  Mastering PowerShell

  Prolog

  Building Expert Systems in Prolog

  Adventure in Prolog

  Prolog Programming A First Course

  Logic, Programming and Prolog (2ed)

  Introduction to Prolog for Mathematicians

  Learn Prolog Now!

  Natural Language Processing in Prolog

  Natural Language Processing Techniques in Prolog

  Prolog techniques

  Applications of Prolog

  Simply logical

  PostgreSQL

  Practical PostgreSQL

  Python

  Dive Into Python

  Dive Into Python 3

  Byte of Python

  Building Skills in Python Version 2.5

  Python Free Online Ebooks (meta-list)

  Python Bibliotheca

  Think Python (PDF)

  Data Structures and Algorithms in Python

  How to Think Like a Computer Scientist: Learning with Python

  Python for Fun

  Invent Your Own Computer Games With Python

  Learn Python The Hard Way

  Thinking in Python

  The Django Book

  Snake Wrangling For Kids

  Natural Language Processing with Python

  R

  The R Manuals

  The R Language

  R by example

  Computational Statistics, Jeremy Penzer

  Ruby

  Programming Ruby

  Why’s (Poignant) Guide to Ruby (mirror)

  Mr. Neighborly’s Humble Little Ruby Book

  Ruby Best Practices

  MacRuby: The Definitive Guide

  Learn Ruby the hard way

  Ruby on Rails

  Ruby on Rails Tutorial: Learn Rails By Example

  Scala

  Programming in Scala, First Edition

  A Scala Tutorial for Java programmers (PDF)

  Scala By Example (PDF)

  Programming Scala

  Xtrace (Github)

  List (Github)

  Pro Scala: Monadic Design Patterns for the Web

  Exploring Lift (published earlier as “The Definitive Guide to Lift”åQ?PDF)

  Scheme

  The Scheme Programming Language (Edition 4)

  Smalltalk

  Free Online Smalltalk Books (meta-list)

  Squeak By Example (Smalltalk IDE)

  Subversion

  Subversion Version Control (PDF)

  Version Control with Subversion

  SQL (implementation agnostic)

  Developing Time-Oriented Database Applications in SQL

  Use The IndexåQ?Luke! (a guide to SQL database performance for developers)

  Teradata

  Teradata Books

  Vim

  A Byte of Vim

  Vim Recipes

ã€€ã€€äº¤äº’å¼æ•™½E‹ç½‘站:http://t.cn/aep0mV

  很全çš?Vim 速查å¡ï¼šhttp://t.cn/aBPFPk

  Websphere

  Getting started with WebSphere (PDF)

 

  二ã€?TG 推è了麻çœç†å·¥å­¦é™¢çš„一门课½E?/strong>

 

  ã€?a rel="nofollow" target="_blank">Structure and Interpretation of computer programs / 计算机程åºå‘˜¾l“构和解æž?/a>》,˜q™é—¨è¯„¡¨‹è§†é¢‘åœ°å€æ˜¯ï¼šhttp://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/

 

  三ã€?Gatekiller 推è的资æºå¦‚下:

 

  How to Design Programs

  Graphics Programing Black Book

  Real World Haskell

  Let Over Lambda

  Starting Forth

  List of Free Online Python Books

  List of Free Online Perl Books

  Squeak by Example

  C# Essentials

  List of Free Online Smalltalk Books

  Successful Lisp

  Introduction to Functional Programming

 

  四ã€ani625推è了一äº?Linux 相关书ç±

 

  The Art of Unix Programming

  Advanced Linux Programming by CodeSourcery LLC

  Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF)

  Advanced Linux Programming

  Secure Programming for Linux and Unix

  The Linux Development Platform

  Secure Programming for Linux and Unix HOWTO

  C++ GUI Programming With Qt 3

  Linux Kernel Module Programming Guide by Ori Pomerantz

  KDE 2.0 Development

  GTK+/Gnome Application Development

  GNU Autoconf, Automake and Libtool

  The Linux Kernel Module Programming Guide

  PHP Essentials

  JavaScript Essentials

  Visual Basic Essentials

 

  上题q?个推è,是得¼œ¨æ•°æœ€é«˜çš„å‰?ä½ã€‚下é¢è¿™äº›å¾—¼œ¨æ•°ä¸å¤ªé«˜çš„åQŒä»Žä¸­æŒ‘选了一些ã€?/strong>

  The Django Book, GNU Free Document License

  Mercurial (Hg) book by Bryan O’Sullivan. åQˆMercurial 是一个分布å¼ç‰ˆæœ¬æŽ§åˆ¶è½¯äšgåQ?/p>

  37 Signals’ å…¬å¸çš?“Getting Real” 也æä¾›å…费在¾U‰K˜…诅R€?/p>

  ã€?a rel="nofollow" target="_blank">Clever Algorithms: Nature-Inspired Programming Recipes 》æ˜qîCº†äººå·¥æ™ø™ƒ½é¢†åŸŸä¸­çš„ 45 个算法。所以这些算法的æè¿°éƒ½è¿žè´¯åƈ完整åQŒç¡®ä¿å¹¿å¤§å—ä¼—å¯ä»¥ç†è§£ã€?˜q™æœ¬ä¹¦ä¹Ÿæœ‰å…费的 PDF 版,也å¯ä»?a rel="nofollow" target="_blank">在线å…费阅读ã€?/p>

  éºÈœç†å·¥å­¦é™¢å…³äºŽè®¡ç®—机科学的开æºè¯¾½E‹ï¼šhttp://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/index.htm

  《Practical Common LispåQ?a rel="nofollow" target="_blank">实用 Common Lisp ¾~–程åQ‰ã€‹Sergio Acosta 强烈推è的,特别适åˆå¯?Lisp 感兴­‘£çš„åˆå­¦è€…,虽然˜q™æœ¬ä¹¦çš„¾U¸è´¨ç‰ˆåƈä¸å…费,但作è€?Peter Seibel å…许å…费在线阅读ã€?/p>

]]>
23ä¸?NETå¼€æºé¡¹ç›?/title><link>http://www.aygfsteel.com/nobody_am/archive/2009/07/06/285623.html</link><dc:creator>MingIsMe</dc:creator><author>MingIsMe</author><pubDate>Mon, 06 Jul 2009 00:46:00 GMT</pubDate><guid>http://www.aygfsteel.com/nobody_am/archive/2009/07/06/285623.html</guid><description><![CDATA[<p>Eric Nelson是微软技术的传é“者,也是<a id="md-0" title="MSDN UK Flash">MSDN UK Flash</a>的技术编辑,他编写了一个列表,列出23个UKå¼€å‘äh员推èçš„<a id="peq3" title=".NETå¼€æºé¡¹ç›?>.NETå¼€æºé¡¹ç›?/a>。微软的一些开æºé¡¹ç›®å¦‚ASP.NET MVCã€DLRã€IronRubyã€IronPythonã€MEF½{‰åˆ™æœªåˆ—入其中ã€?/p> <p>Ericž®è¯•åªåŒ…å«ä¸€ä¸ªæµ‹è¯•框架和一个mock框架åQŒå³ä½¿æœ‰å¾ˆå¤šå…¶å®ƒçš„é¡¹ç›®åŒæ ·å…¥å›´ã€‚他列出了以下项目:</p> <blockquote> <ol> <li><a >[TEST] xUnit.net </a>- 用于TDD的最好的‹¹‹è¯•框架之一ã€?/li> <li><a >[TEST] RhinoMocks mocking framework</a> - 通过创å¾mock使测试更½Ž€å•ã€?/li> <li><a >[TEST] White for automation of Windows applications</a> - 用代ç é©±åЍWindows½E‹åºæ¥æµ‹è¯•ã€?/li> <li><a >[TEST] Gallio Automation Platform</a> - å¯ä»¥˜q行很多‹¹‹è¯•框架åQŒå¦‚MSTestã€xUnitã€NUnit以åŠMbUnitã€?/li> <li><a >[DATA] Fluent NHibernate</a> - Fluent NHibernate让你å¯ä»¥ç”¨C#ä»£ç æ¥è®¾¾|®æ˜ ž®„å…³¾p…R€?/li> <li><a >[OOP] StructureMap Dependency Injection/Inversion of Control </a>- 解耦类和ä¾èµ–ã€?/li> <li><a >[OOP] Managed Extensibility Framework</a> - ä»Žé™æ€ç¼–译程åºè{æ¢åˆ°åЍæ€è¯­­a€½E‹åº</li> <li><a >[APPFX] s#arp architecture for web applications</a> - 用ASP.NET MVCå’ŒNHibernate快速开å‘web应用½E‹åºã€?/li> <li><a >[APPFX] OpenRasta REST based framework for building web applications</a> - è®©ä½ çš„ç¨‹åºæ‹¥æœ‰ä¸€ä¸ªREST API接å£ã€?/li> <li><a >[APPFX] CSLA.NET Application Framework</a> - .NETå¼€å‘ç»¼åˆæ¡†æž?/li> <li><a >[APPFX] Spring.NET Application Framework</a> - Webå¼€å‘ç»¼åˆæ¡†æž?/li> <li><a >[RUNTIME] Mono enables .NET on Linux and Mac</a> - 在Linuxã€BSDå’ŒOS X上ä‹Éç”?NET.</li> <li><a >[UTIL] Sandcastle Help File Builder</a> - 创å¾MSDNæ ·å¼çš„æ–‡æ¡£ã€?/li> <li><a >[HELPER] EasyHook for Windows API Hooking</a> - 用托½Ž¡ä»£ç æ‰©å±•éžæ‰˜ç®¡ä»£ç ã€?/li> <li><a >[HELPER] Json.NET for working with JSON formatted data</a> - 用一æ¡è¯­å¥åºåˆ—化.NET对象ã€?/li> <li><a >[HELPER] Excel Data Reader for Excel 97 to 2007</a> - ž®†Excelæ–‡äšgè¯Õd–到Datasetä¸?/li> <li><a >[HELPER] #SNMP Library</a> - 对SNMP的包装ã€?/li> <li><a >[HELPER] DotNetZip Library</a> - ZIP库和½CÞZ¾‹ã€?/li> <li><a >[HELPER] Visio Automation Library</a> - 用C#ã€VB和其它语­a€é©±åЍViso</li> <li><a >[HELPER] PHPExcel is not just about Excel!</a> - è¯Õd†™Execel 2007ã€PDFã€HTML½{‰æ–‡æ¡£çš„PHP¾c?/li> <li><a >[HELPER] Argotic Syndication Framework for RSS, Atom, OPML and more</a> - è¯Õd†™èšåˆå†…容的库</li> <li><a >[HELPER] NLog logging library</a> -è®©ä½ çš„ç¨‹åºæ˜“于调è¯?</li> <li><a >A great directory of C# Open Source software</a> - 一个éžå¸¸å¥½çš„åº“ã€æ¡†æž¶å’Œå·¥å…·åˆ—表</li> </ol> </blockquote> <p>˜q˜æœ‰ä¸€äº?a id="ohk:" title="æäº¤çš„项ç›?>æäº¤çš„项ç›?/a>没有˜q›å…¥åˆ—表åQ?/p> <ul> <li><a target="_blank" >Castle</a></li> <li><a target="_blank" >MvcContrib</a></li> <li><a target="_blank" >Subversion</a></li> <li><a target="_blank" >Nant</a></li> <li><a target="_blank" >log4net</a></li> <li><a target="_blank" >Lucene</a></li> <li><a target="_blank" >CruiseControl</a></li> <li><a target="_blank" >MEF</a></li> <li><a target="_blank" >Paint.NET</a></li> </ul> <p>一些ä‹Éç”?a target="_blank" >MS-PL</a>许å¯è¯çš„å¾®èÊY™å¹ç›®:</p> <ul> <li><a target="_blank" >ASP.NET MVC Open Source</a></li> <li><a >.NET Dynamic Language Runtime</a> (DLR)</li> <li><a >IronRuby</a></li> <li><a >IronPython</a></li> <li><a >Silverlight Toolkit</a></li> <li><a >Ajax Control Toolkit</a></li> <li><a >Managed Extensibility Framework</a> (MEF)</li> </ul> <p>MS-PL是OSI认å¯çš„许å¯è¯åQŒGNU也认å¯å®ƒä¸ºå…è´¹èÊY件许å¯è¯åQŒå®ƒå…许ä»ÖM½•人查看æºä»£ç ã€ä¿®æ”ÒŽºä»£ç òq¶å‘布修改åŽçš„æºä»£ç ã€‚而且此许å¯è¯òq¶ä¸é™? 制代ç åªèƒ½è¿è¡Œåœ¨Windows上,˜q™æ ·ž®±å¯ä»¥å°†ä»£ç ¿UÀL¤åˆ°å…¶å®ƒæ“作系¾lŸï¼Œä¾‹å¦‚MonoåQˆLinux上的.NETåQ‰å’ŒMonolightåQˆLinux上的 SilverlightåQ‰ã€‚MonoDevelop有一ä¸?a id="lth3" title="æ’äšg">æ’äšg</a>åQŒå¯ä»¥ç”¨æ¥åœ¨Linuxå’ŒMac OS X上开å‘ASP.NET MVC½E‹åºã€?/p> <img src ="http://www.aygfsteel.com/nobody_am/aggbug/285623.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/nobody_am/" target="_blank">MingIsMe</a> 2009-07-06 08:46 <a href="http://www.aygfsteel.com/nobody_am/archive/2009/07/06/285623.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>240多个jQueryæ’äšghttp://www.aygfsteel.com/nobody_am/archive/2009/07/02/285046.htmlMingIsMeMingIsMeWed, 01 Jul 2009 16:45:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2009/07/02/285046.html强烈推èåQ?40多个jQueryæ’äšgã€å¤‡ç”¨ingã€?

概述

jQuery 是ç‘ô prototype 之åŽåˆä¸€ä¸ªä¼˜¿U€çš?Javascript 框架。其宗旨是—写更少的代ç ?åšæ›´å¤šçš„事情。它是轻é‡çñ”çš?js åº?压羃åŽåªæœ?1k) åQŒè¿™æ˜¯å…¶å®ƒçš„ js 库所ä¸åŠ çš„ï¼Œå®ƒå…¼å®?CSS3åQŒè¿˜å…¼å®¹å„ç§‹¹è§ˆå™¨ï¼ˆIE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+åQ‰ã€?jQuery 是一个快速的åQŒç®€‹zçš„ javaScript 库,使用戯‚ƒ½æ›´æ–¹ä¾¿åœ°å¤„ç† HTML documentsã€eventsã€å®žçŽ°åŠ¨ç”ÀL•ˆæžœï¼Œòq¶ä¸”方便åœîCØ“¾|‘ç«™æä¾› AJAX 交互ã€?jQuery ˜q˜æœ‰ä¸€ä¸ªæ¯”较大的优势是åQŒå®ƒçš„æ–‡æ¡£è¯´æ˜Žå¾ˆå…¨ï¼Œè€Œä¸”å„ç§åº”用也说得很详细åQŒåŒæ—¶è¿˜æœ‰è®¸å¤šæˆç†Ÿçš„æ’äšgå¯ä¾›é€‰æ‹©ã€?jQuery 能够使用æˆïLš„ html ™åµä¿æŒä»£ç å’Œ html 内容分离åQŒä¹Ÿž®±æ˜¯è¯ß_¼Œä¸ç”¨å†åœ¨ html é‡Œé¢æ’入一堆jsæ¥è°ƒç”¨å‘½ä»¤äº†åQŒåªéœ€å®šä¹‰ id å›_¯ã€‚今天在Kollermedia.at上å‘çŽîCº†ä¸€½‹‡JQueryæ’äšg列表çš?a target="_blank" >文章åQŒç‰¹æŽ¨è如下ã€?/p>

æ–‡äšg上传(File upload)

Ajax File Upload.
jQUploader.
Multiple File Upload plugin
jQuery File Style.
Styling an input type file.
Progress Bar Plugin.

表å•验è¯(Form Validation)

jQuery Validation.
Auto Help.
Simple jQuery form validation.
jQuery XAV - form validations.
jQuery AlphaNumeric.
Masked Input.
TypeWatch Plugin.
Text limiter for form fields.
Ajax Username Check with jQuery.

表å•åQ选喿¡?Form - Select Box stuff)

jQuery Combobox.
jQuery controlled dependent (or Cascadign) Select List.
Multiple Selects.
Select box manipulation.
Select Combo Plugin.
jQuery - LinkedSelect
Auto-populate multiple select boxes.
Choose Plugin (Select Replacement).

表å•基本ã€è¾“入框ã€é€‰æ‹©æ¡†ç­‰(Form Basics, Input Fields, Checkboxes etc.)

jQuery Form Plugin.
jQuery-Form.
jLook Nice Forms.
jNice.
Ping Plugin.
Toggle Form Text.
ToggleVal.
jQuery Field Plugin.
jQuery Form’n Field plugin.
jQuery Checkbox manipulation.
jTagging.
jQuery labelcheck.
Overlabel.
3 state radio buttons.
ShiftCheckbox jQuery Plugin.
Watermark Input.
jQuery Checkbox (checkboxes with imags).
jQuery SpinButton Control.
jQuery Ajax Form Builder.
jQuery Focus Fields.
jQuery Time Entry.

æ—‰™—´ã€æ—¥æœŸå’Œé¢œè‰²é€‰å–(Time, Date and Color Picker)

jQuery UI Datepicker.
jQuery date picker plugin.
jQuery Time Picker.
Time Picker.
ClickPick.
TimePicker.
Farbtastic jQuery Color Picker Plugin.
Color Picker by intelliance.fr.

投票æ’äšg(Rating Plugins)

jQuery Star Rating Plugin.
jQuery Star Rater.
Content rater with asp.net, ajax and jQuery.
Half-Star Rating Plugin.

æœçƒ¦æ’äšg(Search Plugins)

jQuery Suggest.
jQuery Autocomplete.
jQuery Autocomplete Mod.
jQuery Autocomplete by AjaxDaddy.
jQuery Autocomplete Plugin with HTML formatting.
jQuery Autocompleter.
AutoCompleter (Tutorial with PHP&MySQL).
quick Search jQuery Plugin.

¾~–辑å™?Inline Edit & Editors)

jTagEditor.
WYMeditor.
jQuery jFrame.
Jeditable - edit in place plugin for jQuery.
jQuery editable.
jQuery Disable Text Select Plugin.
Edit in Place with Ajax using jQuery.
jQuery Plugin - Another In-Place Editor.
TableEditor.
tEditable - in place table editing for jQuery.

多媒体ã€è§†é¢‘ã€Flash½{?Audio, Video, Flash, SVG, etc)

jMedia - accessible multi-media embedding.
JBEdit - Ajax online Video Editor.
jQuery MP3 Plugin.
jQuery Media Plugin.
jQuery Flash Plugin.
Embed QuickTime.
SVG Integration.

囄¡‰‡(Photos/Images/Galleries)

ThickBox.
jQuery lightBox plugin.
jQuery Image Strip.
jQuery slideViewer.
jQuery jqGalScroll 2.0.
jQuery - jqGalViewII.
jQuery - jqGalViewIII.
jQuery Photo Slider.
jQuery Thumbs - easily create thumbnails.
jQuery jQIR Image Replacement.
jCarousel Lite.
jQPanView.
jCarousel.
Interface Imagebox.
Image Gallery using jQuery, Interface & Reflactions.
simple jQuery Gallery.
jQuery Gallery Module.
EO Gallery.
jQuery ScrollShow.
jQuery Cycle Plugin.
jQuery Flickr.
jQuery Lazy Load Images Plugin.
Zoomi - Zoomable Thumbnails.
jQuery Crop - crop any image on the fly.
Image Reflection.

Google地图åQˆGoogle MapåQ?/font>

jQuery Plugin googlemaps.
jMaps jQuery Maps Framework.
jQmaps.
jQuery & Google Maps.
jQuery Maps Interface forr Google and Yahoo maps.
jQuery J Maps - by Tane Piper.

游æˆ(Games)

Tetris with jQuery.
jQuery Chess.
Mad Libs Word Game.
jQuery Puzzle.
jQuery Solar System (not a game but awesome jQuery Stuff).

表格½{?Tables, Grids etc.)

UI/Tablesorter.
jQuery ingrid.
jQuery Grid Plugin.
Table Filter - awesome!.
TableEditor.
jQuery Tree Tables.
Expandable “Detail” Table Rows.
Sortable Table ColdFusion Costum Tag with jQuery UI.
jQuery Bubble.
TableSorter.
Scrollable HTML Table.
jQuery column Manager Plugin.
jQuery tableHover Plugin.
jQuery columnHover Plugin.
jQuery Grid.
TableSorter plugin for jQuery.
tEditable - in place table editing for jQuery.
jQuery charToTable Plugin.
jQuery Grid Column Sizing.
jQuery Grid Row Sizing.

¾lŸè®¡å›?Charts, Presentation etc.)

jQuery Wizard Plugin .
jQuery Chart Plugin.
Bar Chart.

è¾ÒŽ¡†ã€åœ†è§’ã€èƒŒæ™?Border, Corners, Background)

jQuery Corner.
jQuery Curvy Corner.
Nifty jQuery Corner.
Transparent Corners.
jQuery Corner Gallery.
Gradient Plugin.

文字和超链接(Text and Links)

jQuery Spoiler plugin.
Text Highlighting.
Disable Text Select Plugin.
jQuery Newsticker.
Auto line-height Plugin.
Textgrad - a text gradient plugin.
LinkLook - a link thumbnail preview.
pager jQuery Plugin.
shortKeys jQuery Plugin.
jQuery Biggerlink.
jQuery Ajax Link Checker.

é¼ æ ‡æç¤ºåQˆTooltipsåQ?/font>

jQuery Plugin - Tooltip.
jTip - The jQuery Tool Tip.
clueTip.
BetterTip.
Flash Tooltips using jQuery.
ToolTip.

èœå•和导èˆ?Menus, Navigations)

jQuery Tabs Plugin - awesome! . [demo nested tabs.]
another jQuery nested Tab Set example (based on jQuery Tabs Plugin).
jQuery idTabs.
jdMenu - Hierarchical Menu Plugin for jQuery.
jQuery SuckerFish Style.
jQuery Plugin Treeview.
treeView Basic.
FastFind Menu.
Sliding Menu.
Lava Lamp jQuery Menu.
jQuery iconDock.
jVariations Control Panel.
ContextMenu plugin.
clickMenu.
CSS Dock Menu.
jQuery Pop-up Menu Tutorial.
Sliding Menu.

http://stilbuero.de/jquery/tabs_3/

òqȯã€ç¿»è½¬ç­‰(Accordions, Slide and Toggle stuff)

jQuery Plugin Accordion.
jQuery Accordion Plugin Horizontal Way.
haccordion - a simple horizontal accordion plugin for jQuery.
Horizontal Accordion by portalzine.de.
HoverAccordion.
Accordion Example from fmarcia.info.
jQuery Accordion Example.
jQuery Demo - Expandable Sidebar Menu.
Sliding Panels for jQuery.
jQuery ToggleElements.
Coda Slider.
jCarousel.
Accesible News Slider Plugin.
Showing and Hiding code Examples.
jQuery Easing Plugin.
jQuery Portlets.
AutoScroll.
Innerfade.

拖放æ’äšg(Drag and Drop)

UI/Draggables.
EasyDrag jQuery Plugin.
jQuery Portlets.
jqDnR - drag, drop resize.
Drag Demos.

XML XSL JSON Feeds

XSLT Plugin.
jQuery Ajax call and result XML parsing.
xmlObjectifier - Converts XML DOM to JSON.
jQuery XSL Transform.
jQuery Taconite - multiple Dom updates.
RSS/ATOM Feed Parser Plugin.
jQuery Google Feed Plugin.

‹¹è§ˆå™?Browserstuff)

Wresize - IE Resize event Fix Plugin.
jQuery ifixpng.
jQuery pngFix.
Link Scrubber - removes the dotted line onfocus from links.
jQuery Perciformes - the entire suckerfish familly under one roof.
Background Iframe.
QinIE - for proper display of Q tags in IE.
jQuery Accessibility Plugin.
jQuery MouseWheel Plugin.

å¯¹è¯æ¡†ã€ç¡®è®¤çª—å?Alert, Prompt, Confirm Windows)

jQuery Impromptu.
jQuery Confirm Plugin.
jqModal.
SimpleModal.

CSS

jQuery Style Switcher.
JSS - Javascript StyleSheets.
jQuery Rule - creation/manipulation of CSS Rules.
jPrintArea.

DOMã€AJAX和其它JQueryæ’äšgåQˆDOM, Ajax and other jQuery pluginsåQ?/font>

FlyDOM.
jQuery Dimenion Plugin.
jQuery Loggin.
Metadata - extract metadata from classes, attributes, elements.
Super-tiny Client-Side Include Javascript jQuery Plugin.
Undo Made Easy with Ajax.
JHeartbeat - periodically poll the server.
Lazy Load Plugin.
Live Query.
jQuery Timers.
jQuery Share it - display social bookmarking icons.
jQuery serverCookieJar.
jQuery autoSave.
jQuery Puffer.
jQuery iFrame Plugin.
Cookie Plugin for jQuery.
jQuery Spy - awesome plugin.
Effect Delay Trick.
jQuick - a quick tag creator for jQuery.
Metaobjects
.
elementReady.



]]>
DotNet Open Source Listhttp://www.aygfsteel.com/nobody_am/archive/2009/04/14/265565.htmlMingIsMeMingIsMeTue, 14 Apr 2009 09:14:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2009/04/14/265565.htmle-Commerce / Online Shopping Carts
  1. Dash Commerce - http://dashcommerce.org
  2. Dot Shopping Cart - http://www.dotshoppingcart.com/
  3. VevoCart - http://www.vevocart.com/
  4. e-Shop ASP.NET - http://fkn1337.com/e-shop-aspnet-mysql-script/
  5. PressTopia Shop - http://presstopia.com/dnn/Default.aspx?tabid=236
  6. nopCommerce - http://nopcommerce.codeplex.com
  7. MVC eCommerce Starter Kit - http://mvcecommercekit.codeplex.com 

Content Management Systems

  1. Umbraco - http://umbraco.org
  2. DotNetNuke - http://www.dotnetnuke.com
  3. Sense/Net CMS - http://sensenet.codeplex.com
  4. Novella - http://novella.codeplex.com
  5. N2 CMS - http://n2.codeplex.com
  6. MojoPortal - http://mojoportal.codeplex.com/
  7. The Beer House - http://www.codeplex.com/Wiki/View.aspx?ProjectName=TheBeerHouse
  8. My Web Pages Starter Kit - http://www.codeplex.com/MyWebPagesStarterKit/ 
  9. Basic CMS - http://www.basic-cms.com
  10. JMD CMS - http://www.codeplex.com/JMDCMS/
  11. Nickel & Dime CMS - http://ndcms-net.sourceforge.net/
  12. Nolior EZNews - http://sourceforge.net/projects/nolioreznews/
  13. Hydrogen CMS - http://hydrogencms.codeplex.com

Blogs / Blogging

  1. Blog Engine .NET - http://www.dotnetblogengine.net
  2. BlogSVC (MVC) - http://www.codeplex.com/blogsvc
  3. Oxite (MVC) - http://oxite.codeplex.com
  4. DasBlog - http://www.dasblog.info
  5. Sub Text - http://www.subtextproject.com
  6. PressTopia - http://presstopia.com/dnn/Default.aspx?tabid=160 

Link Directories

  1. (ASPLD) ASP.NET 3.5 Link Directory - http://www.n3o.co.uk/software/aspld.aspx
  2. XD Link Directory - http://www.ex-designz.net/softwaredetail.asp?fid=835
  3. ASP.NET 2.0 Link Directory - http://www.davemackey.net/Applications/LinkDirectory/tabid/88/Default.aspx

Customer Relationship Management (CRM)

  1. Splendid CRM - http://www.splendidcrm.com

Wiki's

  1. FlexWiki - http://www.flexwiki.com
  2. ScrewTurn Wiki - http://www.screwturn.eu/Default.aspx?Page=Wiki&AspxAutoDetectCookieSupport=1 

Instant Message Apps

  1. IM.NET - http://www.dotnetim.com

Forum / Portals / Networks

  1. Kigg (Digg like application) - http://www.codeplex.com/Kigg
  2. Club Starter Kit - http://www.codeplex.com/ClubStarterKit/
  3. Drop Things (Web 2.0 Portal) - http://www.dropthings.com
  4. Yet Another Forum - http://www.yetanotherforum.net
  5. DMG Forum - http://www.dmgforums.com/

Recruitment / Job Systems

  1. Job Site Starter Kit - http://www.binaryintellect.net/articles/a203c824-aec1-41b7-b3ec-49a15d5c9ebb.aspx
  2. Stock / Inventory Tracker - http://itracker.df-software.com/download.aspx

Web / E Mail

  1. DotNet Open Mail - http://dotnetopenmail.sourceforge.net/
  2. qqMail - http://www.umailcampaign.com/mailcom.aspx
  3. Sharp Web Mail - http://anmar.eu.org/projects/sharpwebmail/
  4. Web News Letter - http://www.codeplex.com/newsletter 

Image & Video Galleries

  1. Media Library Starter Kit - http://www.asp.net/downloads/starter-kits/media-library/
  2. ASP.NET Foto Gallery - http://www.pentabyte.de/software/WebControls/
  3. gPhotoNet - http://www.thezeal.com/software/index.php?gPhotoNet

Classifieds

  1. Classifieds Starter Kit - http://msdn.microsoft.com/en-us/cc533489.aspx
  2. Dating .NET - http://www20.brinkster.com/joemay7/

Misc

  1. ASP.NET Small Business Web Site Starter Kit - http://msdn.microsoft.com/en-us/cc533514.aspx
  2. ASP.NET Personal Web Site Starter Kit - http://msdn.microsoft.com/en-us/cc533486.aspx
  3. Time Tracking Website - http://msdn.microsoft.com/en-us/cc533488.aspx
  4. DinnerNow (Food Ordering System) - http://www.dinnernow.net
  5. Bug Tracker .NET - http://ifdefined.com/bugtrackernet.html

If you would like your application added to this list please just post a link below and I'll add it



]]>
五å多秾|‘页设计工具大集å?http://www.aygfsteel.com/nobody_am/archive/2008/06/08/206613.htmlMingIsMeMingIsMeSat, 07 Jun 2008 17:59:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2008/06/08/206613.html

现在åŸÞZºŽ¾|‘络的儿U工典P¼Œž®±åƒæ˜¯å¯’武纪的生物大爆å‘一æ äh¶ŒçŽîCº†å‡ºæ¥åQŒå¤šå¾—ç®€ç›´è®©äººæœ‰ç‚¹ç›®ä¸æš‡æŽ¥ï¼Œè®°éƒ½è®îC¸˜q‡æ¥ã€‚对于网™åµè®¾è®¡è€…们也ä¸ä¾‹å¤–åQšçŽ°åœ¨çš„è®¸å¤šå·¥å…·èƒ½è®©ä¸€ä¸ªèœé¸Ÿä¹Ÿå˜æˆè®¾è®¡å¸ˆï¼ˆä¸çŸ¥é“是好还是ä¸å¥½ï¼‰åQŒå¯¹äºŽé‚£äº›è€é¸Ÿä»¬ï¼Œä¹Ÿæœ‰ä¸€å †å·¥å…·ä¾›ä»–们使用。我们这里就攉™›†äº†äº”å多¿Uè¿™æ ïLš„工具和资æºï¼Œä½ å¯ä»¥åœ¨å›žå¤é‡ŒæŠŠä½ çŸ¥é“的也加˜q›æ¥ã€?

 
åˆå­¦è€…资æºåŒº
    sitekreator

SiteKreator - ä½ å¯ä»¥çž¬é—´è®¾è®¡ã€å¾ç«‹åƈ开通一个具有完全å“牌的个äh或商用网站ã€?/p>

Leafletter - 让你建立一ä¸?#8220;ž®ç½‘ç«?#8221;åQŒç„¶åŽä½ å¯ä»¥æŠŠå®ƒå‘布在ä“Q何地方(SNS¾|‘ç«™ã€åšå®¢æˆ–者其它网站都行)ã€?/p>

SynthaSite - 一个基于æµè§ˆå™¨çš„å¾ç«™å·¥å…øP¼Œä½¿ä½ èƒ½å’Œä½ çš„æœ‹å‹å’ŒåŒäº‹ä¸€èµ·å作æ¥åšäº‹æƒ…。也æä¾›è®¸å¤šwidgetã€æ¨¡æ¿å’Œå…¶ä»–供你使用的组件ã€?/p>

Weebly - 借助它,你å¯ä»¥åœ¨ä¸€ä¸ªæ‹–攄¡š„界é¢é‡Œï¼Œå»ºç«‹ä¸€ä¸ªæ‹¥æœ‰å®Œå…¨å“牌的¾|‘ç«™åQŒè€Œä¸”你还å¯ä»¥éšæ—¶æ›´æ”¹ä½ çš„è®¾è®¡ã€?br />
FolioNow - 一个能让å¾ç«™å˜å¾—æ—¢çœé’±åˆçœåŠ›çš„åŸÞZºŽ¾|‘页的工兗÷€?/div>

Zinadoo
- 建立和分享手机网站的工具.

mobispirit - 一个在¾U¿åˆ›å»ºæ‰‹æœºç¨‹åºçš„òq›_°.

siteMighty - 一个基于网¾lœçš„建站òq›_°åQŒå‡ åˆ†é’Ÿž®±å¯ä»¥å¾ç«‹ä¸€ä¸ªè”盟网ç«?

CreataPlace - ä¸éœ€è¦ç¼–½E‹å°±å¯ä»¥å»ºç«‹ä¸€ä¸ªå±•½Cºç½‘站,很便å®?

weebox - 拥有拖放界é¢çš„å…¨Flash¾|‘站建站工具.

freewebs - 一个便æïLš„建站工具åQŒæœ‰æ•°ç™¾ä¸ªæ¨¡æ¿å’Œå¯ä»¥è‡ªå®šä¹‰çš„widgets.

Built Smarter - 拥有æ•îC¸æ¸…的模æ¿åQŒæ ¹æ®ä½ æ„¿æ„付的é’Þqš„多少åQŒæä¾›å†…建的模å—和自定义选项.

sampa - å…费建站æœåŠ¡åQŒåœ¨™åµé¢ä¸Šæ–¹æœ‰ä¸€ä¸ªå¹¿å‘Šæ¡.

Wufoo - 支æŒCSSå’ŒXHTML的表格工å…?

formspring - å¦ä¸€ä¸ªè¡¨æ ¼å·¥å…—÷€‚它å¯ä»¥æŠŠè¡¨æ ¼çš„æäº¤è¡¨å•通过RSS或者一个汇总表呈现¾l™ä½ åQŒå…åŽÖMº†ä½ æŽ¥æ”¶æ•°ä»¥ç™¾è®¡çš„é‚®äšg的麻çƒ?

高çñ”用户资æº

    inserit

inserit - æ— éœ€å†™ä»£ç çš„CMS(Content Management System,内容½Ž¡ç†¾pÈ»Ÿ)åQŒè®©ä½ è‡ªç”±åœ°è®¾è®¡ä½ çš„¾|‘ç«™åQŒåÆˆéšæ—¶æ·ÕdŠ åœ¨çº¿çš„å†…å®V€‚ä½ ˜q˜å¯ä»¥åœ¨ä»ÖM½•地方都能½Ž¡ç†ä½ çš„¾|‘ç«™ (Linux环境或者Windows环境å‡å¯).

BrowserShots - 用ä¸åŒçš„‹¹è§ˆå™¨æ¥‹¹‹è¯•ä½ çš„¾|‘站的工å…?

tweak - Tweak是一个CMS,它å¯ä»¥è®©ä½ è®¾è®¡ä½ è‡ªå·±çš„æ ·å¼ï¼Œòq¶ä¿æŒç»Ÿä¸€çš„风根{€‚你也å¯ä»¥ä¿å­˜ä“Q何类型的¾|‘页(HTML, PHP, ASP, JSP½{‰ç­‰).

formatpixel - ˜q™ä¸ªå·¥å…·å¯ä»¥è®©ä½ å»ºç«‹åœ¨çº¿æ‚å¿—ã€çˆ±å¥½è€…æ‚志或者类目,òq¶æŠŠå®ƒä»¬åœ¨ä½ çš„网站上分äín.

RoundedCornr - 生æˆåœ†è§’囑ÖÅžçš„HTML/CSS代ç å’Œå›¾ç‰‡çš„工具.

囑ÖŞ设计资æºåŒ?/strong>

    colorschemer

ColorSchemer - ä¸ç®¡æˆ‘设计什么东西,我æ€ÖM¼šåˆ°è¿™ä¸ªç½‘站的用色æ–ÒŽ¡ˆå±•示那儿åŽÕd¯»æ‰„¡µæ„?

COLOURlovers - ˜q™å„¿æœ‰æ“vé‡çš„ç‰|°”åèƒö的色彩主题ã€ç”¨è‰²æ–¹æ¡ˆå’Œè‰²å½©­‘‹åŠ¿.

Color Mixers - Color Mixersä¸ÞZ½ ç”Ÿæˆç”¨è‰²æ–ÒŽ¡ˆåQŒå®ƒ˜q˜æœ‰ä¸€ä¸ªæ»šåЍæ¡ç•Œé¢åQŒè®©ä½ è½»æ¾è°ƒè‰?

ColorBlender - 一‹Æ‘օ费的在线调色æ¿ç”Ÿæˆå·¥å…øP¼Œä½ åªéœ€è¦ç”¨å–色器选一¿U颜è‰ÔŒ¼Œç„¶åŽå®ƒå°±ä¼šè‡ªåŠ¨äØ“ä½ ç”Ÿæˆä¸€ä¸ªå…­è‰²çš„调色æ?

Kuler - 一个å¯ä»¥åšå‡ºå…¼å®¹Adobe Creative Suite¾pÕdˆ—软äšg的用色方案的工具.

colr - åˆä¸€ä¸ªç”¨è‰²æ–¹æ¡ˆç”Ÿæˆå™¨.

Color Tool 2.0.8 Alpha - 一个很é…ïLš„用色æ–ÒŽ¡ˆç”Ÿæˆå™¨ï¼Œä½ å¯ä»¥æŠŠå®ƒä»¬å­˜ä¸‹æ¥ï¼Œ¾|‘ç«™˜q˜ä¼šæä¾›é“¾æŽ¥.

Vecteezy - 从这里,你å¯ä»¥å¾—åˆîC¸–界顶æžè‰ºæœ¯å®¶ä»¬çš„作å“的矢é‡å›¾ç‰?

BlogFlux Button Maker - ä½ ä¸ç”¨çŸ¥æ™“怎么用图形èÊYä»Óž¼Œåªè¦ç‚¹å‡ ä¸‹ï¼ŒButton Makerž®Þpƒ½åšå‡º80×15å’?8×13两ç§è§„格的按é’?

Button Browser - 按钮展示和制作的¾|‘ç«™.

Brilliant Button Maker - åˆä¸€ä¸ªèƒ½åšå‡º80×15大å°çš„æŒ‰é’®çš„工具.

Background Image Maker - ç”¨è¿™ä¸ªå·¥å…øP¼Œä½ å¯ä»¥äؓ你的¾|‘站设计出斜¾Uр桾UV€ç‚¹é˜‰|ˆ–æ¸å˜çš„背景图æ¡?

Brusheezy - ˜q™é‡Œå¯ä»¥ä¸‹è²åˆ°å¾ˆé…ïLš„Photoshop½W”刷.

Tartan Maker - 一个å¯ä»¥åšå‡ÞZ½ è‡ªå·±çš„æ–¹æ ¼å›¾æ¡ˆçš„æ–¹ä¾¿çš„工典P¼Œä½ å¯ä»¥æŠŠå®ƒç”¨ä½œèƒŒæ™¯æˆ–者其它用é€?

iconfinder - 一个图标æœç´¢å¼•æ“?

Stripe Generator 2.0 - ä¸€ä¸ªäØ“ä½ çš„¾|‘站制作æ¡çº¹èƒŒæ™¯çš„å·¥å…?

FamFamFam - Silk icons,攉™›†äº?000¿U图标的¾|‘站。这儿你能找到文字图标ã€å›¾å½¢å›¾æ ‡ã€XHTML/CSS按钮ã€ç¡¬ç›˜å›¾æ ‡ã€?feed图标½{‰ç­‰.

IconBuffet - 专业图标攉™›†ç«?

Web 2.0 Badges - ä¸ÞZ½ çš„网站制作Web 2.0囄¡« çš„å·¥å…?

The Icon Factory - ˜q™é‡Œæä¾›å…费的图标,以åŠä¸€ä¸ªå…±äº«çš„图标制作软äšgIconBuilder.

Colr Pickr - 你选一¿U颜è‰ÔŒ¼ŒColr Pickr会从Flickrä¸ŠäØ“ä½ æ‰¾åˆîC¸»è¦ç”±˜q™ç§é¢œè‰²¾l„æˆçš„ç…§ç‰?

terra IMS mapicons Dynamic Generator - ˜q™ä¸ªå·¥å…·å¯ä»¥åˆ›å¾ä¸€ä¸ªç”¨åœ¨Google地图或Yahoo地图上的PNGæ ¼å¼çš„图æ ?

pic2color - ˜q™ä¸ªå·¥å…·å¯ä»¥æŠŠç…§ç‰‡åšæˆè°ƒè‰²æ¿åQŒè¿˜å¯ä»¥ä¸ÞZ½ çš„å›¾ç‰‡é‡æ–°ç€è‰?

TypeTester - TypeTesterå¯ä»¥è®©ä½ æŠŠä¸åŒå­—ä½“åÆˆæŽ’æ”¾åœ¨ä¸€èµøP¼Œä»¥ä¾¿ä½ åšé€‰æ‹©.

其它资æºåŒ?/strong>

    designsnack

DesignSnack - 一个网™åµè®¾è®¡å±•½Cºç«™åQŒæµè§ˆè€…å¯ä»¥ç»™è¢«å±•½Cºçš„设计投票.

Web Creme - ˜q™é‡Œé›†åˆäº†è®¸å¤šå¯Œæœ‰çµæ°”çš„¾|‘页设计.

CSS Collection - ˜q™é‡Œæ”‰™›†äº†ä¸€äº›ç”¨CSSåšå‡ºæ¥çš„站点也许你能从中扑ֈ°ç‰|„Ÿ.

cssBeauty - 充满ç‰|°”çš„CSS¾|‘站攉™›†ç«™ç‚¹.

ConceptShare - 在这儿,你å¯ä»¥å’Œä½ çš„客户以åŠåˆä½œäººåˆ†äº«ä½ çš„作å“,清晰的界é¢è®©å®¢æˆ·ä»¬ä¸€ç›®äº†ç„?

A List Apart - ˜q™é‡Œæœ‰å…³å¿ƒç½‘¾lœå‘展和¾|‘页设计的äh必读的åšå®¢å’Œåœ¨çº¿æ‚å¿—.

Web Design from Scratch - ‹¹·é‡çš„设计资æºç«™åQŒåŒ…括æ˜q°è®¾è®¡è¿‡½E‹çš„æ–‡ç« ã€ç›®æ ‡å¯¼å‘设计ã€ç½‘站结构和å¯ç”¨æ€§ç­‰å†…容.

Css ForSale - 在这个网站里åQŒä½ å¯ä»¥è´­ä¹°åˆ°å·²¾lå¾ç«‹å¥½äº†çš„CSS站点åQŒæˆ–者就æ¥è¿™å„¿æ‰¾ç‚¹çµæ„Ÿå§.



]]>
java.lang.OutOfMemoryError: PermGen spaceåŠå…¶è§£å†³æ–ÒŽ³•http://www.aygfsteel.com/nobody_am/archive/2008/06/04/205848.htmlMingIsMeMingIsMeWed, 04 Jun 2008 08:02:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2008/06/04/205848.html

1�br />

PermGen space的全¿U°æ˜¯Permanent Generation space,是指内存的永久ä¿å­˜åŒºåŸŸOutOfMemoryError: PermGen space从表é¢ä¸Šçœ‹å°±æ˜¯å†…存益出,解决æ–ÒŽ³•ä¹Ÿä¸€å®šæ˜¯åŠ å¤§å†…å­˜ã€‚è¯´è¯´äØ“ä»€ä¹ˆä¼šå†…å­˜ç›Šå‡ºåQšè¿™ä¸€éƒ¨åˆ†ç”¨äºŽå­˜æ”¾Classå’ŒMeta的信æ?Class在被 Load的时候被攑օ¥PermGen space区域åQŒå®ƒå’Œå’Œå­˜æ”¾Instanceçš„Heap区域ä¸åŒ,GC(Garbage Collection)ä¸ä¼šåœ¨ä¸»½E‹åº˜q行期对PermGen space˜q›è¡Œæ¸…ç†åQŒæ‰€ä»¥å¦‚果你的APP会LOAD很多CLASSçš„è¯,ž®±å¾ˆå¯èƒ½å‡ºçްPermGen space错误。这¿U错误常è§åœ¨webæœåС噍坹JSP˜q›è¡Œpre compile的时候ã€?/p> æ”ÒŽ­£æ–ÒŽ³•åQ?Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

2�/p>

在tomcat中redeploy时出现outofmemory的错�

å¯ä»¥æœ‰ä»¥ä¸‹å‡ ä¸ªæ–¹é¢çš„原因:

åQ?使用äº?font color="#800080">proxool,å›?span style="color: #000000">ä¸?font style="color: #000000" color="#800080">proxool内部包å«äº†ä¸€ä¸ªè€ç‰ˆæœ¬çš„cglib.

2, log4j,最好ä¸ç”?åªç”¨common-logging

3, è€ç‰ˆæœ¬çš„cglib,快点更新到最新版ã€?/span>

åQ”,更新到最新的hibernate3.2

3�br />
˜q™é‡Œä»¥tomcat环境ä¸ÞZ¾‹åQŒå…¶å®ƒWEBæœåС噍如jboss,weblogic½{‰æ˜¯åŒä¸€ä¸ªé“ç†ã€?br /> 一ã€java.lang.OutOfMemoryError: PermGen space

PermGen space的全¿U°æ˜¯Permanent Generation space,是指内存的永久ä¿å­˜åŒºåŸ?
˜q™å—å†…å­˜ä¸»è¦æ˜¯è¢«JVM存放Classå’ŒMetaä¿¡æ¯çš?Class在被Loader时就会被攑ֈ°PermGen spaceä¸?
它和存放¾cÕd®žä¾?Instance)çš„Heap区域ä¸åŒ,GC(Garbage Collection)ä¸ä¼šåœ¨ä¸»½E‹åº˜q行期对
PermGen space˜q›è¡Œæ¸…ç†åQŒæ‰€ä»¥å¦‚果你的应用中有很多CLASSçš„è¯,ž®±å¾ˆå¯èƒ½å‡ºçްPermGen space错误,
˜q™ç§é”™è¯¯å¸¸è§åœ¨webæœåС噍坹JSP˜q›è¡Œpre compile的时候。如果你的WEB APP下都用了大é‡çš„第三方jar, 其大ž®?br /> ­‘…过了jvm默认的大ž®?4M)那么ž®×ƒ¼šäº§ç”Ÿæ­¤é”™è¯¯ä¿¡æ¯äº†ã€?br /> 解决æ–ÒŽ³•åQ?手动讄¡½®MaxPermSize大å°

修改TOMCAT_HOME/bin/catalina.sh
åœ?#8220;echo "Using CATALINA_BASE:   $CATALINA_BASE"”上é¢åŠ å…¥ä»¥ä¸‹è¡Œï¼š
JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
廸™®®åQšå°†ç›¸åŒçš„第三方jaræ–‡äšg¿UȽ®åˆ°tomcat/shared/lib目录下,˜q™æ ·å¯ä»¥è¾‘Öˆ°å‡å°‘jar 文档é‡å¤å ç”¨å†…存的目的ã€?/p>

二ã€java.lang.OutOfMemoryError: Java heap space
Heap size 讄¡½®
JVM堆的讄¡½®æ˜¯æŒ‡java½E‹åº˜q行˜q‡ç¨‹ä¸­JVMå¯ä»¥è°ƒé…使用的内存空间的讄¡½®.JVM在å¯åŠ¨çš„æ—¶å€™ä¼šè‡ªåŠ¨è®„¡½®Heap sizeçš„å€û|¼Œ
å…¶åˆå§‹ç©ºé—?å?Xms)是物ç†å†…存的1/64åQŒæœ€å¤§ç©ºé—?-Xmx)是物ç†å†…存的1/4。å¯ä»¥åˆ©ç”¨JVMæä¾›çš?Xmn -Xms -Xmx½{‰é€‰é¡¹å?br /> ˜q›è¡Œè®„¡½®ã€‚Heap size 的大ž®æ˜¯Young Generation å’ŒTenured Generaion 之和ã€?br /> æç¤ºåQšåœ¨JVM中如æž?8åQ…的旉™—´æ˜¯ç”¨äºŽGC且å¯ç”¨çš„Heap size ä¸èƒö2åQ…çš„æ—¶å€™å°†æŠ›å‡ºæ­¤å¼‚å¸æ€¿¡æ¯ã€?br /> æç¤ºåQšHeap Size 最大ä¸è¦è¶…˜q‡å¯ç”¨ç‰©ç†å†…存的80åQ…,一般的è¦å°†-Xmså’?Xmx选项讄¡½®ä¸ºç›¸åŒï¼Œè€?Xmnä¸?/4çš?Xmx倹{€?
解决æ–ÒŽ³•åQšæ‰‹åŠ¨è®¾¾|®Heap size
修改TOMCAT_HOME/bin/catalina.sh
åœ?#8220;echo "Using CATALINA_BASE:   $CATALINA_BASE"”上é¢åŠ å…¥ä»¥ä¸‹è¡Œï¼š
JAVA_OPTS="-server -Xms800m -Xmx800m   -XX:MaxNewSize=256m"

三ã€å®žä¾‹ï¼Œä»¥ä¸‹¾l™å‡º1G内存环境下java jvm çš„å‚æ•°è®¾¾|®å‚考:

JAVA_OPTS="-server -Xms800m -Xmx800m  -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true "


三ã€ç›¸å…Œ™µ„æ–?/p>

/show/3/7/20061112220131.htm

/show/3/7/20061112220054.htm

/show/3/7/20061112220201.htm

题外è¯ï¼š¾l常看到¾|‘å‹æŠ±æ€¨tomcat的性能ä¸å¦‚...åQŒä¸½E›_®š½{‰ï¼Œå…¶å®žæ ÒŽ®½W”者几òq´çš„¾l验åQŒä»Ž"äº’è”æ˜Ÿç©º“到现在的房äñ”门户¾|‘,我们
å‡ä‹É用tomcatä½œäØ“WEBæœåŠ¡å™¨ï¼Œæ¯å¤©è®‰K—®é‡ç™¾ä¸‡å¤šåQŒtomcatä»ç„¶˜q行良好。å¾è®®å¤§å®¶æœ‰é—®é¢˜å¤šä»Žè‡ªå·±½E‹åºå…¥æ‰‹åQŒå¤šçœ‹çœ‹javaçš„DOC文档
òq¶è¯¦¾l†äº†è§£JVM的知识。这样开å‘çš„½E‹åºæ‰ä¼šå¥å£®ã€?br />


]]>
Understanding PermGen errors (part3)http://www.aygfsteel.com/nobody_am/archive/2008/06/04/205845.htmlMingIsMeMingIsMeWed, 04 Jun 2008 07:59:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2008/06/04/205845.htmlUnderstanding PermGen errors (part3)
The image verification code you entered is incorrect.

There are two command-line parameters that you must use to define the size of the permgen area: -XX:PermSize -XX:MaxPermSize. See the example bellow:

java -Xms64m -Xmx128m -XX:PermSize=64m -XX:MaxPermSize=256m MainClass

In this example, we are instructing the Java Virtual Machine to create an initial object heap size of 64 megabytes (-Xms) and maximum size of 128 megabytes (-Xmx). And we are defining a PermGen heap area of initially 64 megabytes (-XX:PermSize) and maximum size of 256 megabytes (-XX:MaxPermSize). Remember that the initial size of the heap area in this example, is the sum of the initial object heap area and the initial permgen heap area, that is, 64+64=128 megabytes. And the same for the maximum size of the heap area: 128+256=384 megabytes.

As a practical example, let's see how to increase permgen area size in Jboss. Locate the jboss.bat (in Windows) or jboss.conf (in Unix). Look for a linke containing a redefinition of the shell script variable JAVA_OPTS. You see bellow how the default configuration in Windows:

Uncomment thes line to set PermGen area size:

Now that we have learned how to monitor and fix permgen errors, I advice you not to blindly increase the permgen size everytime there is a permgen error. Monitor how the size of the permgen area is growing. The Permgen area shouldn't be constantly growing over a long period. The Java language features dynamic class loading, so classes will be loaded on demand and the permgen heap size will grow as well. But, if in the long term, your permgen area is still steadly growing, you are probably using some kind of bytecode generation framework which is misbehaving or you are using it incorrectly. Analyse that and rethink what you are doing.



]]>
Understanding PermGen errors (part2)http://www.aygfsteel.com/nobody_am/archive/2008/06/04/205843.htmlMingIsMeMingIsMeWed, 04 Jun 2008 07:56:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2008/06/04/205843.htmlUnderstanding PermGen errors (part2)
The image verification code you entered is incorrect.

Let's continue, where we stopped in my last post: How can I monitor the increase in PermGen area ?

For monitoring PermGen, we'll learn to use a very simple tool, which is part of Java 5, called JSTAT. For those who use Linux or any other Unix-like OS, jstat is very similar to the TOP tool. JSTAT will connect to some VM, local or remote, and monitor some critical resources. Let's see how it works. Just type JSTAT and you'll see its command-line options:

JPS (Java Process Status)

Let's understand the options. The 1st thing you need to know is the VMID (Virtual Machine ID). What is the VMID ? Right now, there are 2 Java applications running on my computer, each in its own virtual machine. Each virtual machine has its own VMID. To discover the VMID that the application you need to monitor is using, you'll have to learn another tool: JPS (Java Process Status). There is a very similar tool in the Unix world called PS. JPS will list all running VMs with their VMIDs. Just type JPS on the command-line and you'll see this:

Let's understand JPS's output. In its basic form, jps outputs the VMID and the simple name of the executable class that is running in the virtual machine. In this case, I can infer the application I want to monitor, Jboss, is the first one listed, not because I know that "Main" is the name executable class, but because I can exclude the 2nd line, which is obviously EasyEclipse and the 3rd line, which is JPS. JPS itself runs inside a virtual machine and therefore, is always reported by jps. If, by the simple name of main class you cannot discover the VMID of your application, I suggest you type "jps -l" which will show the complete name of the main class for each VM. In most cases, that will do.

Now that we know that the VMID of Jboss is 1136, let's use JSTAT to monitor Jboss usage of PermGen memory. To use JSTAT, you need specify a single parameter that will identify the class of monitors you want to use. In our case, we will use "-gcpermcapacity" which will show statistics of the sizes of the Permanent Generation.

The important metrics

There are 3 important numbers to monitor regarding permanent generation size: the maximum permanent size, the current permanent size, and the current permanent utilization. Now, look at jstat's ouput. The 1st column shows the minumum size for the permsize. That's a parameter you can set in the initialization of the virtual machine. The 2nd column shows the maximum size for permsize. This is also a paramter you can set in the initialization of the virtual machine. Now, compare the 2nd column to the 3rd column. The permanent size fluctuate between the minimum and the maximum number. Now, it's just the minimum number. But that doesn't mean it's all used. To know how much of the current permanent size is being used, we'll have to look at another number, the Permanent Capacity Utilization, which you can see using the "-gcutil" parameter. If [minimum] = [maximum] permanent size, then [current] = [maximum] = [minimum] permanent size. Therefore, this number will not be very useful. But, if [minimum] < [maximum], knowing if [current] is getting closer to [maximum] is of vital importance. If [current] is only a few megabytes bellow maximum, maybe this is the right time to change Jboss Installation, so that its virtual machine is initialized with a greater MAXIMUM permanent size.

Well, we'll learn how to do that in part3.



]]>
Understanding PermGen errors (part1)http://www.aygfsteel.com/nobody_am/archive/2008/06/04/205841.htmlMingIsMeMingIsMeWed, 04 Jun 2008 07:55:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2008/06/04/205841.htmlUnderstanding PermGen errors (part1)
The image verification code you entered is incorrect.

“java.lang.OutOfMemoryError: PermGen space ”: have you seen this error before ? If you have never seen it, you haven't probably been involved in creating large java server applications as of lately. Let's understand what this error means.

When you get OutOfMemoryError, it means that (so obvious) your application doesn't have enough memory to go on. But the rest of the message, “PermGen space” means that it's not the common object heap space that it's lacking, but only the memory space for the binary code of classes and methods is lacking.

Let's go deeper into this subject to understand properly what PermGen means. Well, PermGen is an acronym for “Permanent Generation”. The term Generation comes from the concept of “generational collection” and the term “generational collection” refers to an heuristic in the garbage collection mechanism that is used to intelligently identify only the most probable objects for garbage collection. There are 3 kinds of Generations in the VM memory: the young generation, the tenured generation and the permanent generation.

Let's go back to the original “Permanent Generation” term. As I said, it identifies a particular set of objects which are candidate for garbage collection and handled differently by the GC. These kind of objects which belong to the “Permanent Generation” are only the binary codes of all classes and methods. So, the binary code of classes and methods are not stored in the same memory area as the object instances. Now, I think you already understand what this error mean. “java.lang.OutOfMemoryError: PermGen space ” means that the virtual machine ran out of space for loading the binary code of classes and methods.

There are two steps ahead: knowing understanding why this error has happened to your application, learning to monitor the permanent generation size in order to prevent the occurrence of this error; and learning how to increase the permanent generation size.

Why has this error happened ?

The default size for permanent generatoin is 64M. But how come my not so large web application, which totals 2 megabytes of class code, could exceed this limit ? You're probably not counting it correctly. Your web application probably runs inside Jboss, Tomcat or another J2EE server. Add the size of Java SE libraries, the size of Jboss, the size of all libraries used by Jboss internally, the size of all libraries in the WEB-INF/lib directory of you WAR and you will get a large, large binary code area.

Aren't Java classes loaded on demand ? Yes, they are loaded on demand. So, you will probably have to factor that large number by 3 or 4. But there are other factors for the enlargement of the permanent generation area. If you web application has JSP pages, remember that every JSP page is converted into a servlet class file, before being executed. So, you should add that to the previous number. Also, maybe there are other web applications running under Jboss than you own. If you use Hibernate, for each persistent class that you create, Hibernate will dynamically create an enhanced class. If you use RMI or EJB, many kinds of proxy classes will be created and loaded in memory.

Now that you believe that the size of the binary code of classes and methods can exceed 64M, you have probably given up summing the sizes of all classes created and loaded by the VM, Jboss and you application. You'd better off monitoring the use of PermGen area than trying to calculate its size. That leads us to the next step: how can I monitor the increase in PermGen area.

How can I monitor the increase of PermGen area ?

(I'll finish this 2-part series on PermGen errors tomorrow)



]]>
Tips for Productivity and Happiness at Work [mraible]http://www.aygfsteel.com/nobody_am/archive/2007/04/16/111052.htmlMingIsMeMingIsMeMon, 16 Apr 2007 11:12:00 GMThttp://www.aygfsteel.com/nobody_am/archive/2007/04/16/111052.html
Every so often, I get asked what my strategy is for "getting things done". This morning, I had a short session of mass productivity, and on my ride into work, got inspired to jot down a few tips productivity tips. Keep in mind that I grew up in the back woods of Montana with no electricity and I'm mostly Irish.

  • Write stuff down. The first and most important means to getting things done is to keep a todo list. I keep mine on Ta-da List and update it daily, if not hourly. My two most important lists are "When I have time" and "This Week". I regularly re-order "This Week" for the current day.
  • Quit reading e-mail and blogs. One of the ways I can tell I'm in uber-productive mode is my unread (or starred) mail piles up and I haven't read any blog posts (or blogged myself) in a couple days. I like GMail because I can easily star an e-mail after briefly skimming it. For some reason, flagging e-mail in Thunderbird or Mail.app doesn't work for me - I rarely go back and find those e-mails. With GMail, I'm always conscious I need to revisit starred messages.
  • Work on open source late at night, with a beer on your desk. While I do get the opportunity to work on open source at my day job, I still find that I'm most productive at night. Maybe this is because no one bugs me via e-mail or IM, or maybe it's just because the world is asleep. The strange thing is I often find myself motivated at 3 p.m. for my 11 p.m. workload. However, when I get to 11 p.m., I'm not motivated to work on anything. I've found that cracking open a beer at 11 when I start helps me focus and quit worrying about all the other computer-related tasks I need to do. Also, on beer #2 or 3, you'll start to forget what time it is and really start getting things done. NOTE: this isn't for rookies. If you're a lightweight and get hammered on two beers - just go to bed when you start coding with one eye shut. It helps to sleep in the next day after doing this. If you finish off a six-pack before going to bed, it's probably best not to check your code in - you're probably going to spend the next day fixing it anyway. Regardless, this is a great way to get started on a new feature because you're less concerned about the details and more concerned about the big picture. I've also found that "bug fixing juice" can be great for fixing bugs - it gives you a different perspective on the problem. I told you I was Irish didn't I? ;-)
  • Work disconnected. To further facilitate not checking e-mail or reading blogs, I've found that going to a coffee shop w/o connectivity is my most productive environment. They have liquid motivation in the form of coffee, and you can feed your brain with breakfast/lunch or some kind of snack. My most productive days are the ones where I show up at my local Einstein's (bagel shop) at 6 a.m., have two cups of coffee, and work with my headphones on. After the coffee and uber-productivity, I often have an awesome ride to work and barely notice the miles. NOTE: I've found that I'm more productive writing code late at night and authoring articles/books in the early morning.
  • Listen to music while you work. Some noise-cancelling headphones and your favorite music can do wonders for your productivity. Of course, earbuds work just as well - whatever makes the music sound good. Good music can really help you "get into the groove" of what you're working on, regardless of whether it's writing or coding.
  • Work long hours on Monday and Tuesday. This especially applies if you're a contractor. If you can only bill 40 hours per week, working 12-14 hours on Monday can get you an early-departure on Friday. Furthermore, by staying late early in the week, you'll get your productivity ball-rolling early. I've often heard the most productive work-day in a week is Wednesday.
  • Avoid meetings at all costs. Find a way to walk out of meetings that are unproductive, don't concern you, or spiral into two co-workers bitching at each other. While meetings in general are a waste of time, some are worse than others. Establish your policy of walking out early on and folks will respect you have stuff to do. Of course, if you aren't a noticeably productive individual, walking out of a meeting can be perceived as simply "not a team player", which isn't a good idea.
  • Sleep. While working late nights can be productive in the short term, doing it consecutively will burn you out quickly. Getting a good night's sleep can often lead to greater productivity because you're refreshed and ready to go.
  • Work on something you're passionate about. If you don't like what you're doing for a living, quit. Find a new job as soon as possible. It's not about the money, it's all about happiness. Of course, the best balance is both. It's unlikely you'll ever realize this until you have a job that sucks, but pays well.

To follow up on that last point, I think one of the most important catalysts for productivity is to be happy at your job. If you're not happy at work, it's unlikely you're going to be inspired to be a more efficient person. Furthermore, if you like what you do, it's not really "work" is it?

Here is some general advice I give to folks about jobs and careers. I realize that I'm biased here because I have a good job and I've been fairly successful in my career. However, I also grew up with virtually nothing, and learned all my computer skills on my own. Therefore, I believe that anyone can be successful (meaning: happy with that they do, and financially stable at the same time) if they put their mind to it.

  • If you're not happy at work, quit. I got into contracting early-on in my career (6 months out of college), so I got spoiled with good rates early on. It was also the late 90s, so you could easily switch jobs if you didn't like the one you were in. However, I've always had the policy that if you hate your job for more than 2 weeks, quit. It's just not worth it. Some people enjoy bitching about their jobs and complaining about their co-workers, so this doesn't apply to everyone. However, if you're truly miserable - quit. I've done this a couple times, and it's always led to better opportunities (even if I had to wait 3 months). Julie's done it once or twice and it's always worked out for the better. Once she even got a 20% raise by quitting her traveling-consultant gig with KPMG and going back to her old company, Qwest.
  • Always try to be a contractor before a full-time employee. This especially applies to younger folks who don't need the security of insurance for the family, stock plans, etc. Contractors typically make 50% more than full-time employees and tend to be excluded from company politics that might make the workplace difficult to deal with. While you won't get billable vacation time, you will get the freedom to take however much vacation you want - as long as you get your stuff done. The higher rates can generally make up for the unbillable time while on vacation. However, if you travel too much for fun (or conferences, etc.), it's likely your year-end salary will equal that of a full-time employee. If you make good money as a contractor, you'll also get the opportunity to start your own company (to save money on taxes). This can be a great learning experience. The biggest fear that folks have about "going independent" is they'll have a hard time finding their next gig. If you're productive and blog about what you're doing, this shouldn't be a problem. I haven't had an "interview" since 2002 and haven't updated my resume since then either. Networking at your local JUG and conferences is key.
  • Don't work at a company with a two-week vacation policy. I've never worked at a company with a two-week vacation policy, and I hope I never will. The two full-time gigs I've had in my career have had no vacation policy. This is usually only found in startups - but it generally amounts to "get your shit done, and you can take off all the time you want". My parents both work for the BLM (government agency) and they get 6 weeks off a year. Furthermore, they can earn "comp time" (more days off) by simply working overtime. If you have the ability to take time off whenever you want, it'll likely lead to you being more motivated to work long and hard - b/c you know when you finish that project, you're heading to Cancun for a week.
  • Don't travel if you have kids. If you're single, traveling for work is pretty cool. New places, new people to meet - and seeing the world can be very cool. If you have a spouse, it's likely your desire to travel will decrease, but it's still not that bad. If it helps your career, it's probably a good move. It also helps to save money since everything you do is generally expensible. When Julie and I first met, she traveled 100% and made $20K more per year b/c of it. When you have kids, everything changes and traveling sucks. You miss their first steps, and when they get to toddler-age, they'll want to go with you. Hearing your daughter say "Daddy, can I go with you?" can be heart wrenching when you're leaving on a Sunday afternoon to spend a week with people you've never met before.
  • Ask for more responsibility. If your job sucks, but the company is pretty cool - you may want to ask for a shift in responsibilities. I was once an HTML Developer at a .com. It sucked because we were constantly waiting on the Java Developers to fix bugs we found in their code. Finally, I got tired of waiting and asked my boss to show me how to fix the Java bugs. Granted, I wrote some pretty horrendous code at first, but my boss and co-workers helped a lot and w/in a year I was doing 80% of the Java Development.
  • Most things can be learned by reading. If you want to learn something new (for your current or next career), the best thing to do is read. The world's knowledge resides in books and you can learn a lot. Of course, the best way to retain that knowledge is by doing, but reading is a great first step.

Those are my tips, many of them off the top of my head. I may add more as time goes on - but hopefully this helps in the meantime. Please share yours if you have any.



]]>
江å—白衣的高效读书心å¾?/title><link>http://www.aygfsteel.com/nobody_am/archive/2007/03/18/104568.html</link><dc:creator>MingIsMe</dc:creator><author>MingIsMe</author><pubDate>Sun, 18 Mar 2007 07:47:00 GMT</pubDate><guid>http://www.aygfsteel.com/nobody_am/archive/2007/03/18/104568.html</guid><description><![CDATA[高效è¯ÖM¹¦å¿ƒå¾—   刚好Head First¾pÕdˆ—开头都有一ŒD‰|•™äººå¦‚何读书的è¯ï¼Œå†åŠ å·¥æ•´ç†å¦‚下:<br /><br /><b>1.ž®½é‡é˜…读中文ç‰?/b><br />  虽然有äh英文很强åQŒæœ‰çš„翻译很差,但AnyWay 中文阅读与ç†è§£çš„æ—‰™—´åQŒç•¥è¯ÖM¸Žå¿«é€Ÿå®šä½çš„速度˜q˜æ˜¯è¦å¿«ä¸€äº›ã€?br />  <br /><b>2.åÏx—¶æ‰Ò޳¨ã€æ€È»“½W”记与交‹¹?/b><br />  虽然çˆ×ƒ¹¦åQŒä½†å‘现最有效的读书方å¼è¿˜æ˜¯ä¸æ–­çš„刉™€ è„‚æ‰ÒŽœ¬åQŒè¯»ä¹¦æ—¶åœ¨é‡è¦çš„æ–‡å­—下划¾U¿ï¼ŒæŠŠè‡ªå·Þqš„心得写在™å‰|—ã€?br />  在明天å¤ä¹ ä¸€‹Æ¡æ‰¹æ³¨ï¼Œæœ€å¥½å¯ä»¥æœ‰½Iºé‡æ–°æ•´ç†ç¬”讎ͼŒæˆ–者拿æ¥ä¸Žäºø™®¨è®ºã€?<br /><br /><b>3.大釿€è€ƒæˆ–é‡å¤è®°å¿†</b><br />  看书最éƒé—·çš„事情就是看完之åŽè„‘袋空½IÞZº†ã€‚技术书˜q˜å¥½ç‚¹ï¼Œè™½ç„¶çœ‹çš„æ—¶å€™å¯èƒ½å¾ˆè¾›è‹¦åQŒä½†ž®±åƒå­¦ä¼šäº†éª‘å•èžRåQŒä¹‹åŽå†éª‘的时候æ€ÀL˜¯ä¼šçš„åQ›è€Œå设计与管ç†çš„书,最å®ÒŽ˜“的事情就是看的时候很快,看完没什么留下到实践中ã€?br />  所以,我们ä¸èƒ½ä»¥çœ‹ž®è¯´çš„速度æ¥çœ‹è®¾è®¡ä¹¦ï¼Œè¦å¯»æ‰¾æ€è€ƒçš„æœÞZ¼šåQŒæ€è€ƒæ˜¯æœ€å¥½çš„记忆ã€?br />Â Â åˆæˆ–者,大é‡çš„é‡å¤è®°å¿†ï¼Œé‡å¤å¤šé直到无æ„识的记忆ã€?<br />  <br /><b>4.äºÞZ½“工学</b><br />  那些è§ç¼æ’é’ˆçš„æ—¶é—´ä¸Žåœ°ç‚¹ä¸æ˜¯çœ‹è¿™ä¸ªä¹¦å•的好地æ–V€?br />  环境ä¸è¦æœ‰ç”µè§†ï¼ŒéŸ³ä¹½{‰å¼ºè¾“å…¥æºï¼Œè€Œå¾®é£Žé˜³å…‰é¸Ÿè¯­ç­‰å¼Þp¾“å…¥æºåˆ™æœ‰åŠ©æ´»è·ƒå¤§è„‘ã€?br />  看书时大é‡çš„å–æ°´ã€?br />  如果å‘现自己的大脑已¾l疲累,已ç»åœ¨æÕQ光掠å½Þqš„¾˜Èœ‹åQŒå°±è¦ä¼‘æ¯ã€?br />  留给大脑消化的时é—ß_¼Œçœ‹å®Œä¹¦ä¸è¦æŽ¥ç€çœ‹å…¶ä»–有隑ֺ¦çš„书或事情ã€?img src ="http://www.aygfsteel.com/nobody_am/aggbug/104568.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/nobody_am/" target="_blank">MingIsMe</a> 2007-03-18 15:47 <a href="http://www.aygfsteel.com/nobody_am/archive/2007/03/18/104568.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>æ•æ·è½¯äšgå¼€å‘图书概è§?/title><link>http://www.aygfsteel.com/nobody_am/archive/2006/12/25/89815.html</link><dc:creator>MingIsMe</dc:creator><author>MingIsMe</author><pubDate>Mon, 25 Dec 2006 01:22:00 GMT</pubDate><guid>http://www.aygfsteel.com/nobody_am/archive/2006/12/25/89815.html</guid><description><![CDATA[ <p class="MsoNormal" style="TEXT-ALIGN: center" align="center"> <strong> <span lang="ZH-CN" style="FONT-SIZE: 22pt; FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšgå¼€å‘图书概è§?/span> </strong> <strong> <span style="FONT-SIZE: 22pt; FONT-FAMILY: Tahoma" twffan="done"> <?XML:NAMESPACE PREFIX = O /?> <o:p> </o:p> </span> </strong> </p> <div align="center" twffan="done"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">本文å‘表于程åºå‘˜æ‚å¿—2006òq´ç¬¬5æœ?/span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done"> </span> </div> <p class="MsoNormal"> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">â€?/span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšgå¼€å‘宣­a€åQšæˆ‘ä»¬æ­£åœ¨é€šè¿‡äº²èín实践和帮助其他äh实践åQŒæ­½Cºæ›´å¥½çš„软äšg开呿–¹æ³•,通过˜q™é¡¹å·¥ä½œåQŒæˆ‘们认为:</span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </em> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <strong> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">人和交æµèƒœè¿‡˜q‡ç¨‹å’Œå·¥å…?/span> </em> </strong> <strong> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </em> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <strong> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¯å·¥ä½œçš„软äšg胜过é¢é¢ä¿±åˆ°çš„æ–‡æ¡?/span> </em> </strong> <strong> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </em> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <strong> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">客户å作胜过åˆåŒè°ˆåˆ¤</span> </em> </strong> <strong> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </em> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <strong> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å“应å˜åŒ–胜过éµåó@计划</span> </em> </strong> <strong> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </em> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">虽然å³é¡¹ä¹Ÿæœ‰ä»·å€û|¼Œä½†æ˜¯æˆ‘ä»¬è®¤äØ“å·¦é¡¹æ›´é‡è¦ã€?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">â€?o:p></o:p></span> </em> </p> <p class="MsoNormal" style="MARGIN-LEFT: 21pt; TEXT-INDENT: 21pt"> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">—â€?Kent Beck</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Mike Beedle</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Arie van Bennekum</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Alistair Cockburn</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Ward Cunningham</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Martin Fowler</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">James Grenning</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Jim Highsmith</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Andrew Hunt</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Ron Jeffries</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Jon Kern</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Brian Marick</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done"> Robert C. Martin</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Steve Mellor</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Ken Schwaber</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Jeff Sutherland</span> </em> <em> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </em> <em> <span style="FONT-FAMILY: Tahoma" twffan="done">Dave Thomas<o:p></o:p></span> </em> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšgå¼€å‘这个è¯åœ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">2006</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">òq´çš„中国软äšg界å¬èµäh¥ä»ç„¶æ˜‘Ö¾—有些陌生。自</span> <span style="FONT-FAMILY: Tahoma" twffan="done">2001</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">òq´æ•毂”盟被å‘è“v以æ¥åQŒæ•æäh–¹æ³•的实践¾l验和ç†è®ºç ”½I‰™ƒ½åœ¨ä¸æ–­çš„æ›´æ–°ã€‚而我国的大多数程åºå‘˜˜q˜æ˜¯åªèƒ½åœ¨ä¹¦æœ¬ä¸Šè¯Õdˆ°æ•æ·çš„好处,很难在项目中˜q›è¡Œå®žè·µã€‚è¿™å…¶ä¸­çš„åŽŸå› ï¼Œä¸»è¦æ˜¯ç¼ºä¹æ‹¥æœ‰å®žé™…æ•æ·é¡¹ç›®ç»éªŒçš„人æ¥å¸¦é¢†å®žæ–½æ•æ·ã€‚è™½ç„¶æ•æ·å¼€å‘是¿U实践行为,很难从书本上直接学习åQŒä¸˜q‡å¤šæ•°ç¨‹åºå‘˜äº†è§£æ•æ·åQŒå´éƒ½æ˜¯å…ˆä»Žä¹¦æœ¬å¼€å§‹çš„。无论结果怎样åQŒä»Žè®¤è¯†åˆ°å®žè·ëŠš„˜q‡ç¨‹æ˜¯å…ä¸äº†çš„ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšgå¼€å‘之æ–ÒŽ³•论篇</span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¤§å®¶éƒ½çŸ¥é“æ•毂ÊY件开呿–¹æ³•åŒ…æ‹¬äº†å¤šç§æ–ÒŽ³•è®ºï¼Œä¸»è¦æœ‰ï¼š</span> <span style="FONT-FAMILY: Tahoma" twffan="done">SCRUM</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Crystal,</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">特å¾é©±åŠ¨è½¯äšgå¼€å‘(</span> <span style="FONT-FAMILY: Tahoma" twffan="done">FDD</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ‰ï¼Œè‡ªé€‚应软äšgå¼€å‘(</span> <span style="FONT-FAMILY: Tahoma" twffan="done">ASD</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ‰ï¼Œä»¥åŠæœ€è‘—åçš„æžé™ç¼–½E?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">(XP)</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">。这些方法论分别在ä¸åŒçš„著作上专门论˜q°è¿‡åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done">SCRUM</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQšã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Software Development with Scrum</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span lang="ZH-CN" style="FONT-FAMILY: Tahoma" twffan="done"> </span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Ken Schwaber, Mike Beedle</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQŒã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Project Management With Scrum</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Ken Schwaber<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done">FDD:</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Java Modeling in Color with UML</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Peter Coad, </span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">A Practical Guide to Feature-Driven Development</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">(</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">特å¾é©±åЍ开å?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">) by Stephen R Palmer, John M. Felsing,<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done">Crystal: </span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Crystal Clear</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Alistair Cockburn<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done">ASD: </span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Adaptive Software Development</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(自适应软äšgå¼€å‘)</span> <span style="FONT-FAMILY: Tahoma" twffan="done">by James A. Highsmith<o:p></o:p></span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">其中ž®¤ä»¥</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">¾pÕdˆ—的书¾c居多。äh民邮电出版社的一¾pÕdˆ—æžé™¾~–程¾pÕdˆ—丛书åQŒåœ¨å›½å†…引进较早。在˜q˜æ²¡æœ‰ç»Ÿä¸€æ•æ·è¯æ±‡çš„æƒ…况下åQŒå¼•å‘了一æ‰ÒŽ•æ·å…ˆé”‹äh士的热情åQŒæ˜¯æˆ‘国½E‹åºå‘˜çš„æ•æ·å¯è’™æ•™æã€‚这些书包括ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Explained</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆè§£æžæžé™¾~–程åQ‰ï¼Œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Examined</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(æžé™¾~–程研究åQ‰ï¼Œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Installed</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">(</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æžé™¾~–程实施</span> <span style="FONT-FAMILY: Tahoma" twffan="done">)</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQŒã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Explored</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(探烦æžé™¾~–程åQ‰ï¼Œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Applied</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(应用æžé™¾~–程åQ‰ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming in Practice</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(æžé™¾~–程实践åQ‰ï¼Œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Planning Extreme Programming</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(规划æžé™¾~–程åQ‰ç­‰åQŒè¿™äº›ä¹¦æœ‰çš„æ˜¯ä½œè€…çš„</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">实践论文åQŒæœ‰äº›æ˜¯å¯?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">™å¹ç›®çš„介¾l,其中åQŒå€¼å¾—推è的是下é¢ä¸¤éƒ¨è‘—作ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming Explained: Embrace Change</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">by Kent Beck<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">½W¬ä¸€ç‰ˆä¸­è¯‘版åQšã€Šè§£æžæžé™ç¼–½E‹ï¼šæ‹¥æŠ±å˜åŒ–》,</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å”东铭,</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">人民邮电出版½C?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">½W¬äºŒç‰ˆä¸­è¯‘版åQ?/span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">雷剑文,电å­å·¥ä¸šå‡ºç‰ˆ½C?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä½œäØ“</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的开å±×ƒ¹‹ä½œï¼Œç›®å‰å·²ç»å‡ºç‰ˆäº†ç¬¬äºŒç‰ˆã€‚在½W¬ä¸€ç‰ˆä¸­åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent Beck</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¯?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">作了详细的æ˜q°ã€‚从当å‰è½¯äšgå¼€å‘çš„çŽ°çŠ¶å’Œé—®é¢˜è°ˆèµøP¼Œä»Žéœ€æ±‚çš„å˜åŒ–到如何拥抱å˜åŒ–,¾l™å‡ºäº?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的四™å¹ä­h倯D§‚å’ŒåäºŒé¡¹å®žè·µã€‚å¯¹äºŽæƒ³äº†è§£æ•æ·çš„æ¥é¾™åŽ»è„‰çš„äººï¼Œæ­¤ä¹¦å±žäºŽå¿…è¯»ä¹‹ç±»ã€‚åœ¨½W¬äºŒç‰ˆï¼Œ</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ Òޮ几年æ¥çš„实践åQŒäØ“</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">增加了一™å¹ä­h倯D§‚åQšå°Šé‡ï¼Œòq¶å¢žåŠ äº†åŽŸåˆ™çš„æ¦‚å¿µï¼ŒåŒæ—¶å¢žåŠ å’Œåˆ æ”¹äº†ä¸€äº›å®žè·üc€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">该书½W¬ä¸€ç‰ˆæ˜¯½E‹åºå‘˜çš„宣言åQŒè¿™å’?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的背景很有关¾p…R€‚éšå?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">¾l历了五六年的å‘展和实践åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">è‡ªå·±ä¹Ÿé€æ¸æ„识刎ͼŒ˜q™æ ·çš„观点太狭隘了。因此就有了½W¬äºŒç‰ˆï¼Œä¸Žå…¶è¯´è¿™æ˜¯æŠ€æœ¯ä¹¦¾cï¼Œåˆ°æ›´åƒæ˜¯¾U¯çÑaæ„义的èÊY工书¾c。期间也å¯ä»¥çœ‹å‡º</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的体¾pÀL›´åŠ å®Œå¤‡ã€‚è¿™å…¶ä¸­ž®¤äØ“½H出的是把äh攑ֈ°äº†æ›´ä¸ºé‡è¦çš„åœîC½ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Extreme Programming in Practice</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">by James Newkirk, Robert C. Martin<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">中译版:《æžé™ç¼–½E‹å®žè·üc€‹ï¼Œ</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">王钧åQ?/span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">人民邮电出版½C?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">读过了一些列çš?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">书ç±åQŒç¨‹åºå‘˜ä»¬éƒ½ä¼šè§‰å¾?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">éžå¸¸å¥½ï¼Œä½†åˆ°åº•如何æ‰èƒ½å¼€å§‹å®žæ–?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">呢?˜q˜ä¸æ˜¯å¤ªæ¸…楚。本¾pÕdˆ—中的˜q™æœ¬ä¹¦ç”¨ä¸€ä¸ªå®Œæ•´çš„ž®é¡¹ç›®ä½œä¾‹å­åQŒä»Žå¤´åˆ°ž®¾æ•™¾l™ähå¦‚ä½•æ•æ·å¼€å‘,是一本ä¸å¯å¤šå¾—的实践教æã€‚如果想直接实施</span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¼€å‘,˜q™æœ¬ä¹¦å¯ä»¥ç»™ä½ å¾ˆå¤§å¯½Cºã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšgå¼€å‘之实践½‹?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸€ã€æžé™ç¼–½E‹æœ€ä½›_®žè·?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ç”׃ºŽæžé™¾~–程是如此的‹¹è¡ŒåQŒå¤šæ•°æ•æ·å›¢é˜Ÿéƒ½ä¼šæˆ–多或ž®‘的借鉴一äº?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸­çš„æ•æ·å®žè·µåQŒè€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">XP</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">çš„æ¯ä¸€ä¸ªæ•æ·å®žè·µä¹Ÿ¼‹®å®žå€¼å¾—大书特书åQŒè€Œå…¶ä¸­æœ€è‘—å的是‹¹‹è¯•驱动开å‘å’Œé‡æž„实践åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Test-Driven Development</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> by Kent Beck<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">中译版:《测试驱动开å‘》,</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">崔凯åQŒä¸­å›½ç”µåŠ›å‡ºç‰ˆç¤¾</span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">‹¹‹è¯•é©±åŠ¨å¼€å‘æ˜¯</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent Beck</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¦ä¸€éƒ¨åŠ›ä½œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">“Clean Code That Worksâ€?/span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ˜¯æ•æ·å¼€å‘的目标之一åQŒé‚£ä¹ˆå¦‚何达到这个目标?</span> <span style="FONT-FAMILY: Tahoma" twffan="done">TDD</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">¾l™å‡ºäº†ä¸€¿Uæ–¹å¼ã€‚测试实质上是需求。由需求äñ”生出的代ç è‚¯å®šæ˜¯èƒ½å¤Ÿå·¥ä½œçš„功能代ç ï¼Œè€Œè¦å®žçް</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Class</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">本èín的寋¹‹è¯•性,ž®×ƒ¸å¾—ä¸å†™å‡ºé«˜åº¦è§£è€¦åˆçš?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Clean</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的代ç ã€‚本书从一ä¸?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Money</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的例å­å…¥æ‰‹ï¼Œä»Žæœ€åˆçš„一炚wœ€æ±‚å¼€å§‹ï¼Œé€æ­¥å¢žåŠ éœ€æ±‚ï¼Œå®Œæˆæ•´ä¸ªè´§å¸¾pÈ»Ÿçš„代ç ã€‚åŽé¢åˆ¾l™å‡ºäº?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Unit Test</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">中的一些最佛_®žè·µå’Œæ¨¡å¼ä¾›å‚考ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">然而,本书的教导æ„义比其实跉|„义更½H出。作ä¸ÞZ¸€æœ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">TDD</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的教½E‹æˆ–入门教æåQŒè¿™æœ¬ä¹¦æ— ç–‘是最佳的åQŒå…¶ä¸­æå‡ºçš„一些最佛_®žè·‰|›´æ˜¯å€¼å¾—¾lå¸¸é˜…è¯»æ¥æ¸©ä¹ ã€‚本书é¢å‘的是å•元测试,而实际开å‘中é¢å¯¹çš„æ•°æ®åº“‹¹‹è¯•åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Web</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">‹¹‹è¯•½{‰é—®é¢˜åƈä¸å±žäºŽå•å…ƒæµ‹è¯•çš„èŒƒç•´ã€‚å› æ­¤è¯»è€…åÆˆä¸èƒ½ä»Žä¸­ç›´æŽ¥˜q›å…¥åˆ°å®žæˆ˜ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¦ä¸€æœ¬åŒå书ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Test Driven Development: A Practical Guide</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》由</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Davis Astels</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">撰写åQŒä»–ž®†è¯¥ä¹¦çœ‹ä½œæ˜¯</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Kent</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">著作的补充,é‡ç‚¹é˜è¿°åˆ©ç”¨</span> <span style="FONT-FAMILY: Tahoma" twffan="done">TDD</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">开呿‰€å¿…è¦çš„æŠ€æœ¯å’Œå·¥å…·ä¸Šï¼Œå› æ­¤å¯¹å®žé™…开呿›´å…·å®žç”¨æ€§ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Refactoring: </span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Improving the Design of Existing Code</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">by Martin Fowler<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸­è¯‘ç‰ˆï¼šã€Šé‡æž„:改善既有代ç çš„设计》,侯æ·åQŒç†ŠèŠ‚ï¼Œä¸­å›½ç”µåŠ›å‡ºç‰ˆ½C?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">釿ž„˜q™æœ¬ä¹¦çš„æ„ä¹‰åœ¨äºŽåQŒä»–æä¾›äº†ä¸€¿U让你写出更加优¾ŸŽä»£ç çš„能力。在‹¹‹è¯•çš„ä¿è¯ä¸‹åQŒé‡æž„èƒ½å¤Ÿå‘æŒ¥å¼ºå¤§çš„å¨åŠ›ã€‚æ•æ·å›¢é˜Ÿä¸­åQŒä¸æ–­çš„釿ž„出简å•ä¸”é«˜æ•ˆçš„ä»£ç æ‰èƒ½å¤Ÿä¿æŒæ‹¥æŠ±ä¸æ–­å˜åŒ–çš„éœ€æ±‚ã€‚åŽæ¥çš„一本书ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Refactoring to Patterns</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆä»Žé‡æž„到模å¼åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Joshua Kerievsky</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQŒæ›´æ˜¯å°†é‡æž„çš„å¨åЛ呿Œ¥åˆ°æžé™ã€?/span> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">釿ž„曾被¿UîCؓ软äšgå¼€å‘图书的åŒç’§åQŒå¦ä¸€æœ¬ä¹¦æ˜¯ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Design Patterns</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">(</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">设计模å¼</span> <span style="FONT-FAMILY: Tahoma" twffan="done">) by GoF</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">。当ç„Óž¼Œå¯¹çŽ°åœ¨çš„è½¯äšgå¼€å‘这二者已¾l䏿˜¯æœ€é‡è¦çš„ã€?/span> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Thought</span> </strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Works</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的首席科学家</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Martin Fowler</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ€È»“了朋å‹ä»¬çš„å„¿U实践心得,写出了这本书。从几年åŽçš„目光æ¥çœ‹åQŒè¿™æœ¬ä¹¦ä¸­çš„多数实践都被å„ç§</span> <span style="FONT-FAMILY: Tahoma" twffan="done">IDE</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åšåˆ°äº†æ“作èœå•中。虽ç„?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">IDE</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æä¾›äº†å¤§é‡é‡æž„功能,但仅é?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">IDE</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">是无法写出简‹z美妙代ç çš„åQŒå¤šæ•°çš„æ•æ·å›¢é˜Ÿé‡æž„工作åšå¾—˜q˜æ˜¯ä¸å¤Ÿã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¦å¤–有一本专门介¾l结对编½E‹çš„书,ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Pair Programming Illuminated</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(¾l“对¾~–程技术)</span> <span style="FONT-FAMILY: Tahoma" twffan="done">by by Laurie Williams and Robert Kessler</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQŒæŒ‡å‡ÞZº†ä¸ÞZ»€ä¹ˆè¦¾l“对åQŸåƈ从儿Uä¸åŒæ°´òq³ä¸åŒæ€§æ ¼çš„程åºå‘˜¾l“对情况æ¥è®¨è®ø™¯¥å®žè·µçš„优劣。对此有兴趣的程åºå‘˜ä¸å¦¨ä¸€è¯…R€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">äºŒã€æ•毂ÊYä»¶å¼€å‘实è·?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">自从</span> <span style="FONT-FAMILY: Tahoma" twffan="done">2001</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">òq´æ•毂”盟æˆç«‹ä»¥æ¥ï¼Œå•独推广æžé™¾~–程的书å˜å°‘了,而统一å£å¾„æŽ¨å¹¿æ•æ·çš„书å˜å¾—­‘Šæ¥­‘Šå¤šã€‚两本åŒåçš„æ•æ·è½¯äšgå¼€å‘都是ä¸å¯å¤šå¾—的好书åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Software Development</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Principles, Patterns, and Practices</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">by Robert C. Martin<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸­è¯‘ç‰ˆï¼šã€Šæ•æ¯‚ÊYä»¶å¼€å‘:原则åQŒæ¨¡å¼ä¸Žå®žè·µã€‹ï¼Œé‚“辉åQ?/span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">清åŽå¤§å­¦å‡ºç‰ˆ½C?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">被业内äh士称ä¸?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Uncle Bob</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">çš?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Robert C Martin</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">在沉寂几òq´åŽå†™å‡ºäº†è¿™éƒ¨ä¹¦ã€‚该书å¯ä»¥ç®—是从软äšgå¼€å‘è§’åº¦å¯¹æ•æ·æ–ÒŽ³•é˜è¿°çš„æœ€è¯¦ç»†å’Œå…¨é¢çš„一本。之å‰çš„æ•æ·ä¹¦ç±å¤šæ˜¯å…Ïx³¨äºŽè¿‡½E‹æ”¹˜q›ï¼Œè€Œå¯¹å¦‚何从技术角度实施讲的比较少。本书一开始先介ç»äº†æ•毂”ç›Ÿå’Œæ•æ·å¼€å‘过½E‹ã€‚之åŽè¯¦¾l†è®º˜qîCº†é¢å‘对象设计的原则,˜q™äº›åŽŸåˆ™æ˜¯æœ¬ä¹¦çš„¾_‘֎之一。åŽé¢é€šè¿‡å‡ ä¸ª™å¹ç›®ä»‹ç»äº†å¦‚何将设计模å¼åº”用于项目中ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: Tahoma" twffan="done">Uncle Bob</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">䏿„§æ˜¯å®žè·ëŠš„大师åQŒå†™å‡ºæ¥çš„书也是拥有很强的实跉|„ä¹‰ã€‚åœ¨æ•æ·å›¢é˜Ÿçš„办公桌上,应当常备此书åQŒä¸€æ¥å¯ä½œäØ“å‚考查询,二æ¥å¯ä»¥ä½œäؓ新æˆå‘˜çš„必读书目ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Software Development</span> </strong> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done">by Alistair Cockburn<o:p></o:p></span> </strong> </p> <p class="MsoNormal"> <strong> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸­è¯‘ç‰ˆï¼šã€Šæ•æ¯‚ÊYä»¶å¼€å‘》,俞涓åQŒäh民邮电出版社</span> </strong> <strong> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </strong> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">˜q™æœ¬ä¹¦æ›´åŠ é€‚åˆ½Ž¡ç†è€…æ¥é˜…读ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Alistair</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">从项目äh数和交æµéš¾æ˜“½E‹åº¦åQŒå°†æ•æ·çš„å„¿U方法划分了光™€‚用范围。äh数多的或分布å¼é¡¹ç›®å°±éœ€è¦é å…¶ä»–手段æ¥åŠ å¼ÞZº¤‹¹ï¼Œäººæ•°ž®‘çš„ž®±å¯ä»¥é </span> <span style="FONT-FAMILY: Tahoma" twffan="done">pair programming</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">½{‰è¿›è¡Œé¢å¯šw¢çš„交‹¹ã€‚交‹¹å’Œåé¦ˆæ˜¯æ•æïLš„æ ¸å¿ƒã€‚åŒæ—?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Alistair</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">也介¾l了一下他æå‡ºçš?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Crystal</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ–ÒŽ³•æ—ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ä¸?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">.</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·™å¹ç›®½Ž¡ç†å’Œæ•æ·éœ€æ±‚分æž?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">在推òq¿æ•æ·ä¸€ŒD‰|—¶é—´åŽåQŒæ•æïL¤¾¾Ÿ¤ä¹Ÿæ„识刎ͼŒå¤šæ•°ä¹¦ç±æ›´åƒæ˜¯é¢å‘å¼€å‘äh员,˜q‡äºŽæŠ€æœ¯åŒ–åQŒéš¾ä»¥å¸å¼•项目ç»ç†æˆ–ä¸È®¡ã€‚因此,一扚w¢å‘管ç†è€…视角的书也开始æÕQ出水é¢ï¼Œ˜q™äº›ä¹¦åŒ…括:</span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile and Iterative Development</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆæ•æ·˜q­ä»£å¼€å‘)</span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Craig Larman<o:p></o:p></span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Lean Software Development</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">》(</span> <span id="wmqeeuq" class="13ptredcu" twffan="done"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·</span> </span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">软äšgå¼€å‘å·¥å…?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">â€?/span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">¾_„¡›Šå¼€å‘æ–¹æ³?/span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Mary Poppendieck<o:p></o:p></span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Software Development Ecosystems</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆæ•æ·è½¯äšgå¼€å‘生æ€ç³»¾lŸï¼‰</span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Jim Highsmith<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">书中从儿U角度比较和分æžå„ç§æ•æ·æ–ÒŽ³•的优劣,异åŒåQŒè“væºï¼Œé€‚用范围½{‰ã€‚这些书对于一个项目主½Ž¡å†³½{–ä‹É用何¿U过½E‹æ¥åœ¨è‡ªå·Þqš„团队中实跉|•æähœ‰å¾ˆå¥½çš„å‚考作用ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">˜q‘两òqß_¼ŒäºÞZ»¬å¼€å§‹é€æ¸æ„è¯†åˆ°æ•æ·å¼€å‘的侧é‡ç‚¹ä¸ä»…仅是开å‘过½E‹å’Œå¼€å‘实践,˜q˜åŒ…括对需求和™å¹ç›®½Ž¡ç†½{‰å…¶ä»–相å…Ïx–¹é¢çš„实践。一些相关的书ç±ä¹Ÿæ‚„然出现在äºÞZ»¬çš„视野:</span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Project Management</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆæ•æ·™å¹ç›®½Ž¡ç†åQ?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Jim Highsmith<o:p></o:p></span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">User Stories Applied</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Mike Cohn<o:p></o:p></span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Estimating and Planning</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Mike Cohn<o:p></o:p></span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Requirements & User Stories</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> by Louis Molnar<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">˜q™äº›ä¹¦ä¸åŒäºŽä»¥å¾€å¼ø™°ƒæ–°æ–¹æ³•,新过½E‹çš„ä¹¦ç›®ã€‚æ•æ·é¡¹ç›®ç®¡ç†ç±»çš„书主è¦ä»‹ç»å¦‚何½Ž¡ç†æ•æ·å›¢é˜ŸåQŒå¦‚何计划è¦å¼€å‘的需求,如何为客æˆäh供最大的价倹{€‚介¾læ•æ·éœ€æ±‚分æžçš„书主è¦å¸®åŠ©å•†åŠ¡åˆ†æžå¸ˆæˆ–项目ç»ç†æŒ–掘和分æžç”¨æˆ·éœ€æ±‚,写出用户故事åQŒè¯„估和计划用户故事½{‰ã€‚äh们已¾læ„识到åQŒå„¿U方法论的实质是相åŒçš„,都是æä¾›å•†ä¸šä»·å€û|¼Œå‡å°‘‹¹ªè´¹åQŒå¢žåŠ äº¤‹¹ï¼Œå¿«é€Ÿå馈。因此ä¸éœ€è¦ç€é‡äºŽåŒºåˆ†æ˜¯ä‹Éç”¨äº†é‚£ç§æ–ÒŽ³•。对™å¹ç›®¾lç†æ¥è¯´åQŒä¸åŒçš„™å¹ç›®æˆ–团队应当采用适应其特ŒDŠæƒ…å†ëŠš„æ–ÒŽ³•åQŒè€Œè¿™äº›æ–¹æ³•的基本原则是相åŒçš„ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å›?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">.</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">æ•æ·è½¯äšg开呿–°æ–¹å‘</span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¯ÒŽž¶æž„师或程åºå‘˜æ¥è¯´åQŒè¿‘òq´æ¥çš„æŠ€æœ¯è¿›å±•,也ä‹Éå¾—æ•æ·å¼€å‘有了新的研½I¶æ–¹å‘:</span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Web Development with Rails</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by</span> <span style="FONT-FAMILY: Tahoma" twffan="done"> </span> <span style="FONT-FAMILY: Tahoma" twffan="done">Dave Thomas, David Hansson, Leon Breedt, and Mike Clark<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">该书是获å¾?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">2006JOLT</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">奖的书,讲得是采ç”?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Ruby on Rails</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">˜q™ä¸ª</span> <span style="FONT-FAMILY: Tahoma" twffan="done">Web</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">å¼€å‘å·¥å…äh–°è´‰|¥å¿«é€Ÿå¼€å?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Web</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">™å¹ç›®åQŒä»Žè€Œè¾¾åˆ°å¿«é€Ÿå馈拥抱å˜åŒ–的目的ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Refactoring Databases</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">by Scott W Ambler<o:p></o:p></span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">此书æ˜?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Scott</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">的新作,延箋和ç‘ô承了ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Modeling</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆæ•æ·å»ºæ¨¡åQ‰å’Œã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done">Agile Database Techniques</span> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">ã€‹ï¼ˆæ•æ·æ•°æ®åQ‰çš„æ€æƒ³ã€‚åœ¨æ•æ·å¼€å‘过½E‹ä¸­åQŒä½œä¸ºæŒä¹…åŒ–æœ€å¸¸è§æŠ€æœ¯çš„æ•°æ®åº“如果ä¸èƒ½å¤Ÿæ•æ·åQŒæ€Žä¹ˆèƒ½å¤Ÿé€‚应一‹Æ¡æ¬¡˜q­ä»£å’Œä¸€‹Æ¡æ¬¡å‘布的修改呢åQŸä¹¦ä¸­ä»‹¾l了如何˜q›è¡Œæ•°æ®åº“演化,如何ä¿è¯å‡çñ”åŽæ•°æ®åº“æ•°æ®çš„æ­£¼‹®æ€§ï¼Œä»¥åŠæœ€ä½›_®žè·üc€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal"> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="TEXT-INDENT: 21pt"> <span lang="ZH-CN" style="FONT-FAMILY: 宋体" twffan="done">我们å¯ä»¥çœ‹åˆ°åQŒéšç€æ•æ·æ–ÒŽ³•å’Œå¸‚åœºçš„ä¸æ–­æˆç†ŸåQŒæ•æïLš„书ç±ä¹Ÿä»Žç†è®ºæ€§è{å‘了实用和最佛_®žè·ëб»åž‹ã€‚然而,ä¸å¯å¦è®¤çš„æ˜¯åQŒä¸€ä¸ªå›¢é˜Ÿçš„æ•æ·åŒ–很难仅é é˜…è¯ÖM¹¦æœ¬æ¥å®ŒæˆåQŒç”±æˆåŠŸå®žè·µ˜q‡æ•æïLš„å¼€å‘è€…æ‰‹æŠŠæ‰‹çš„å¸¦é¢†ï¼Œæ‰æ˜¯æœ€å¥½çš„æ–ÒŽ³•ã€?/span> <span style="FONT-FAMILY: Tahoma" twffan="done"> <o:p> </o:p> </span> </p> <img src ="http://www.aygfsteel.com/nobody_am/aggbug/89815.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/nobody_am/" target="_blank">MingIsMe</a> 2006-12-25 09:22 <a href="http://www.aygfsteel.com/nobody_am/archive/2006/12/25/89815.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://" target="_blank">˫ѼɽÊÐ</a>| <a href="http://" target="_blank">º³ÇÊÐ</a>| <a href="http://" target="_blank">´óÆÒÇø</a>| <a href="http://" target="_blank">ÐÂÌïÏØ</a>| <a href="http://" target="_blank">µÂÐËÊÐ</a>| <a href="http://" target="_blank">ÈéÔ´</a>| <a href="http://" target="_blank">ÓÀÐËÏØ</a>| <a href="http://" target="_blank">¬ÁúÏØ</a>| <a href="http://" target="_blank">¸ß°²ÊÐ</a>| <a href="http://" target="_blank">ɳÌïÇø</a>| <a href="http://" target="_blank">äðºÓÊÐ</a>| <a href="http://" target="_blank">·½³ÇÏØ</a>| <a href="http://" target="_blank">ÀÖÖÁÏØ</a>| <a href="http://" target="_blank">ÆÕÀ¼µêÊÐ</a>| <a href="http://" target="_blank">¸ß°²ÊÐ</a>| <a href="http://" target="_blank">ÒÁ½ð»ôÂåÆì</a>| <a href="http://" target="_blank">ÒÇÂ¤ÏØ</a>| <a href="http://" target="_blank">½·áÊÐ</a>| <a href="http://" target="_blank">а²ÏØ</a>| <a href="http://" target="_blank">ÎÌÔ´ÏØ</a>| <a href="http://" target="_blank">ÒÁ´¨ÏØ</a>| <a href="http://" target="_blank">ºôºÍºÆÌØÊÐ</a>| <a href="http://" target="_blank">ÅͰ²ÏØ</a>| <a href="http://" target="_blank">»ÆÆÖÇø</a>| <a href="http://" target="_blank">¾ÆÈªÊÐ</a>| <a href="http://" target="_blank">ºé½­ÊÐ</a>| <a href="http://" target="_blank">Ëç·ÒºÓÊÐ</a>| <a href="http://" target="_blank">Æ¤É½ÏØ</a>| <a href="http://" target="_blank">ÁÙÒØÏØ</a>| <a href="http://" target="_blank">Èô¶û¸ÇÏØ</a>| <a href="http://" target="_blank">ÙðÖÝÊÐ</a>| <a href="http://" target="_blank">²ý¼ªÊÐ</a>| <a href="http://" target="_blank">ÒË´¨ÏØ</a>| <a href="http://" target="_blank">ȪÖÝÊÐ</a>| <a href="http://" target="_blank">Ãñ·áÏØ</a>| <a href="http://" target="_blank">°ÄÃÅ</a>| <a href="http://" target="_blank">¾£ÃÅÊÐ</a>| <a href="http://" target="_blank">ºÊÔóÊÐ</a>| <a href="http://" target="_blank">ÇúËÉÏØ</a>| <a href="http://" target="_blank">Æ½Ò£ÏØ</a>| <a href="http://" target="_blank">ÈêÖÝÊÐ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>