看板 MAC 關於我們 聯絡資訊
※ 引述《iincho (世界的盡頭)》之銘言: : ※ 引述《Killercat (殺人貓™)》之銘言: : : 5. 強迫自己跟別人POSIX標準 : : 這個應該很多人有這種經驗,接手一組code想要重複利用結果發現編譯錯誤一堆 : : 仔細一看裡面居然充斥了一堆win32 api像是CreateThread(...) CSocket... : : 為什麼不乖乖用POSIX標準的__beginThreadEx跟SOCKET呢(怒吼) : 這個Linux底下可以做得更好。 理論上來講,Mac OS X 的 POSIX 相容會比 linux, freebsd 這類的 unix-like os 來得完整,我看不出有 linux 會做得更好的理由。 再者 linux 的 developer 常常會把 linux 當作 unix 的全世界, 結果寫出一堆 linux only 的東西,別的系統要用還要 patch 來 patch 去, 最有名的就是 bashism 的現象,明明 sh 就可以實作的東西,就是硬要 #!/bin/bash 啊這樣是比較潮嗎? -- Do you hear the people sing? Singing a song of Angry Birds. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.42.22
iincho:問題就在OSX目前還是小眾,很多東西都是Linux only... 04/07 12:26
iincho:這年頭連FreeBSD都有可能有些程式跑起來怪怪的... 04/07 12:27
iincho:這個不是技術問題,而是目前生態就是這樣,你跟我說沒用啊. 04/07 12:27
iincho:就像我前幾天要用Python的MySQLdb, 你可以去看一下網路上 04/07 12:28
iincho:有多少人在哀嚎OSX上面不能裝.. 04/07 12:28
pig:所以Killercat說在mac下面可以強迫自己跟標準,結果你卻說 04/07 12:28
pig:在linux下面可以做得更好? 更好生出一堆linux only的程式叫更 04/07 12:29
pig:好? 本來寫一堆windows only的程式變成寫出一堆linux only的 04/07 12:29
pig:程式,你跟我說這叫生態,我無法接受。 04/07 12:29
iincho:我就算用Windows寫我也可以寫出符合POSIX標準的code.... 04/07 12:30
iincho:這個和RD程度有關係,但是問題在於你沒有辦法控制別人... 04/07 12:30
pig:"強迫自己跟別人POSIX標準" 04/07 12:31
iincho:我說過那是RD程度的問題..... 04/07 12:31
pig:人家也沒說要限制別人啊 04/07 12:31
iincho:問題是你總有東西會碰到Linux only的,我不是說你用的lib 04/07 12:32
iincho:而是很多人家寫的tool就是Linux only... 04/07 12:32
pig:所以在linux下面可以做的更好是什麼情況? 04/07 12:33
pig:你一直講說就是會遇到linux only的和這個有什麼關係? 04/07 12:33
iincho:有些還限制某些distribution才能跑, 玩過gentoo也很慘烈 04/07 12:34
pig:所以說哪套linux才是linux? 04/07 12:34
iincho:工作沒必要替自己找麻煩,什麼場合用什麼東西就好... 04/07 12:34
pig:如果是看工作的話,那當然是看板子,看SDK挑平台啊,除非你是 04/07 12:36
pig:hacker想要挑戰。 04/07 12:36
pig:不過這邊又可以討論到開發機跟工作機的區分了,好像也沒那麼單 04/07 12:37
pig:存就是。 04/07 12:37
pig:只是這段原本Killercat是認為用mac可以強迫自己寫出標準的東西 04/07 12:39
pig:我覺得沒什麼不合理的就是,要考量別的因素那又是另外一回事了 04/07 12:40
iincho:如果你寫的東西跑在server上很多時候根本不會deploy到OSX.. 04/07 12:41
iincho:這時候你手上有個lib OSX偏偏跑布起來你用是不用..:p? 04/07 12:41
iincho:這就是開發環境和布署環境不同會出現的矛盾..... 04/07 12:42
iincho:所以我個人認為Macbook不寫iOS或是OSX程式基本上沒啥優勢 04/07 12:43
pig:so what? 這已經超過原題了吧 04/07 12:43
iincho:沒有,現在最大宗的非Windows開發基本上都是走Linux... 04/07 12:44
pig:你要也抓一個共通可用的東西來講,像是開發php ror 之類的 04/07 12:44
iincho:你只寫PHP/RoR可能感覺不出來,做比較底層的就...嗯... 04/07 12:45
pig:原題是 "強迫自己跟別人POSIX標準" 你要不要看清楚再回? 04/07 12:45
pig:做底層廢話,你寫linux driver當然需要linux 04/07 12:46
pig:不過我可以告訴你,其實我linux kernel module 幾乎都是在 04/07 12:46
iincho:不一定是driver,我寫App的時間恐怕還比較多... 04/07 12:46
pig:freebsd + kde 寫的,沒有為什麼,純粹就是爽,然後就用習慣了 04/07 12:47
iincho:所謂的強迫POSIX標準另一種解讀就是一堆Lib沒有啊.. 04/07 12:47
pig:那你一定養成沒事就從 proc 亂挖東西以為全世界都通的良好習慣 04/07 12:47
pig:"強迫自己跟別人POSIX標準" 跟 "有些lib沒有" 是兩回事 04/07 12:48
iincho:說真的啦對大部分的情況我不覺得這是優勢就是....XD 04/07 12:48
pig:他只說這是他喜歡用的原因啊 04/07 13:08
vanix:豬大的freeBSD+kde是用PC-BSD嗎,還是自己裝的 0.0? 04/07 17:09
pig:那台是自己裝的,不過 pc-bsd 我也有在用就是 04/07 20:13
jyuny1:所以我之前都是用 #!/bin/tcsh 支持 FreeBSD (誤) 04/07 22:03
ilay:我也曾經堅持freebsd...但跳去debian後就沒回去過了0rz 04/07 22:49
vanix:thanks! :D 04/07 23:28
pig:我現在的主力是freebsd 跟 archlinux 04/08 21:08
pig:debian 玩票性質的用 mint 來灌,輕鬆不費力 04/08 21:09