ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>午夜日韩视频,日韩国产中文字幕,国产一区二区三区不卡在线http://www.aygfsteel.com/97030530/archive/2006/03/30/38367.html逝去的年å?/dc:creator>逝去的年å?/author>Thu, 30 Mar 2006 13:57:00 GMThttp://www.aygfsteel.com/97030530/archive/2006/03/30/38367.htmlhttp://www.aygfsteel.com/97030530/comments/38367.htmlhttp://www.aygfsteel.com/97030530/archive/2006/03/30/38367.html#Feedback0http://www.aygfsteel.com/97030530/comments/commentRss/38367.htmlhttp://www.aygfsteel.com/97030530/services/trackbacks/38367.html    ˜q™æ˜¯ä¸€¿Uå¯¹å•个æ–ÒŽ³•的参æ•îC‹É用控制反转,把控制权和差错处理交¾l™æ¡†æž¶æ¥å¤„理。严格的è¯ß_¼Œ˜q™æ˜¯ä¸€¿UStrategy模式的特例,他们的区别就在于接口的复杂度不同ã€?br />   在Springçš„JdbcTemplate中就使用了这¿Uæ¨¡å¼ã€‚JdbcTemplate实现了query()æ–ÒŽ³•åQŒå‚数是SQL字符ä¸ÔŒ¼Œå’Œä¸€ä¸ªå®žçŽîCº†å›žè°ƒæŽ¥å£çš„,ž®†åœ¨è¯Õd–resultSet每行时被调用ã€?br />

1 public   interface  RowCallbackHandler 
2 {
3      void  processRow(ResultSet rs)  throws  SQLException;
4 }
 


  query()æ–ÒŽ³•ž®è£…了对JDBC底层API的调用ã€?br />

public   void  query(String sql, RowCallbackHandler callbackHandler)  throws  JdbcSqlException 
{
    Connection con 
=   null ;
    PreparedStatement ps 
=   null ;
    ResultSet rs 
=   null ;
    
try  
    
{
        con 
=   < code to get connection >
        ps 
=  con.prepareStatement (sql);
        rs 
=  ps.executeQuery();
        
while  (rs.next()) 
        
{
            callbackHandler.processRow(rs);
        }

        rs.close();
        ps.close();
    }
 
    
catch  (SQLException ex) 
    
{
        
throw   new  JdbcSqlException( " Couldn't run query [ "   +  sql  +   " ] " , ex);
    }

    
finally  
    
{
        DataSourceUtils.closeConnectionIfNecessary(
this .dataSource, con);
    }

}


   在上面的例子中,JdbcSqlException¾l§æ‰¿äº†java.lang.RuntimeExceptionåQŒä¹Ÿž®±æ˜¯è¯´è°ƒç”¨è€…可以选择åŽÀL•获它åQŒä½†æ˜¯è¿™ä¸æ˜¯å¿…须的。假如实çŽîCº†å›žè°ƒæŽ¥å£çš„子¾c»é‡Œçš„æ–¹æ³•出错,而且不是RuntimeException的子¾c»ï¼Œä¹Ÿå°±æ˜¯å¿…™åÀL•èŽïLš„异常åQŒä½†æ˜¯query()æ–ÒŽ³•中在逻辑上是没有办法捕获它的。所以Rod_Johnson把接口定义成JdbcTemplateçš„inner interface。这ž®±å¯ä»¥JdbcTemplatež®±å¯ä»¥æ•获它ã€?br />   回调æ–ÒŽ³•也是框架的一¿UåŸºæœ¬æ–¹æ³•,比如java.io.File¾cÖM¸­çš„listFiles(FilenameFilter filter),FilenameFilterž®±æ˜¯ä¸€ä¸ªæŽ¥å£ï¼Œæˆ‘们实现˜q™ä¸ªæŽ¥å£ä¸­çš„æ–ÒŽ³•accept(File dir, String name) åQŒè¿™ž®±æ˜¯ä¸€ä¸ªå…¸åž‹çš„回调æ–ÒŽ³•ã€?br />   观察者模式的使用½W¦åˆå¼€é—­åŽŸåˆ™ï¼Œòq¶ä¸”分离了关注点。这¿Uå¯¹æ¨¡å—修改开发,影响关闭的原则促˜q›äº†AOP面向斚w¢¾~–程的发展。Spring中的AOP可能ž®±æ˜¯˜q™ç§æ€æƒ³çš„实玎ͼŒä¸ªäh猜测而已。   Â?br />    把方法的参数攑֜¨ä¸€ä¸ªç±»ä¸­ï¼Œ˜q™æ ·ä»¥åŽè¦å¢žåŠ å‚æ•°çš„è¯ï¼Œä¸ç”¨ä¿®æ”¹æ–ÒŽ³•½{‘֐åQŒæ„Ÿè§‰å¾ˆòq²å‡€åQŒå”¯ä¸€å¯èƒ½çš„缺ç‚ÒŽ˜¯å¯èƒ½å¯ÒŽ€§èƒ½æœ‰æ‰€ä¸‹é™åQŒä¸˜q‡å¾ˆž®ã€‚如果没有用EJB的话åQŒåº”该差不多ã€?br />
   对异常的处理åQŒåˆ†ä¸ºcheckedå’Œunchecked异常åQŒchecked异常是ç‘ô承java.lang.Exception的。Unchecked异常¾l§æ‰¿java.lang.RuntimeException。Rod_Johnsonä¸Õd¼ åœ¨å¯¹å‡ºçŽ°å¼‚å¸¸åŽï¼Œ½E‹åºä¸èƒ½å¤„理åQŒåªèƒ½ç»™äºˆæ²¡ç”¨çš„æç¤ºæ—¶ç”¨RuntimeExceptionåQŒå› ä¸ºRuntimeException容器会自动处理。关于异常的详细说明åQŒæˆ‘也没看明白,希望那位大虾能指ç‚ÒŽŒ‡ç‚V€?/font>

备注åQšæœ¬æ–‡ä¸»è¦å†…å®ÒŽ¥æºäºŽRod_Johnsonçš„å¤§ä½œï¼Œå¼ºçƒˆå»ø™®®çœ‹åŽŸç‰ˆï¼



]]>
Template模式和Strategey模式http://www.aygfsteel.com/97030530/archive/2006/03/29/38131.html逝去的年å?/dc:creator>逝去的年å?/author>Wed, 29 Mar 2006 12:49:00 GMThttp://www.aygfsteel.com/97030530/archive/2006/03/29/38131.htmlhttp://www.aygfsteel.com/97030530/comments/38131.htmlhttp://www.aygfsteel.com/97030530/archive/2006/03/29/38131.html#Feedback0http://www.aygfsteel.com/97030530/comments/commentRss/38131.htmlhttp://www.aygfsteel.com/97030530/services/trackbacks/38131.html         在学习Spring的过½E‹ä¸­¾lå¸¸çœ‹åˆ°ä¸€äº›å¤§è™¾æŽ¨èé˜…读Rod_Johnsonçš?lt;Expert_One-on-One_J2EE_Design_and_Development>ä¹?据说此书的第四章每个学java人都要看çœ?好不å®ÒŽ˜“搞到pdfç‰?可惜是E文的,中文的搞不到,没办法只好硬着头皮看下厅R€?br />   ½W¬å››ç« ä¸»è¦è®²çš„æ˜¯é¢å‘对象的设计模å¼?怎么采用一致的¾~–码公约,怎么利用也有的系¾l?˜q™å¯¹äºŽç†è§£Spring框架有很大的帮助!因䨓˜q™æ˜¯Spring之父的编½E‹æ€æƒ³ã€?:
   关于接口的好处及¾l„合模式的有ç‚?我这里就不说了ã€?br />   Template模式:适用范围,我们知道某个业务或算法的步骤,但是不知道怎么把每步的™åºåºã€‚Template模式采用在abstract¾cÖM¸­æœ‰ä¸ªPublic and final的方法封装了调用每步的顺åº?也就是说控制了工作流½E‹ã€‚所有的¾l§æ‰¿¾cÖM¹Ÿž®±åªè¦å®žçŽ°æ¯æ­¥çš„å…·ä½“æ–ÒŽ³•。这是控制反转的一¿Uè¡¨çŽŽÍ¼Œä»¥å‰éƒ½æ˜¯æˆ‘们在程序中去调用API中的æ–ÒŽ³•,现在是我们实现API某个¾cÖM¸­çš„æŠ½è±¡æ–¹æ³•给该类调用!˜q™ç§æŽ§åˆ¶åè{的机åˆ?是框架的代码基础.比如,EJB中的Init()å’Œdestory()æ–ÒŽ³•½{‰ç­‰.Spring框架中的å¯ÒŽ•°æ®æŒä¹…层的实现就是很好的例子!
下面把书中的例子COPY�
  AbstractOrderEJB父类实现了商业逻辑,包括用户是否金额­‘…现和对大的订单˜q›è¡Œæ‰“折,palceOrder()æ–ÒŽ³•ž®±æ˜¯é‚£ä¸ªå·¥ä½œ‹¹æ–¹æ³•ã€?/font>

abstract   class  AbstractOrderEJB
{
    
public   final  Invoice placeOrder ( int  customerId, InvoiceItem[] items)
        
throws  NoSuchCustomerException, SpendingLimitViolation 
    
{
        
int  total  =   0 ;
        
for  ( int  i  =   0 ; i  <  items. length; i ++ ) 
        
{
            total 
+=  getItemPrice (items [i])  *  items [i] .getQuantity();
        }

        
if  (total  >  getSpendingLimit (customerId) )
        
{
            getSessionContext() .setRollbackOnly();
            
throw   new  SpendingLimitViolation (total, limit);
        }

        
else   if  (total  >  DISCOUNT_THRESHOLD) 
        
{
            
//  Apply discount to total
        }

        
int  invoiceId  =  placeOrder (customerId, total, items);
        
return   new  InvoiceImpl (iid, total);
    }


    
protected   abstract   int  getItemPrice(InvoiceItem item);

    
protected   abstract   int  getSpendingLimit(customerId) throws  NoSuchCustomerException;

    
protected   abstract   int  placeOrder( int  customerId,  int  total,InvoiceItem[] items);
  }

   getItemPriceåQŒgetSpendingLimitåQŒplaceOrder˜q™ä¸‰ä¸ªæ–¹æ³•,是protected and abstract的,由子¾cÀL¥å®žçްã€?/font>
   Strategey模式和Templateæ¨¡å¼æ¯”è¾ƒç›æ€¼¼.用Strategey模式对上个例子进行改é€?把三个单独的æ–ÒŽ³•攑օ¥ä¸€ä¸ªæŽ¥å£ä¸­,工作‹¹æ–¹æ³•进行如下修æ”?

 1 public   class  OrderEJB
 2 {
 3      private  DataHelper dataHelper;
 4      public   void  setDataHelper (DataHelper newDataHelper) 
 5      {
 6          this .dataHelper  =  newDataHelper;
 7     }

 8      public   final  Invoice placeOrder ( int  customerId, InvoiceItem[] items)
 9          throws  NoSuchCustomerException, SpendingLimitViolation 
10      {
11          int  total  =   0 ;
12          for  ( int  i  =   0 ; i  <  items.length; i ++ ) 
13          {
14             total  +=   this .dataHelper.getItemPrice(items[i])  *
15             items[i].getQuantity();
16         }

17          if  (total  >   this .dataHelper.getSpendingLimit(customerId)) 
18          {
19             getSessionContext() .setRollbackOnly();
20              throw   new  SpendingLimitViolation(total, limit);
21         }
 
22          else   if  (total  >  DISCOUNT_THRESHOLD) 
23          {
24              //  Apply discount to total
25         }

26          int  invoiceId  =   this .dataHelper.placeOrder (customerId, total, items);
27          return   new  InvoiceImpl (iid, total);
28     }

29 }

   Stratery模式比Temlater模式复杂点,但是它具有更高的灉|´»æ€§ï¼Œå¯¹äºŽå®žé™…™å¹ç›®ä¸€äº›æµ½E‹çš„æŽ§åˆ¶æœ‰å¾ˆå¥½çš„作用åQè¿™æ˜¯æœ¬äººçš„观点åQŒä¸ä¸€å®šæ­£¼‹®ï¼Œä»…供参考ã€?br />   
在下面的情况�用Stratery模式比Temlater模式更好:
1,每步都是可变çš?br />2,实现每步的类需要一个独立的¾l§æ‰¿ä½“ç³»
3,实现每步的类要和其他的类打交�br />4,实现每步的类要实现多态�br />
备注åQšæœ¬æ–‡ä¸»è¦å†…å®ÒŽ¥æºäºŽRod_Johnsonçš„å¤§ä½œï¼Œå¼ºçƒˆå»ø™®®çœ‹åŽŸç‰ˆï¼



]]>
½E‹åºå‘˜çš„个äh发展http://www.aygfsteel.com/97030530/archive/2006/02/28/32927.html逝去的年å?/dc:creator>逝去的年å?/author>Tue, 28 Feb 2006 14:30:00 GMThttp://www.aygfsteel.com/97030530/archive/2006/02/28/32927.htmlhttp://www.aygfsteel.com/97030530/comments/32927.htmlhttp://www.aygfsteel.com/97030530/archive/2006/02/28/32927.html#Feedback0http://www.aygfsteel.com/97030530/comments/commentRss/32927.htmlhttp://www.aygfsteel.com/97030530/services/trackbacks/32927.html

      ˜q™æ˜¯æˆ‘çš„blog的第一½‹‡æ–‡ç« ï¼Œè½¬è²ä¸€ŒD늽‘上的¾lå…¸æ–‡ç« åQŒæ—¶åˆÀL£€æŸ¥è‡ªå·±æœ›˜q™ä¸ªæ–¹å‘努力。既焉™€‰æ‹©äº†è¿œæ–¹ï¼Œž®Þp¦å‹‡å¾€ç›´å‰åQ?BR>
技æœ?amp;½Ž¡ç†&做äh&行业

每天晚上åQŒè¯·ä½ é—®è‡ªå·±˜q™äº›é—®é¢˜åQ?BR>1åQ?今天我是否克服了技术上新的困难åQ?BR>2åQ?今天我是否多è¯ÖMº†ä¸€äº›æ–°ä¹¦ï¼Ÿ
3åQ?今天我是否就某方面的问题与äh˜q›è¡Œäº†äº¤‹¹ï¼Ÿ
4åQ?今天我是否多认识了一个新同事或新朋友òq¶å‡†å¤‡ä¸Žä»–们保持联络åQ?BR>5åQ?今天我是否更多的接触到èín处的行业需求,现状åQŒå’Œå‘展åQ?/U>

¾_ùN€šæŠ€æœ?SPAN style="FONT-WEIGHT: 400">

      ¾_ùN€šæŠ€æœ¯æ˜¯æŠ€æœ¯äh员的æ ÒŽœ¬è¦æ±‚åQŒä¹Ÿæ˜¯æŠ€æœ¯äh员äh生发展的必经之èµ\åQŒåªæœ‰é¦–先精¼‹®æŽŒæ¡ä¸€é—¨æŠ€æœ¯ï¼Œæ‰èƒ½è§¦ç±»æ—é€šçš„æŽŒæ¡å…¶ä»–æŠ€æœ¯ã€‚ç²¾é€šæŠ€æœ¯ä¸ä»…ä»…æ˜¯äØ“äº†ç²¾é€šæŠ€æœ¯ï¼Œè€Œæ˜¯ä¸ÞZº†è§¦ç±»æ—é€šï¼Œä¸ÞZº†æŽŒæ¡¾_ùN€šæŠ€æœ¯çš„学习æ–ÒŽ³•åQŒç ”½I¶æ–¹æ³•,体会íw«å¤„技术顶点的感受和境界,˜q™æ ·åQŒä¸‹ä¸€‹Æ¡å‡†å¤‡æˆ–需要进入另一个领域时åQŒæ‰ä¼šæœ‰æ˜Žç¡®çš„目标ã€?BR>
      ä¸ÞZº†¾_ùN€šæŠ€æœ¯ï¼Œž®Þp¦æœ‰ä»¥å·¥ä½œä¸ÞZ¹çš„ç²¾¼œžã€‚不ä¸Õd¼ ˜q‡äºŽé¢‘繁的换工作åQˆå¸¸å¸¸è¢«è®¤äؓ是不热爱工作åQŒä¸é€‚应环境åQŒæˆ–者不忠诚的表玎ͼ‰ã€‚以工作ä¸ÞZ¹åQŒæ‰ä¼šæŠ•入更多的¾_‘ÖŠ›å’Œæ—¶é—ß_¼Œæ‰èƒ½å¤Ÿé£žå¿«æˆé•¿ï¼Œæˆäؓ该方面的能手。以工作ä¸ÞZ¹åQŒæ˜¯æœç€æŠ€æœ¯é«˜å³°é˜”步迈˜q›çš„享受˜q‡ç¨‹ã€?BR>
      å¦‚æžœä»…ä»…çš„æ˜¯ä»¥å·¥ä½œäØ“ä¹ï¼Œä»…ä»…åïL§°è‡ªå·±å–œæ¬¢å·¥ä½œåQŒè€Œæ²¡æœ‰â€œæœç€æŠ€æœ¯é«˜å³°é˜”步迈˜q›â€ï¼Œåˆ™æ˜¯ä¸€¿Uæµªè´V€‚要做工作和生活的有心ähåQŒæ‰ä¸ä¼š˜q·ä¿¡æŠ€æœ¯ï¼Œæ‰ä¼šé¿å…éª„傲åQŒæ‰ä¸ä¼šåœ¨è¾¾åˆ°æŸä¸ªæ°´òq³ä»¥åŽåœæ­¥ä¸å‰ã€‚不仅要做有心ähåQŒè¿˜è¦å­¦ä¼šç ”½I¶ã€‚ç ”½I¶è¯¥é—¨æŠ€æœ¯çš„发展方向åQŒè¯¥é—¨æŠ€æœ¯æœ€å¥½çš„学习æ–ÒŽ³•åQŒåœ¨è¯¥é—¨æŠ€æœ¯ä¸Šå–å¾—½Hå‡ºæˆå°±çš„道路,和激åŠÞp‡ªå·±æ²¿ç€æ­£ç¡®çš„æ–¹å‘前˜q›çš„诀½Hã€‚做好了˜q™äº›é—®é¢˜çš„ç ”½IÓž¼Œž®×ƒ¼šåœ¨ä»¥å·¥ä½œä¸ÞZ¹çš„境界中做出­‘…凡的成¾l©ã€?BR>
æ€ÖM¹‹åQ?BR>1åQ?反对不认真对待技术ã€?BR>2åQ?反对不热爱工作,一心旁鹜ã€?BR>3åQ?做生‹zÕd’Œå·¥ä½œçš„æœ‰å¿ƒähã€?BR>
懂得½Ž¡ç†

      æ‡‚å¾—½Ž¡ç†åQŒæ—¢è¦å­¦ä¼šç®¡ç†ï¼Œä¹Ÿè¦å­¦ä¼šé…åˆ½Ž¡ç†ã€‚那些对所有äh和所有事情都åÒޝ›æ±‚疵的äh是不适应½C¾ä¼šçš„,也是不容易成功的。懂得管理,既要学会½Ž¡ç†å·¥ç¨‹åQˆè¿›åº¦ï¼Œ˜q‡ç¨‹åQŒèµ„源,需求分析,客户交流åQ‰ï¼Œåˆè¦å­¦ä¼š½Ž¡ç†äººã€‚è¦é‡è§†å›¢é˜Ÿå»ø™®¾åQŒé‡è§†å›¢é˜Ÿçš„合作åQŒé‡è§†å›¢é˜Ÿçš„æ–‡åŒ–廸™®¾åQŒé‡è§†å›¢é˜Ÿçš„凝聚力,重视½Ž¡ç†è€…的个äh感染力ã€?BR>
      åœ¨ç”¨æˆ·ä¸èƒ½æå‡ºæ˜Ž¼‹®çš„需求的情况下,要综合经验,替用æˆähå‡ºæ˜Ž¼‹®çš„需求ã€?BR>
      ½W¦åˆæ ‡å‡†çš„过½E‹æŽ§åˆÓž¼Œæ–ÒŽ³•论的实际应用可以引导工程有一个可期望的好¾l“果。否则就是运气的功劳ã€?BR>      èµ„源的合理配¾|®ï¼Œå»ø™®¾ä¸€ä¸ªæ¯ä¸ªäh舒适工作的环境åQŒä¸è¦è®©ä½ çš„¾l„员不得不æ€ÀL˜¯æŠŠç²¾åŠ›æ”¾åœ¨çŽ¯å¢ƒå¾è®„¡­‰é—®é¢˜ä¸Šï¼Œæ˜¯è®©äººåšå‡ºæ›´å¤§æˆ¾l©çš„æ·å¾„ã€?BR>
      ä¸Žähç•…å¿«äº¤æµçš„èƒ½åŠ›ï¼ŒæˆäØ“è½¯äšg人员必备的素质之一。懂得行业的知识ž®×ƒ»Ž˜q™é‡Œå¼€å§‹ã€?BR>
      é‚£äº›å•纯学过½Ž¡ç†çš„ähåQŒæ— è®ø™¿›å…¥é‚£ä¸€ä¸ªè¡Œä¸šï¼Œéƒ½éœ€è¦ä¸æ–­çš„˜q…速的学习一些关于该行业的专门知识,臛_°‘是名词术语,基本原理åQŒå…³é”®æŠ€æœ¯ï¼Œä¸»è¦åº”用。这æ ïLš„了解初步½Ž¡ç†çŸ¥è¯†çš„ähåQŒä¸€å®šä¸è¦å¯¹æŠ€æœ¯äh员指手画脚,否则一定得不到应有的认同,反之åQŒå¦‚果他们从˜q‡ç¨‹æœ¬èín的流½E‹æˆ–者方法论½{‰æ–¹é¢æå‡ºå¾è®®ï¼Œž®±å¯ä»¥æ›´å¥½çš„体现自己的ä­h倹{€?BR>
˜q›å…¥è¡Œä¸š

      è½¯äšg工作åQŒç¦»ä¸å¼€è¡Œä¸š,ž®¤å…¶æ˜¯åº”用èÊY件。一个仅仅懂得实现技术的人,是不够的。所以一定要拓展你的知识åQŒå¯¹ä½ æ‰€å¤„在的行业有一个更全面åQŒæ›´å‡†ç¡®åQŒæ›´å®žè´¨æ€§çš„了解ã€?BR>
      è½¯äšg人员看到需求分析,常常惛_ˆ°å¦‚何åŽÕd®žçŽ°å®ƒåQŒè€Œä¸ä¼šè®¤çœŸçš„åŽÈ ”½I¶è¿™ä»½éœ€æ±‚,站在用户的角度上来做更多的工作,˜q™æ˜¯å€¼å¾—软äšg人才所注意的ã€?BR>
      ç ”究你所在的行业åQŒä¹Ÿéœ€è¦æœ‰ä¸€¿Uç³»¾lŸçš„æ–ÒŽ³•。了解其中的关键ç‚ÒŽ˜¯˜q›å…¥˜q™ä¸ªè¡Œä¸šçš„æ·å¾„。了解触及该行业更多斚w¢çš„关键点åQŒæ˜¯æŽŒæ¡˜q™ä¸ªè¡Œä¸šçš„å¿…¾lä¹‹è·¯ã€‚对该行业做¾pȝ»Ÿçš„æ€È»“分析åQŒæ˜¯æ·±å…¥è¯¥è¡Œä¸šçš„目的。初步的研究成果¾lè¿‡æ›´å¤šçš„æç‚¼å’Œäº¤æµåQŒå°±ä¼šæˆä¸ºé‡‘子般的智慧ã€?BR>
以下是几点徏议:

      ä»Žç‚¹æ»´åšèµ—÷€‚先做好那些你力所能及的工作。标准化你的行业。你所处的行业虽然¼‹®å®šåQŒä½†æ˜¯æ¯ä¸€å®¶å…¬å¸çš„需求各不相同。掌握他们做事情的流½E‹ï¼Œå¯ä»¥å¸®åŠ©ä½ åšå¥½æ ‡å‡†åŒ–ã€‚åŒæ—¶å­¦ä¹ é‚£äº›è¯¥è¡Œä¸šçš„æ ‡å‡†ï¼Œä»¥ç”¨æˆïLš„æ ‡å‡†ä¸ºæ ‡å‡†ï¼Œæ›´åŠ æ·±åˆ»çš„ç†è§£æ ‡å‡†ï¼Œæ˜¯ä»£æ›¿ç”¨æˆ·åšå¥½æ ‡å‡†åŒ–çš„æ–¹æ³•ã€?BR>      æŽŒæ¡æ ¸å¿ƒæŠ€æœ¯ã€‚ä“Q何行业都有核心技术。掌握某一™åÒŽ ¸å¿ƒæŠ€æœ¯ï¼Œž®±å¯ä»¥è®©ä½ è¿›å…¥è¿™ä¸ªè¡Œä¸šåƈ在其中生存,反之仅仅‹¹…尝辄止åQŒå°±ä¼šè®©ä½ é­é‡å¤±è´¥ï¼ŒæŠ±æ€¨ä¸å…¬ã€?BR>
影响你职业发展的几项能力
1åQ?研究问题的能åŠ?BR>2åQ?影响他äh的能åŠ?BR>3åQ?个äh履历

è¯ïL›¸ä¿¡ä»¥ä¸‹è§‚å¿?BR>1åQŒæ•™è‚²ä¸æ˜¯ä¸‡èƒ½çš„。希望学校或者ä“Qä½•ä¸€ä¸ªæ•™è‚²æœºæž„äØ“ä½ å‡†å¤‡æ‰€æœ‰çš„çŸ¥è¯†åQŒèƒ½åŠ›ï¼Œæ°´åã^åQŒæ˜¯ä¸å¯èƒ½çš„。最好的大学是自己和无字书ã€?BR>2åQ?成长在工作中。工作中的表现和¿U¯ç¯æ‰æ˜¯äººç”Ÿè…ùN£žçš„实际动力ã€?BR>
从今天è“våQŒè¯·åšå¥½
1åQ?培养你自己更òq¿æ³›çš„å…´­‘£ï¼Œòq¶åšæŒä½ çš„äh生目æ ?BR>2åQ?é”ȝ‚¼ä½ çš„æ¼”讲能力
3åQ?å¤šè®¤è¯†æœ‹å‹ï¼Œä»¥ä»–ä»¬äØ“è?BR>4åQ?培养你的˜qœè§å“识


处处深入学习,跟踪技术顶å³?˜q½æ±‚技术顶å³?!

转蝲�http://gocom.primeton.com/blog/index.php?op=ViewArticle&articleId=15&blogId=9

]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º Äϰ²ÊÐ| É̶¼ÏØ| ͳ·¬ÊÐ| Îå´óÁ¬³ØÊÐ| ÌïÁÖÏØ| ¸£°²ÊÐ| éŽ­ÏØ| ¾°µÂÕòÊÐ| ÓݳÇÏØ| ÓÀÊ¤ÏØ| ÎåÌ¨ÏØ| Ã÷Ë®ÏØ| ÆÎÌïÊÐ| ¿¦À®Ç߯ì| ÷ºÓ¿ÚÊÐ| ¶«ÄþÏØ| ÖÐÎ÷Çø| ³ÇÊÐ| ʱÉÐ| ¡²ýÏØ| ʯ³ÇÏØ| Öг¬| ËìÄþÊÐ| ¸»ÑôÊÐ| É£ÈÕÏØ| ÌÒÔ´ÏØ| ÓÎÏ·| ÓÀÖÝÊÐ| Ä«Öñ¹¤¿¨ÏØ| ÎÌÔ´ÏØ| ³Ç²½| Ì«¿µÏØ| Þ­´ºÏØ| ³çÈÊÏØ| »áÍ¬ÏØ| ÔÇÎ÷ÏØ| ÍòÄþÊÐ| ÍþÐÅÏØ| Ñúå¨| ÐËÈÊÏØ| ÓñÃÅÊÐ|