首頁>Club>
7
回覆列表
  • 1 # 比特幣交易員

    你好:

    開放原始碼軟體(open-source)是一個新名詞,它被定義為描述其原始碼可以被公眾使用的軟體,並且此軟體的使用,修改和分發也不受許可證的限制。開放原始碼軟體通常是有copyright的,它的許可證可能包含這樣一些限制: 蓄意的保護它的開放原始碼狀態,著者身份的公告,或者開發的控制。“開放原始碼”正在被公眾利益軟體組織註冊為認證標記,這也是創立正式的開放原始碼定義的一種手段。

    收費軟體是一種針對客戶定製來收費的軟體,按照雙方協議來進行收費。

    開源軟體比正常收費軟體體積小的具體原因如下:

    1、開源的軟體一般情況下只包含需求功能的基礎功能,一些高階功能未新增到裡面,所以顯得開軟體的體積較小;

    2、收費軟體一般情況下會存在在基礎的框架上新增一些客戶定製的功能,隨著功能越做越多,導致軟體越來越臃腫,導致收費軟體體積較大,例如最開始的Linux/Unix系統,都很小,經過開發商對這些系統進行封裝,新增一些上層功能之後,軟體的體積就變得越來越大,如現在的Android系統就是在Linux系統上層添加了許多功能,導致軟體體積變得越來越大;

    3、開源軟體一般都是經過一些自由開發者進行貢獻進行開發的,他們會對整個軟體進行最佳化,最佳化一些不需要或者冗餘的程式碼,總體的降低了程式碼量,但是提高了軟體的質量,因此降低了軟體的大小;

    4、開源軟體一般是純淨的,不會包含一些外接的連結之類的,像付費軟體,一般會包含一些其他的外接介面,如廣告之類的。

  • 2 # 犍為真人

    開源軟體多數都是免費的,而收費軟體通常又是不開源的。現在是市場經濟,一般說來,價格高就肯定有它高的價值,要麼是質量好,使用價值大,要麼就是產品稀缺,供不應求。

    那麼為什麼很多知名開源軟體質量很好,卻免費供應呢?這是因為開源軟體作者免費貢獻後,希望全世界的高手也同時免費幫助他一起完善程式碼,讓軟體變得更好。從這個角度來看,他並不吃虧。

    現在問題來了,要讓更多的不認識的人一起完善開原始碼,那前提是軟體必須好用。光好用還不夠,還有更重要的一點:通用性強!就是說要針對通用領域,且符合大多數人的胃口,不要帶太多個性化的東西。

    所以,我們見到的多數知名開源軟體的使用者介面(UI)都是非常簡潔的。軟體工程中最棘手的需求問題,在這裡根本不是事。開源軟體的需求往往都非常清晰簡單。否則,通用性得不到保障,開源出來意義就不大。

    還有一個現象,絕大多數開源軟體的介面也都是很樸素的,甚至乾脆就沒有介面(用命令列)。原因類似,介面是個性化的東西,每個人審美都不一樣,有些軟體公司還要請專業美工來搞。

    開源軟體作者開源的初衷,是讓更多不認識的人幫他完善程式碼。所以他總是假定使用者具有足夠高的軟體程式設計水平。這就導致了使用者使用起來不太友好,操作繁瑣,缺乏傻瓜化的“一鍵操作”。意思很簡單:

    你要是不會用,那就別用,反正我也是免費給你的,沒有形成購買合同。你要是真不會用,你這水平,我也指望不了你可以幫我一起完善這個開源軟體。

    用一句話概括就是:免費的開源軟體,你愛用不用。

    收費軟體就不一樣了,如果收費軟體不極力討好使用者,使用者就不會再來購買。收費軟體,顧客就是上帝。顧客通常都是沒有計算機專業背景的普通使用者。

    針對普通使用者,使用者介面(UI)是極端重要的,就如同一個女子的臉蛋和身材一樣重要。而在UI上的程式碼量通常很大。因為多數時候,都可以用工具(或複製貼上)自動生成冗長的UI程式碼。更重要的是,UI往往都帶大量的圖片,甚至音訊、影片。

    收費軟體往往不再針對通用領域,而是帶有大量的業務邏輯,大量的增刪改查。程式碼量也會大幅增長。

    收費軟體為了迎合使用者,會整合一大堆工具或外掛,方便使用者使用。開源軟體的理念則是,你也可以用(第三方)工具和外掛,但請自己去尋找或整合進去。為什麼開源不去代勞,前面說過了,不通用(每個人想用的工具、外掛不盡相同)。收費軟體收費,其中一個原因就是,開發、整合整合這些東西是很苦逼的事情,花費大量人力。

    收費軟體之所以貴,一是因為可能針對個性化特定應用,二是可能操作簡單,介面友好,傻瓜化操作,節省了使用者的學習成本(時間就是金錢,使用者用錢來買簡單易用)。最簡單的例子,為什麼Windows收費,Linux免費?原因其中之一,因為前者簡單易學。傻瓜化操作的代價,就是體積大,臃腫。

    總結一下,通常情況下,收費軟體有漂亮的使用者介面,其中包含體積很大的圖片、音訊影片;收費軟體自帶個性化的業務邏輯,程式碼量較多;收費軟體整合大量工具和外掛。這些,都使得收費軟體體積變大。

  • 3 # 頹廢131760435

    開源一般是為了兼顧通用性,所以很多定義擴充套件需要使用者自己定義,小巧更容易吸引開發者使用,如果太過臃腫,使用者體驗就會下降,開發者就會捨棄。

  • 4 # eexpss

    開源的軟體,注重實現功能。通常還有unix風格,就是專門做好一件事情。

    商業軟體,注重收費和保護,包括絞盡腦汁來壟斷,半數程式碼用來做這些方面了。

    btw bs下某公司連jpg庫都要自帶的破軟體。

  • 5 # 給你講講IT歷史

    沒發現。如果特指差不多功能的軟體比較,比如photoshop和gimp,那麼主要是因為功能差異,photoshop等商業軟體有更多資源開發功能更強大的功能,所以也就造成軟體體積更大。

  • 6 # 井151276607

    軟體不僅包含程式程式碼,還有許多資原始檔。程式可以開源、免費,許多資源卻無法免費。比如,一種特殊的字型。對於我們中文這樣的象形文字,字型開發是個繁重的體力活。大量的附加資源,是軟體發揮作用的保證。開源、免費軟體開發者,沒有能力獲得非免費的資源,軟體安裝包也會因此減肥吧?

  • 中秋節和大豐收的關聯?
  • c語言怎麼引用excel的資料?