?
分析:這個問題與雇主的第二種期望有關。雇主想知道你的適應性技能--你是否容易相處,你是否是個好工人等等。你以前的雇主可能會談到你存在的問題,當然,也可能不談。你知道,許多雇主會在雇用你之前查閱你的證明信,如果你在面談時談的與你以前的雇主說的不一樣,你就要倒霉了。
回答對策:一定要與你以前的雇主討論你的求職計劃,也要征求你介紹人的意見。要明確地告訴他們你想找的工作種類以及你準備做好新工作的理由。假如以前的雇主會說一些不利于你的話,你要和他開誠布公地談談,看他會說寫什么。
如果你是被解雇或被迫辭職的,你可以向未來的雇主進行辯解。有很多成功的人與前雇主發生過沖突,如果能把這些沖突盡可能地講出來,許多面談者是會理解的。對和你關系不好的舊雇主,明智的辦法是請他寫一份文字證明材料,在這種情況下,他們不會給你極為不利的信。大的公司一般不接受電話提供證明材料,這可以使你大大地松一口氣,只要給公司打個電話就清楚了。
如果可能的話,使用那些說你好話的證明信。要是你的前任老板不愿這么做,找個愿意幫忙你的人便行了。如果你被解雇了,最好的對策是實話實說。但是對你的前任老板不要太苛刻,這樣會讓人覺得你是個好抱怨而無責任感的人。再者,你也不是一點錯也沒有。要先承認有這么回事,接著要趁機談談你從中得到的教訓。
回答樣板:“我的三個前雇主都會說我工作努力,可靠、忠實,我離開那里是因為個人沖突。為此我深深地感到煩惱,只有放棄那里的工作。你可以給他們打電話,他們對我的評價是肯定。我認為還是向你們談談為好,我仍然尊敬他。我在那得到了幾次晉升的機會,但是,隨著我權力的增加,沖突也越發地多起來。我們主要是不同類型的人。我不知道問題會有那么嚴重,因為我一心只想工作。這是我的錯,我認識到我應該更加注意人際關系的處理。”
評語:回答中介紹了一些正面的技能,并用具體事例加以說明,因而是有力的。
9.你為什么要找這樣的職位?為什么是在這里
分析:雇主想了解是否你是那種無論什么公司有活就行的人。果真如此,他或她就不會對你感興趣。雇主想找那種想解決工作中問題的人。他們有理由認為這樣的人工作起來更努力,更有效率,而那些想去特別的公司工作的人也是如此。
回答對策:事先了解哪些工作適合你的技能和興趣非常重要。要回答這個問題,就要談到你選擇工作目標的動機,那項工作要求的而你又具備的技能,各種專門培訓,或與職務有關的教育證書。
這個問題實際上有兩方面的含意。一是為什么選擇這個職位,二是為什么選擇這個公司。如果你有選擇這個公司的理由,或選擇這個公司是你最大愿望,你就要準備回答為什么。如果可能的話,在面談前,你要事先盡可能地對它進行了解。與別人聯系得到詳細的情報,或到圖書館查閱,看公司的年度報告,或任何能使你了解情況的方法都是必要的。
回答樣板:“我花費了很多時間考慮各種職業的可能性,我認為這方面的工作最適合我,原因是這項工作要求的許多技能都是我擅長的。舉例來說,分析問題和解決問題是我的強項,在以前的工作中我能比別人更早發現和解決問題。有一次,我提出一項計劃使得租借設備的退貨率減少了15%,這聽起來不算高,但是取得了年增長25000美元的好效益。而成本僅為100美元。目前你們公司似乎是能讓我施展解決問題能力的地方。這個公司工作運行良好,發展迅速,善于接受新思想。你們的銷售去年上漲了30%,而且你們準備引進幾項大型新產品。如果我在這里努力工作,證實我自身的價值,我感到我有機會與公司共同發展。
評語:這種回答巧妙地運用了“提供證據”技巧,這樣的話符合一個出色的經理或優秀的秘書的身份。
10.為什么不講一講你個人的情況?
分析:一個好的面談者很少這樣直接地提出這個問題,通過隨意的、友好的談話也可以得到想了解的情況。在大多數情況下,面談者會竭力地打探證明你不穩定或不可靠的信息。
回答對策:還有其它一些可能使某個雇主關注的問題,以上問題只是對某些性格的人的推測。這都是些不相關的問題,但是,如果雇主想以此來了解你可否可靠,你就得全力以赴地去應付了。要記住即使是隨意地閑談也要避免提及隱晦的問題。在回答個人情況時,要態度友好而且自信。
回答樣板:
有小孩子的家:“我有兩個小孩,都在上學。他們和我的一個好朋友在一起,照料孩子不成問題。”
一人主家:“我沒有結婚,但是我有兩個孩子。對我來說有一份穩定的收入很重要,照料孩子不成為問題。”
年輕、單身:“我沒有結婚,即使結婚,我也不會改變做專職工作的打算,我可以把全部精力用在工作上。”
新搬來的:“我決定在DepressionCulch長期居住下來,我租了一套公寓,搬家公司的六輛車正在卸家俱。”
撫養人:“我有個愉快的童年,我父母住的地方離我只需一小時飛機的路程,我一年去看他們幾次。”
閑暇時間:“在我不去上班時,我主要呆在家里。我愛參加社區組織的活動,我每周都要在教堂參加活動。”
評語:上述回答都可以擴展開,可以做為你回答問題時的參考。這里要告訴面談者的是你個人的情況不影響你的工作能力,而且,確實還能對你有幫助。如果你的個人生活會擾亂你的工作,想必雇主也會很快對你失去耐心的。這不是他們的問題,也不應該成為他們的問題。
1.為什么不談談你自己?
分析:這是個開放性問題。從哪里談起都行,但是滔滔不絕地講上一兩個小時可不是雇主所希望的。這樣的問題是測驗你是否能選擇重點并且把它清楚、流暢地表達出來。顯然,提問者想讓你把你的背景和想要得到的位置聯系起來。
回答對策:有幾個基本的方法。一個是直接簡要回答所問的問題,另一個是在回答前要求把問題問得更明確。在上述兩種情況下,你都要很快地把你的答案轉到你的技能、經驗和你為得到目前這份工作接受的培訓上來。
回答樣板:“我來自一個小家庭,有一個弟弟,父母都還在工作。中學畢業后,我攻讀市場營銷學士。日間在一家商業機構擔任行銷執行員,學了不少管理方面的知識。例如,我全權負責的一個批發銷售公司的業務,銷售總額一年為200萬美元。在那里我學習到怎么管理人事,在壓力下解決問題。我希望能更好的運用我的技能。我相信我的經驗和學歷將讓我迎向未來更大的挑戰。”
評語:只簡單的介紹了個人歷史,很快的將重點話題轉到與工作有關的技能和經驗上來。你也可請面談者把他確實想了解的東西集中到一點,如你可問:“你是不是想知道我受過的教育,或者與工作有關的技術和經驗?”等,大多雇主都會樂意告訴你他們感興趣的是什么?
2.我為什么要雇用你?
分析:這是個直接、正面的問題,盡管這個問題不會問得這樣明確,但是會在其它問題之后被提出來,這個問題沒有隱含的意思。
回答對策:直接的問題需要直接了當回答,為什么他們要雇用你呢?最巧妙的回答對他們而不是對你有利。這個問題會使你向他們提供證據以證實你可以幫助他們改進工作效率,降低成本、增加銷售、解決問題(如準時上班,改進對顧客的服務、組織一個或多個管理工作等)。
回答樣板:“我是個經驗豐富的經理,在員工隊伍建設方面,從組織項目的實施到鼓勵員工合作,我得心應手。多年來,我已經掌握了一套雇人和留人的技巧。此外,我還擅長幫助公司順利實現技術改造和員工培訓。我經常對主要客戶進行示范講解,我們的銷售額在過去兩年平均增加了87%。”
評語:在回答中,以實例提供有力的證據,直接而自信地推銷自己。
3.你有哪些主要的優點?
分析:像前面問題一樣,這個問題問得相當直接,但是有一點隱含。
回答對策:你的回答應當首先強調你適應的或已具有的技能。雇用你的決定在很大程度上取決于這些技能,你可以在后面詳細介紹你與工作有關的技能。回答時,一定要簡單扼要。
回答樣板:“我具有朝著目標努力工作的能力。一旦我下定決心做某事,我就要把它做好,例如,我的志愿是成為一個出色的公關經理,我喜歡接觸不同的人,服務人群,為了實現這個目標。我目前正在修讀有關課程。”
評語:如“我的學習能力、適應能力很強。”“人際關系很好”等都是可提出的優點,但盡可能要提供與工作相關的證據,這會使你與眾不同。
4.你有哪些主要的缺點?
分析:這是個棘手的問題。若照實的回答,你會毀了工作,雇主試圖使你處于不利的境地,觀察你在類似的工作困境中將作出什么反應。
回答對策:回答這樣的問題應誠實。完滿地回答應該是用簡潔正面的介紹抵消反面的問題。
回答樣板1:“工人們指責我對工作太投入。我經常提前一點上班安排好我的工作,晚上晚一點下班,使要干的事得以完成。”
回答樣板2:“我需要學會更耐心一點。我的性子比較急,我總要我的工作趕在第一時間完成。我不能容忍工作怠慢。”
評語:回答的雖是自身的缺點,但卻表現了正面的效果,對工作的積極抵消了反面。
5.你想得到的薪水是多少?
分析:如果你對薪酬的要求太低,那顯然貶低自己的能力;如果你對薪酬的要求太高,那又會顯得你分量過重,公司受用不起。一些雇主通常都事先對求聘的職位定下開支預算,因而他們第一次提出的價錢往往是他們所能給予的最高價錢。他們問你只不過想證實一下這筆錢是否足以引起你對該工作的興趣。
回答對策:在商談薪酬之前,你已經調查了解了自己所從事工作的合理的市場價值。在與對方商談時,不妨盡可能插入“合理的和市場價值”語匯。記得,商談時降低原來的開價輕而易舉,但一旦開出低價后想再提上去就難乎其難。
回答樣板1:如果你尚未徹底表現自我價值,面試者就提此問題考你,你不妨參考以下答案:
“錢不是我唯一關心的事。我想先談談我對貴公司所能做的貢獻--如果您允許的話。”
“我對工資沒有硬性要求。我相信貴公司在處理我的問題上會友善合理。我注重的是找對工作機會,所以只要條件公平,我則不會計較太多。”
回答樣板2:如果你已經闡明該職位的重要性,可是對方仍舊告訴你給你的報酬已是最好的。您不妨指出它的工作性質實際上值得你獲得更高的報酬;闡明你將如何通過努力縮減公司的開支;說明在工作中你得自我承擔哪些費用等,以證明你對公司的價值,和表明你要求更高報酬是以你的工作表現為前提的。但是如果對方不愿妥協,在你未得到肯定的工作答復之前,不要使雇主排除對你的考慮。你可以問:‘你們決定雇用我了嗎?”如果答案是肯定的,報酬卻使你不愿接受,你可以這樣拒絕:
“謝謝你給我提供工作機會。這個職位我很想的到,但是,工資比我想要的低,這是我無法接受這份工作的原因之一。也許你會重新考慮,或者以后能有使我對你們更有價值的工作時再考慮我。”
評語:即使拒絕對方,也要為協商留有余地。如果雇主需要你,他會樂于滿足你的要求。一旦你對他們提出的標準說“不”,交易就做不成了.
BOM的意義與種類
料表又稱為BOM(BillOfMaterial),是制造業管理的重點之一(屬于化工制藥飲料等行業的配方表其實與這個主題有關系,但是在本文中我們將集中注意力于一般成型工業中的料表,以免主題發散而無法聚焦),簡單的定義就是“記載產品組成所需使用材料的表格”。以一個新產品的誕生來看:首先是創意與可行性研究的初期過程,接下來的過程就是初步的工程技術分析與原型產品的設計,等到原型產品比較穩定后,經過自制或外購分析(MakeorBuyAnalysisandDecision)后就會產生第一版的工程料表(EBOM,EngineeringBOM)。到正式量產之前,第一版的生產料表(PBOM,ProductionBOM)必須要先完成,以便企業內的相關部門有所遵循。在此之后,就進入了正常的例行維護階段。
現將一般制造型企業內存在的BOM說明如下:
中文名稱 | 英文名稱 | 記載內容 | 主要用途 | 主要使用部門 |
工程料表 | Engineering BOM | 新產品的用料結構 | 是研究開發單位與其他單位間針對新產品初始定義的溝通媒介及日后設變的處理平臺 | 研究開發 生產技術 |
生產料表 | Production BOM | 量產產品的用料結構(企業內最多人使用) | 用于進行生產計劃,采購計劃的擬定,也是搭載選配及替代料表、成本料表的平臺 | 生管物管 采購外協 營銷財務 |
計劃料表 | Planning BOM | 產品族群比例關系(如某款式汽車手排檔銷量占30%,自排檔銷量占50%,手自排檔銷量占20%) |
用于進行中長期的原料采購計劃及生產產能負荷計劃 |
生管物管采 購外協 營銷 |
成本料表 | Cost BOM | 產品的標準成本組成結構 | 用于查詢產品標準成本之構成狀況,通常使用于以標準成本立帳的企業 | 財務 |
選配料表 | Configuration BOM | 產品的選配件結構 | 用于錄入客戶訂單時讓用戶可以選擇產品的選配件 | 營銷 生管物管 |
替代料表 | Substitute BOM | 產品的替代用料結構 | 用于進行物料計劃時或實際進行生產時,針對本身數量不足,但替代零件足夠的狀況,以替代件替換原零件,以降低庫存或避免缺料 |
生管物管 采購外協 |
保稅料表 | Tax-Bound BOM | 產品的保稅料件結構 |
用于進行申請海關保稅合同時能自動展開并計算應申請的保稅料件種類及數量 |
生管物管 財務采購 |
常見的BOM信息化管理問題及系統應提供的功能
BOM的管理是企業管理范疇中比較復雜的,其中又以設計變更為其首,為簡化本篇的內容,有關設計變更的部份將另辟專文說明,在此說明設計變更以外的:
1.這么多種BOM,到底該分還是該合?
既然有這么多種BOM,就產生了這樣一個問題:該合還是該分。如果全部分開,系統設計的復雜度較低,但是,卻造成用戶的負擔,不但信息維護的工作量大增,因為數據四處散布,錯誤發生的機會也大增;另一方面,如果全部合一,雖然乍看之下信息維護較為單純,但是,因為數據型態的差異性將造成系統設計過于復雜,用戶在使用時也不見得覺得方便,因此,分合之間的拿捏要相當有技巧,以兼顧用戶使用的方便和系統設計的復雜度等。
一般常見的設計是將工程料表、保稅料表及計劃料表獨立,而將生產料表、成本料表、選配料表及替代料表合一,其中,工程料表獨立的原因是它是屬于研究開發單位使用的功能。雖然BOM是所有BOM的源頭,但是其他部門卻很少真的使用它;另一方面,不是所有的企業都是保稅型態的,因此,將保稅料表獨立也是合理的;最后,有關計劃料表的部分,雖然它也是為了生物管的目的而存在,但一般行業為了計劃的目的其實使用生產料表就已經足夠,因此讓它單獨存在也未嘗不可。
另一方面,生產料表、選配料表及替代料表等三種料表的目的都是要解決生物管方面的問題,將他們合在一起方便集中管理而且一目了然。最后,成本料表是否單獨存在是個見仁見智的問題,但是大多數的人選擇將它與生產料表等合并以簡化數據。
2.BOM是否應與PDM、CAD等系統整合集成?
搞軟件的人都知道只要用戶能夠將需求表達清楚,沒有辦不到的事情,BOM與PDM、CAD等系統整合集成也不例外,只要ERP及PDM(或CAD)雙方針對用戶的需求,考慮數據的格式(必要時再借力于一些數據擷取工具),兩者間的整合集成是輕而易舉的。
但是,在絕大多數的案例里我們見到的是“各行其是”而非整合集成,最主要原因就是設計單位與企業內其他單位看事情的角度不同及需要的信息不同。以搞機械的行業為例,管設計的重視的是技術及功能問題,產品在他眼中被拆為不同的機構(Mechanism),有的負責傳動,有的負責煞車,有的負責懸吊,有的負責產生動力;但是負責生物管及采購外包的,卻是從管理的角度看事情,他們關心的是成品、半成品、自制件、外包件及采購件等。
為了解決這種認知上的差距,許多企業都有“生產技術”方面的人員負責將設計人員眼中的產品料表“翻譯”為生物管及采購外包人員看得懂的產品料表;另一方面,由于PDM、CAD的系統眾多,版本也不斷更新,要發展出放諸四海皆準的接口是有困難的,但為了某特定客戶的明確需求進行客制化相對的是比較容易的。最后,越來越多的制造業用戶希望在運行ERP的過程中能夠方便地查詢到產品的設計圖以進行有關技術面的判斷,這種需求相對的難度也較低。
3.選配料表管理存在的問題
對于選配件管理而言,最大的難題就是防錯,因為所謂選配件必定是存在限制的,如:某款汽車有三種發動機及兩種變速箱可供選擇,但是其中有一種發動機只能與一種變速箱搭配;另外一個例子如:某款電腦共有3.5寸軟盤、5.25寸軟盤、CDR、DVD、CDR/W、100MBZIP、150MBZIP等七種選擇配備,但是不管怎么選,最多只能選四種,因為電腦上只有四個擴充槽。選配防錯的例子非常多,而且在不同產品上面的規則也完全不同,有一些軟件號稱可以解決這個問題,經過了解后發覺這些軟件為了達到防錯的目的不但設計太過復雜,而且最后證明也無法涵蓋所有的狀況。更令人啼笑皆非的是沒有任何一個用戶使用這種功能,因為實在是太復雜了。
4.替代料表管理存在的問題
替代用料在許多電子及機械行業是種普遍的現象,舉個最簡單的例子來說,1.5″的螺絲通常可以取代1.2″的螺絲,但是,這種替代關系卻不一定適用于所有狀況,有時候使用較長螺絲時反而造成短路或不當干涉等狀況,因此,在料表中表達零件的裝配或插件位置可以讓使用者清楚了解替代料件的限制,以免犯錯造成產品的質量問題。
結語
制造型企業與買賣流通型企業間最大的差距就是制造行為,而制造管理本身具有高度的復雜性。BOM是所有制造管理的基礎信息,與企業絕大多數的部門都息息相關,“BOM管理”這個牽涉面廣泛的主題,長久以來是讓許多企業頭疼的問題。除了在技術方面有復雜的問題要處理外,在管理面更是個沉重的負擔,過去以手工作業方式處理BOM管理時經常存在“料表更新不及時”,“各方數據不一致”的現象,甚至經常發生錯誤而導致生產秩序大亂,錯失市場良機等情況,但是,現在已經有設計優良且經過大量用戶驗證的易飛ERP軟件可以協助企業進行這方面的管理了。
----------Arthur J.Riel
(1)所有數據都應該隱藏在所在的類的內部。
(2)類的使用者必須依賴類的共有接口,但類不能依賴它的使用者。
(3)盡量減少類的協議中的消息。
(4)實現所有類都理解的最基本公有接口[例如,拷貝操作(深拷貝和淺拷貝)、相等性判斷、正確輸出內容、從ASCII描述解析等等]。
(5)不要把實現細節(例如放置共用代碼的私有函數)放到類的公有接口中。
如果類的兩個方法有一段公共代碼,那么就可以創建一個防止這些公共代碼的私有函數。
(6)不要以用戶無法使用或不感興趣的東西擾亂類的公有接口。
(7)類之間應該零耦合,或者只有導出耦合關系。也即,一個類要么同另一個類毫無關系,要么只使用另一個類的公有接口中的操作。
(8)類應該只表示一個關鍵抽象。
包中的所有類對于同一類性質的變化應該是共同封閉的。一個變化若對一個包影響,則將對包中的所有類產生影響,而對其他的包不造成任何影響 .
(9)把相關的數據和行為集中放置。
設計者應當留意那些通過get之類操作從別的對象中獲取數據的對象。這種類型的行為暗示著這條經驗原則被違反了。
(10)把不相關的信息放在另一個類中(也即:互不溝通的行為)。
朝著穩定的方向進行依賴.
(11)確保你為之建模的抽象概念是類,而不只是對象扮演的角色。
(12)在水平方向上盡可能統一地分布系統功能,也即:按照設計,頂層類應當統一地共享工作。
(13)在你的系統中不要創建全能類/對象。對名字包含Driver、Manager、System、Susystem的類要特別多加小心。
規劃一個接口而不是實現一個接口。
(14)對公共接口中定義了大量訪問方法的類多加小心。大量訪問方法意味著相關數據和行為沒有集中存放。
(15)對包含太多互不溝通的行為的類多加小心。
這個問題的另一表現是在你的應用程序中的類的公有接口中創建了很多的get和set函數。
(16)在由同用戶界面交互的面向對象模型構成的應用程序中,模型不應該依賴于界面,界面則應當依賴于模型。
(17)盡可能地按照現實世界建模(我們常常為了遵守系統功能分布原則、避免全能類原則以及集中放置相關數據和行為的原則而違背這條原則) 。
(18)從你的設計中去除不需要的類。
一般來說,我們會把這個類降級成一個屬性。
(19)去除系統外的類。
系統外的類的特點是,抽象地看它們只往系統領域發送消息但并不接受系統領域內其他類發出的消息。
(20)不要把操作變成類。質疑任何名字是動詞或者派生自動詞的類,特別是只有一個有意義行為的類。考慮一下那個有意義的行為是否應當遷移到已經存在或者尚未發現的某個類中。
(21)我們在創建應用程序的分析模型時常常引入代理類。在設計階段,我們常會發現很多代理沒有用的,應當去除。
(22)盡量減少類的協作者的數量。
一個類用到的其他類的數目應當盡量少。
(23)盡量減少類和協作者之間傳遞的消息的數量。
(24)盡量減少類和協作者之間的協作量,也即:減少類和協作者之間傳遞的不同消息的數量。
(25)盡量減少類的扇出,也即:減少類定義的消息數和發送的消息數的乘積。
(26)如果類包含另一個類的對象,那么包含類應當給被包含的對象發送消息。也即:包含關系總是意味著使用關系。
(27)類中定義的大多數方法都應當在大多數時間里使用大多數數據成員。
(28)類包含的對象數目不應當超過開發者短期記憶的容量。這個數目常常是6。
當類包含多于6個數據成員時,可以把邏輯相關的數據成員劃分為一組,然后用一個新的包含類去包含這一組成員。
(29)讓系統功能在窄而深的繼承體系中垂直分布。
(30)在實現語義約束時,最好根據類定義來實現。這常常會導致類泛濫成災,在這種情況下,約束應當在類的行為中實現,通常是在構造函數中實現,但不是必須如此。
(31)在類的構造函數中實現語義約束時,把約束測試放在構造函數領域所允許的盡量深的包含層次中。
(32)約束所依賴的語義信息如果經常改變,那么最好放在一個集中式的第3方對象中。
(33)約束所依賴的語義信息如果很少改變,那么最好分布在約束所涉及的各個類中。
(34)類必須知道它包含什么,但是不能知道誰包含它。
(35)共享字面范圍(也就是被同一個類所包含)的對象相互之間不應當有使用關系。
(36)繼承只應被用來為特化層次結構建模。
(37)派生類必須知道基類,基類不應該知道關于它們的派生類的任何信息。
(38)基類中的所有數據都應當是私有的,不要使用保護數據。
類的設計者永遠都不應該把類的使用者不需要的東西放在公有接口中。
(39)在理論上,繼承層次體系應當深一點,越深越好。
(40)在實踐中,繼承層次體系的深度不應當超出一個普通人的短期記憶能力。一個廣為接受的深度值是6。
(41)所有的抽象類都應當是基類。
(42)所有的基類都應當是抽象類。
(43)把數據、行為和/或接口的共性盡可能地放到繼承層次體系的高端。
(44)如果兩個或更多個類共享公共數據(但沒有公共行為),那么應當把公共數據放在一個類中,每個共享這個數據的類都包含這個類。
(45)如果兩個或更多個類有共同的數據和行為(就是方法),那么這些類的每一個都應當從一個表示了這些數據和方法的公共基類繼承。
(46)如果兩個或更多個類共享公共接口(指的是消息,而不是方法),那么只有他們需要被多態地使用時,他們才應當從一個公共基類繼承。
(47)對對象類型的顯示的分情況分析一般是錯誤的。在大多數這樣的情況下,設計者應當使用多態。
(48)對屬性值的顯示的分情況分析常常是錯誤的。類應當解耦合成一個繼承層次結構,每個屬性值都被變換成一個派生類。
(49)不要通過繼承關系來為類的動態語義建模。試圖用靜態語義關系來為動態語義建模會導致在運行時切換類型。
(50)不要把類的對象變成派生類。對任何只有一個實例的派生類都要多加小心。
(51)如果你覺得需要在運行時刻創建新的類,那么退后一步以認清你要創建的是對象。現在,把這些對象概括成一個類。
(52)在派生類中用空方法(也就是什么也不做的方法)來覆寫基類中的方法應當是非法的。
(53)不要把可選包含同對繼承的需要相混淆。把可選包含建模成繼承會帶來泛濫成災的類。
(54)在創建繼承層次時,試著創建可復用的框架,而不是可復用的組件。
(55)如果你在設計中使用了多重繼承,先假設你犯了錯誤。如果沒犯錯誤,你需要設法證明。
(56)只要在面向對象設計中用到了繼承,問自己兩個問題:(1)派生類是否是它繼承的那個東西的一個特殊類型?(2)基類是不是派生類的一部分?
(57)如果你在一個面向對象設計中發現多重繼承關系,確保沒有哪個基類實際上是另一個基類的派生類。
(58)在面向對象設計中如果你需要在包含關系和關聯關系間作出選擇,請選擇包含關系。
(59)不要把全局數據或全局函數用于類的對象的薄記工作。應當使用類變量或類方法。
(60)面向對象設計者不應當讓物理設計準則來破壞他們的邏輯設計。但是,在對邏輯設計作出決策的過程中我們經常用到物理設計準則。
(61)不要繞開公共接口去修改對象的狀態。