1 回答

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
一種語言有很多實(shí)現(xiàn)。你說的是sun公司的java,其他公司也有java的版本,比如ibm,還有g(shù)nu的Java。 語言本身是一種標(biāo)準(zhǔn),沒有開源不開源的說法,除非大家有種默認(rèn)的說法。例如如果沒有特指其他的java,java自然直sun公司的java。
開源指的是語言的實(shí)現(xiàn)是開源的。比如c,有turbo c,源代碼不公開的,就不是開源的。但是linux下默認(rèn)的gcc是更符合c/c++標(biāo)準(zhǔn)的一種實(shí)現(xiàn),同時(shí)也是開源的。而微軟的各種c/C++實(shí)現(xiàn)(visualc++)就不是開源的。
如果某種語言所有的實(shí)現(xiàn)都不是開源的,那它就不是開源的。例如C#過去可以認(rèn)為它不是開源的,因?yàn)閮H有的實(shí)現(xiàn)visual c#不開源。但c#是一種國際標(biāo)準(zhǔn),如果有能力誰都可以做出自己的實(shí)現(xiàn),像現(xiàn)在有了Mono project,它是一個(gè)開源的c#實(shí)現(xiàn),甚至可以在linux下用。
強(qiáng)調(diào)的是,不是說只要公開就是開源,實(shí)際上還有其他版權(quán)的一些條款,你必須符合某種開源的版權(quán)。還有不是說開源的你就可以隨便用了,有很多開源產(chǎn)品都有類似“強(qiáng)盜”的條款:粗略地說,只要你用了它的代碼,你的代碼也必須開源,否則就侵權(quán)了。如果做商用,必須仔細(xì)看你用的每一個(gè)開源庫的版權(quán)聲明,看是否要求你也開源。
- 1 回答
- 0 關(guān)注
- 738 瀏覽
添加回答
舉報(bào)