Re: [討論] 目前ios專案是用OBJ-C

看板MacDev作者 (←這人是超級笨蛋)時間11年前 (2014/06/16 12:27), 11年前編輯推噓4(4036)
留言40則, 9人參與, 最新討論串3/5 (看更多)
※ 引述《darktt (小朱)》之銘言: : ※ 引述《issuemylove (skill)》之銘言: : : 看到版上很多人討論 swift : : 但是目前我正在進行的專案是用 objective-c (obj-c) : : 已知swift 和 obj-c 可以互相使用 : : 主要是 obj-c 部分使用 swift 不知道會不會有問題 : : 使用上麻煩或者相容性上的bug : : 畢竟新版本我會怕怕的 : : 大家建議obj-c 加上swift互相使用嗎? : : 或改成全部 swift? 但我一想我應該會吐血... : : 但用 obj-c 刻完全部感覺好像要變成上時代的產物 囧 : : 謝謝大家的討論 : 首先混用這點,我是聽說可以, : 不過 Swift 是一個易學卻難讀的程式, : 但是 Objective-C 是難學卻易讀, : 這兩者相反,混用後的整體程式可讀性會變得很淒慘。 其實重點我覺得還是 coding convention 與架構切割 Swift 很 expressive, 所以寫的人需要自制, 多人協作時要協調 不然很容易就會變成 Perl 或發瘋的 Ruby (如果你知道我在講什麼) 然後如果某個部分是 Objective-C, 那邊就用 Objective-C, 反之亦然 儘量把兩邊溝通的部分做成 interface 才是正解 這對一般性的開發也通用, 只是跨語言更需要注意 : 另外我不認為 Swift 馬上成為一個流行, : 主要是 Objective-C 有著 C 的血統, : 所以它的部分功能是由 C 提供的, : 像是 GCD 與 math.h 等等, : 這是目前 Swift 所沒有的。 Swift 當然有 GCD, 你以為 Apple 工程師都製杖? 它和很多 C 標準庫的東西都有被 expose 成 Swift API 只是你要 import Foundation 而已 不過 Swift 不能馬上取代 Objective-C 倒是沒錯 至少向後相容就是個問題, 尤其台灣公司超愛支援超舊的 OS 版本 -_- 另一個比較麻煩的是與第三方函式庫整合 C 就算了, 要整合 C++ 還要先寫 wrapper 把 class 包起來 這部分 Objective-C (應該說 Objective-C++) 還是好太多 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.94.57 ※ 文章網址: http://www.ptt.cc/bbs/MacDev/M.1402892879.A.21B.html ※ 編輯: uranusjr (140.112.94.57), 06/16/2014 12:34:52

06/16 13:44, , 1F
所以說,C才是王道,ObjC/Swift/Java來來去去,不變的只有C
06/16 13:44, 1F

06/16 14:05, , 2F
C不適合寫MVC Obj-C算是一個不錯的妥協
06/16 14:05, 2F

06/16 14:06, , 3F
要作UI view model的話 C算力有未逮了
06/16 14:06, 3F

06/16 14:54, , 4F
做UI view model用C一樣是嚇嚇叫 GTK一樣用好好的~
06/16 14:54, 4F

06/16 14:55, , 5F
什麼MVC不過就是種概念 也不一定要是OO才語言能實現
06/16 14:55, 5F

06/16 15:01, , 6F
如果 GTK 真那麼好你以為發明 Vala 的人是吃飽太閒嗎XD
06/16 15:01, 6F

06/16 17:00, , 7F
語言不過是一開始,什麼語言都不重要.....
06/16 17:00, 7F

06/16 17:22, , 8F
鋸子很棒 可以鋸斷千年神木,不過拿來切豬肉就....
06/16 17:22, 8F

06/16 17:23, , 9F
「不是行不行,而是適不適合」. GTK正好是我最不願意
06/16 17:23, 9F

06/16 17:23, , 10F
拿來寫UI的framework之一(另外一個是MFC)
06/16 17:23, 10F

06/16 17:24, , 11F
當然我不否認也許有人拿電鋸切豬肉切的又好又順手就是
06/16 17:24, 11F

06/16 17:25, , 12F
不過對我來講,恩,換個順手點的語言會好一點
06/16 17:25, 12F

06/16 22:46, , 13F
今天用Java開發PDF engine, 明天又改成用ObjC寫, 後天又
06/16 22:46, 13F

06/16 22:47, , 14F
改成用Swift寫, 還不如專心用C寫出最穩定的一版, 再依不
06/16 22:47, 14F

06/16 22:50, , 15F
同的語言包層wrapper就好, 高階的語言很適合現代化的軟
06/16 22:50, 15F

06/16 22:52, , 16F
體架構,但做最佳化和debug也不見得輕鬆,反而最後要reuse
06/16 22:52, 16F

06/16 22:53, , 17F
現有的module時,高階語言要互通就很麻煩.
06/16 22:53, 17F

06/16 23:21, , 18F
er...這...要怎麼用C寫出iOS? (呆滯)
06/16 23:21, 18F

06/16 23:22, , 19F
C寫出android我是會啦 但是iOS...有點超出我常識範圍了
06/16 23:22, 19F

06/16 23:23, , 20F
老實講obj-c大概99.95%的用途都用是開發iOS/cocoa吧
06/16 23:23, 20F

06/16 23:43, , 21F
如果我那一段會讓你誤解成, 不論在那一種平台全部都用C
06/16 23:43, 21F

06/16 23:44, , 22F
做開發, 那直接跳過我那一段推文吧. :)
06/16 23:44, 22F

06/17 00:00, , 23F
我想說的是,如果一個語言不是那麼好維護卻還是很多人用
06/17 00:00, 23F

06/17 00:01, , 24F
比較大的原因一定是不可取代性。天底下不是什麼事情都
06/17 00:01, 24F

06/17 00:01, , 25F
能用C解決的(當然,我也是喜歡C/C++能解決的 我連pytho
06/17 00:01, 25F

06/17 00:01, , 26F
n都不太喜歡用)。我理解,不過時代真的再往前走呢
06/17 00:01, 26F

06/17 00:02, , 27F
swift也是 objc也是 其實我討厭透弱型別語言XD
06/17 00:02, 27F

06/17 00:02, , 28F
swift最大問題是沒有private member和function
06/17 00:02, 28F

06/17 00:02, , 29F
不過作者在官網說之後會加進去..
06/17 00:02, 29F

06/17 10:30, , 30F
台灣的公司真的超愛支援舊版本的啊 超贊同 待的兩家公
06/17 10:30, 30F

06/17 10:31, , 31F
司都會這樣 而且都要兼容到前兩版 之前6出來要4.3兼容
06/17 10:31, 31F

06/17 10:32, , 32F
現在8出來 要6兼容 都已經跟主管說了那些統計數據 以
06/17 10:32, 32F

06/17 10:33, , 33F
及那些完全不升級的 事實上也根本不會上app store
06/17 10:33, 33F

06/17 10:33, , 34F
但就是不把話當一回事
06/17 10:33, 34F

06/17 11:13, , 35F
放棄老舊版本 可以省很多事呢 CP值高很多
06/17 11:13, 35F

06/17 11:13, , 36F
那些主管真的腦袋有點死阿
06/17 11:13, 36F

06/17 11:15, , 37F
是省你的事又不是省他的事,他會鳥你才怪 XD
06/17 11:15, 37F

06/17 11:16, , 38F
他想的只有噢幹,不能兼容以前的版本,被客訴怎麼辦?
06/17 11:16, 38F

06/17 11:18, , 39F
上頭說東西做這麼爛怎麼辦? 當然是操死工程師才做省事~
06/17 11:18, 39F

06/28 12:47, , 40F
有那種主管也是公司的悲哀阿ㄏㄏ
06/28 12:47, 40F
文章代碼(AID): #1Jdd9F8R (MacDev)
文章代碼(AID): #1Jdd9F8R (MacDev)