軟體與哲學——為什麼會有這個系列
第一次聽說,軟體設計中,應該利用哲學的思想,實在工作第三年的時候。
當時是一個技術上的領導,找我談話,討論軟體的問題。 就提醒我說,咱們公司的軟體設計專家,在設計軟體的時候,都會使用哲學思想。 當時的我,對這種說法,是相當鄙視的。
因為我覺得,軟體就是軟體,哲學就是哲學,不能為了炫耀自己的水平,就強說自己設計的軟體和哲學有關係。
其實再此前的一段期間裡,自己的信仰,也幾乎面臨崩塌,於是就開始閱讀西方哲學史,希望能從中找到解脫,當時並沒有看到哲學能與軟體有什麼關係。
再後來,辭職了,找了一個很輕鬆的工作。每天下班的時候,都會在思考軟體設計的問題,同時也在思考信仰與哲學的問題。然後,也不知道從哪一天開始,忽然有些能理解哲學背後的思想了,理解了哲學是如何解釋這個世界的。從此在反思自己的程式設計,明白了,原來在不知不覺中,我們都在使用各種各樣的思想來進行程式的設計。
於是,這個系列的雛形就出來了,希望寫一些文章,來整理軟體設計中所使用到的哲學思想,好方便自己對自己的程式設計進行把控,也方便身邊的人,能夠快速的理解,軟體的設計思想。
後續的文章,都是基於個人的經驗和領悟所寫,能免會有錯誤和偏差,希望看到這篇文章的人,也能多多地提出寶貴意見。共同促進軟體設計水平的進步。
相關推薦
軟體與哲學——為什麼會有這個系列
第一次聽說,軟體設計中,應該利用哲學的思想,實在工作第三年的時候。 當時是一個技術上的領導,找我談話,討論軟體的問題。 就提醒我說,咱們公司的軟體設計專家,在設計軟體的時候,都會使用哲學思想。 當時的我,對這種說法,是相當鄙視的。 因為我覺得,軟體就是軟
(視訊)《快速建立網站》 4.1 為啥造軟體不同於造汽車,為啥是軟體就一定會有Bug - 構建開發運維一體化(DevOps)
本文是《快速建立網站》系列的第9篇,如果你還沒有看過之前的內容,建議你點選以下目錄中的章節先閱讀其他內容再回到本文。訪問本系列目錄,請點選:http://anb.io/blog/tag/wordpress-on-azure/ 經過前三部分的內容(視訊),我相信大家對如何使用雲端計算平臺和WordPress
使用springmvc 接收上傳圖片,在 手機 ios 上,有圖片上傳就不報錯, 沒有就報下面這個錯誤,然後在pc端跟安卓手機上就不會有這個錯誤,這是為什麼呢?
七月 18, 2018 4:04:22 下午 org.apache.catalina.core.StandardWrapperValve invoke 嚴重: Servlet.service() for servlet [springMVC] in context with
Azure Stack技術深入淺出系列1:Azure Stack與Azure的有QoS保證的網絡聯通實現方法和對比測試
azure stack 雲計算 微軟 azure源自Azure的Azure stack作為一款業界唯一的和領先的公有雲平臺一致的混合雲平臺,能夠幫助企業客戶從自有數據中心交付Azure雲服務。它作為微軟混合雲戰略中的重頭戲,官方宣稱其將在今年年中GA了。上海儀電集團高度重視這一產品,同時成立了一個專門的團隊來
LWIP network interface 網卡 初始化 以 STM32 為例子 後面會有 用 2G 或者4G 模塊 用 PPP撥號的 形式 虛擬出網卡 所以先以 這個為 前提
lan 函數 網卡 描述 ane details 我們 err img LWIP network interface 網卡 初始化 以 STM32 為例子 後面會有 用 2G 或者4G 模塊 用 PPP撥號的 形式 虛擬出網卡 所以先以 這個為
SetProcessWorkingSetSize() 方法使內存降低了很多(把內存放到交換區,其實會降低性能)——打開後長時間不使用軟件,會有很長時間的加載過程,原來是這個!
相關 opera UNC 情況下 縮小 ole careful however guarantee 在項目中對程序性能優化時,發現用SetProcessWorkingSetSize() 方法使內存降低了很多,於是查閱了相關的資料如下: 我的程序為什麽能夠將占用的內存
墨菲定律:當你覺得一個地方可能有bug,那麼這個地方就會有bug----順帶了解下Tomcat那少有人注意的localhost.log tomcat日誌 之 catalina.log & localhost.log
一、問題概述 題目有點長,但應該值得後端java們瞭解下有點小坑的localhost.log,讓我長話短說。 博主是搞java後端的。後臺是很簡單的spring mvc + spring框架。 今天測試一個Controller層的介面,但是斷點一直進不來。 我做的改動也不大,新增了mqMsgFacto
墨菲定律:當你覺得一個地方可能有bug,那麽這個地方就會有bug----順帶了解下Tomcat那少有人註意的localhost.log
col 紅色 exceptio str host .cn trac 線程同步 html 一、問題概述 題目有點長,但應該值得後端java們了解下有點小坑的localhost.log,讓我長話短說。 博主是搞java後端的。後臺是很簡單的spring mvc + spri
為什麼預估執行計劃與真實執行計劃會有差異?
雲和恩墨北區技術project師 專注於 SQL 稽核和優化相關工作。以前服務的客戶涉及金融保險、電信運營商、政府、生產製造等行業。 郭成日 本文由恩墨大講堂154期線上分享整理而成。 一 問題
網際網路數字營銷時代,搜尋引擎與社交網路哪種廣告會有效果呢?
新媒體時代,使用者的注意力越來越分散,流量越來越貴,就算花錢也收不到好的效果。這點,相信很多企業家都感同身受。那麼,數字營銷時代,搜尋引擎與社交網路哪種廣告會有效果呢? 價值攫取型的營銷戰略 價值攫取型就是想辦法爭取更多存量資源,比如買更好的廣告位、找頂級的代言人等。幾年前,大部分品牌把
有一個奇怪的國家,裡面的國民對於事情的態度永遠只有兩面。當兩個人遇到一起討論一個事情的時候——兩個持贊同觀點的人遇到一起後會對這個事情都繼續贊同;一個持贊同觀點的人遇到一個持不贊同觀點的人的時候
有一個奇怪的國家,裡面的國民對於事情的態度永遠只有兩面。當兩個人遇到一起討論一個事情的時候——兩個持贊同觀點的人遇到一起後會對這個事情都繼續贊同;一個持贊同觀點的人遇到一個持不贊同觀點的人的時候,兩人都會不再繼續贊同;兩個持不贊同觀點的人遇到一起討論後反而會對這個事情開始贊同。 輸入
什麼是軟體危機?它有哪些典型表現?為什麼會出現軟體危機?
軟體危機是指是指計算機軟體開發和維護過程中所遇到的一系列嚴重問題。 典型表現有: (1)對軟體開發成本和進度的估計常常很不準確 (2)軟體產品的質量往往靠不住 (3)使用者對已完成的軟體系統不滿意的現象經常發生 (4)軟體常常是不可維護的 (5)軟體中沒有適當的文件資料
java裡的i++與i=i++會有怎樣的結果?JVM做了什麼?
先來看下這段程式碼: public static void main(String[] args) { int count = 0; for (int i = 0; i < 10; i++) { count=count++
svn中 更新,提交,與資源庫同步分別會有什麼效果
只有提交會導致伺服器上發生變化 更新操作只是把伺服器上最新版本下載到客戶端,規則如下: 1、如果你本地的某個檔案沒有修改過,而伺服器上的這個檔案別人已經提交過新版本,那麼會用伺服器上最新的檔案覆蓋你本地的檔案; 2、如果你本地的某個檔案你修改過了還沒有提交,伺服器端的這個檔案
墨菲定律:當你覺得一個地方可能有bug,那麼這個地方就會有bug----順帶了解下Tomcat那少有人注意的localhost.log
一、問題概述 題目有點長,但應該值得後端java們瞭解下有點小坑的localhost.log,讓我長話短說。 博主是搞java後端的。後臺是很簡單的spring mvc + spring框架。 今天測試一個Controller層的介面,但是斷點一直進不來。 我做的改動也不大,新增了mqMsgFacto
啟動虛擬機器會有錯誤報告:二進位制轉換與此平臺上的長模式不相容。此虛擬環境中的長模式將被禁用,因此需要使用長模式的應用程式將無法正常執行
1.先安裝VMware2.常建立虛擬機器3.啟動虛擬機器,啟動會有:二進位制轉換與此平臺上的長模式不相容。此虛擬環境中的長模式將被禁用,因此需要使用長模式的應用程式將無法正常執行 解決辦法:需要開啟BIOS系統把 Intel Virtual Technology 改為e
軟體測試人員必備網路知識(二):什麼是Session?Cookie與Session之間有哪些區別?
什麼是Session?Session什麼時候產生? Session:在計算機中,尤其是在網路應用中,稱為“會話控制”。Session 物件儲存特定使用者會話所需的屬性及配置資訊。這樣,當用戶在應用程式的 Web 頁之間跳轉時,儲存在 Session 物件中的變數將不會
NSString為什麼要用copy關鍵字,如果用strong會有什麼問題 OC中的深拷貝與淺拷貝
首先說一下深拷貝和淺拷貝,深拷貝是記憶體拷貝,淺拷貝是指標拷貝 寫程式碼的時候有兩個copy方法 - (id)copy; - (id)mutableCopy; copy出的物件為不可變型別 mutableCopy出的物件為可變型別 NSString N
SQL 輸出某一天所在的年月對應的所有星期的開始與結束日期(每個月僅算4周,第四周可能會有10天)
背景:有時侯導報表需要動態計算每個月對應每週的第一天與最後一天。最後一週的時間要求不需要僅精確到第7天,可以算10天。 USE [***] GO /****** Object: StoredProcedure [dbo].[sp_CalcStartDateEndDate
軟體開發中,做產品與做專案有什麼區別?
對於個體程式設計師對於產品與專案的選擇性問題 在IT行業,產品和專案一直是程式設計師們討論的熱話題。下面是我看到的一篇文章,我覺得寫的比較不錯。和大家來共享一下。 我始終不能避免的是程式設計師的最終歸宿,人都有老的一天,也有很多人在討