讀《軟體隨想錄》

來源:互聯網
上載者:User

       大概去年的這個時候買下了這本書,最近花了一周左右的時間來讀。

       首先想說的是:這確實是一本很不錯的書,不論是對於學生,還是開發人員,抑或是創業者,看完之後都會有一些啟發。

        書的內容就是整理了Joel(一位卓越的程式員,沒錯和我們乾的是同一件事)的一些部落格或者演講,裡面談到了對cs課程的學習,怎樣去賺錢,代碼的規範,軟體發布定價......

裡面的觀點都很不錯.

       帶一句,阮一峰翻譯得也很不錯。

        下面是一些摘抄的內容。

之所以選擇程式,是因為他們寧願將自己的事件花在一個公平有序的地方,一個嚴格的能者上庸者下的地方,一個只要你是對的就能贏得任何爭議的地方。

        

 你之所有有好運氣,那是因為你寸土必爭。

當你改正一個又一個小細節後,當你磨光,定型,擦亮,修飾你的產品的每一個小邊角後,就會有神奇的事情發生。厘米變成分米,分米變成米.米變成千米,你最後拿出來的是件真正優秀的產品,他的第一眼就讓人覺得震撼,出類拔萃,工作起來完全符合直覺。

程式員受到一種願望的驅使,渴望方方面面都照顧到。讓每個人都感到滿意,但是,更多的選擇,並不會讓使用者感到幸福。

如果一個軟體部署社會化介面時,不考慮文化人類學,那麼這個軟體就很難使用,令使用者惱火,不會發揮作用。

公用的悲劇(The tragedy of the commons):每個當事人都知道資源將由於過度使用而枯竭,但每個人對組織事態的繼續惡化都感到無能為力,而且都抱著“及時撈一把“的心態加劇事態的惡化。

避開攻擊最好的方法之一是讓他看上去好像獲得了成功。

良好的社會化介面設計會為我們創造更多的價值。

軟體實現上的小細節會導致線上社區發展,運作,使用者體驗上的大差異。

魯棒性原則:對於己方的行為要保守,對於他方的行為要寬容。

優秀的設計似乎是最容易複製的東西,但做起來卻又不是那麼容易。

每當你新解決了一件麻煩事,你的業務和市場都會有巨大的增長。優秀的推廣,優秀的設計,優秀的推銷人員,優秀的服務,再加上你為客戶解決了許多“麻煩事”,這些因素加在一起會創造出一種相互放大的結果。

代碼規範:

最高境界:你精心構造代碼,發揮洞察力,將他們寫得清晰易懂,不容易出錯。

所有使用者輸入的字串都是不安全的,字串必須經過編碼才能輸出。

制定代碼規範,最起碼會讓錯誤的代碼更容易被發現。

規範建議:

1.進狼將函數寫得簡短;

2.變數聲明的位置離使用的位置越近越好;

3.不要使用宏去創造自己的程式設計語言;

4.不要使用goto;

5.不要讓右括弧對應的左括弧距離超過一個顯示屏。

“應用型匈牙利命名法”仍然及其有價值,它加強了代碼之間的連接,使得代碼更容易閱讀,書寫,除錯和維護,最重要的是它讓錯誤的代碼容易現形。

如果推出新版本,其中包括新功能,我們就會看到公司出現迅猛的確鑿的,重大的,持久性的增長。

重構原則:

1.不添加任何新功能;

2.不論何時向源碼庫提交代碼。都保證程式能夠完美運行;

3.做的只是合乎邏輯的交換,且能夠立刻確定不會改變程式碼為。

客戶遇到問題。你幫他解決了,客戶實際上變得比沒有問題時還要滿意。

要是客戶打來電話,要把這當作一個千載難逢的機會,一個可以培養的死心塌地的忠實客戶的機會,如果你做的好,客戶逢人就會嘮叨你的服務多麼出色。

關於發布軟體

如果你的顧客人數較少,那麼你最好經常性地發布小幅修改的新版本。

如果你已經有了(或者將要有)大量付費使用者,那麼最好不要太頻繁地發布新版本。

對於有幾百萬使用者的軟體系統,最好偶爾才發布新產品。

確定優先順序

最好盡一切可能堅持製作面向整個市場銷售的上架軟體。

如果想把事情做完,無論何時,一定要想清楚什麼是眼下最重要的,必須馬上做好的事,如果不是這麼做,就不能以最快的速度取得進展。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.