作者: 3ldk 時間: 2017-2-10 16:04 標題: 除了Java, C#, Obj-C, 仲有邊隻language有異常優秀的IDE?
目前市場上, 有某幾隻language, 擁有特別好用, 強大的IDE
依D IDE在該language佔有龍頭地位, 傲視同群
基本上凡寫該language, 幾乎會覺得, 識揀, 一定係揀果隻IDE
例如
Java = IntelliJ IDEA (己包含Android=Android Studio)
C#/VB = Visual Studio
Obj-C/Swift = Xcode
當然, 絕大部份的language都無咁好彩, 有咁強大的IDE
其實, 除左依幾隻language, 究竟仲有無其他language都有同等地位的IDE, 當中尤其想問C++, 難道咁耐歷史, 就無出過一隻超強大的IDE?
作者: twaiho2003 時間: 2017-2-10 17:08
Jetbrain 好多language都優秀,不過得java同python免費
作者: Jackass_TMxCK 時間: 2017-2-10 19:27
正解,唔知問黎做乜
作者: efilm 時間: 2017-2-10 22:34
Xcode 我唔覺得好用
AppCode 好用啲,只不過佢係二奶命,一 update Xcode 就會令最新版 AppCode 用唔到,要等 AppCode 出返 update
作者: 3ldk 時間: 2017-2-11 17:14
其實唔係咁正解, Jetbrain真係得Java OK, 其他實在難以去到IDEA既程度
例如我用過的php, 同IDEA真係差好遠, 或者係我用得唔夠深入, 亦可能會有人話係language天生特性問題, 但就算係先天問題, 唔係果個級數就唔係果個級數, 不論是甚麼原因
作者: Jackass_TMxCK 時間: 2017-2-11 18:19
你講下有咩問題,我主打用PHPStorm無問題,係咪你唔識set
作者: hihihi123hk 時間: 2017-2-11 18:40
回覆 1# 3ldk
Swift in XCode = SUCK
Swift in Xcode 炒到喊(打錯 '{' '}' 可以搞到成版白版無哂 syntax highlight)、無 Refactor、不斷 Crash。
XCode 本身可以 Customize 嘅 Syntax highlight 太少、 字體連行距都無得隔(要用字型去 WorkArround), 佢啲 Tab 完全唔 friendly
如果有人話 XCode 好用,我諗九成九因為佢未用過 Jetbrain 嘅 IDE
Swift in AppCode , 仲算 Stable 起碼唔會炒但仲有好大改善空間,有啲 Syntax 仲未 Parse 得好好
作者: hihihi123hk 時間: 2017-2-11 18:45
認得唔好係因為你無打 Php Doc
PHP 本身就係 Weak type,本身已經無可能做到 Type-to-Type 嘅 indexing , 所以 PHPStorm 係大量運用咗 PHP Doc 去做 Parsing,
所以如果你用出名啲嘅 Library 有齊哂 Doc 會認得好好,但相反你用土炮 Framework 乜 Doc 都無,可以差到同 Text-editor 一樣
作者: reXxx 時間: 2017-2-13 20:49
回覆 3ldk
Swift in XCode = SUCK
Swift in Xcode 炒到喊(打錯 '{' '}' 可以搞到成版白版無 ...
hihihi123hk 發表於 2017-2-11 18:40
Swift 3 Xcode 8 sofar ok 啦,其實 xcode 設計方向同用法跟 Intellij 唔太一樣姐,customize 比較少,但我覺得都算幾好用呀,係 interface builder 大食左些少...
作者: hihihi123hk 時間: 2017-2-13 22:52
本帖最後由 hihihi123hk 於 2017-2-13 22:55 編輯
Swift 3 Xcode 8 sofar ok 啦,其實 xcode 設計方向同用法跟 Intellij 唔太一樣姐,customize 比較少, ...
reXxx 發表於 2017-2-13 20:49
唔知你有無寫 Functional ,或者用 RxSwift
複雜少少嘅 Closture 已經炒到喊,無錯係成隻 Xcode 炒,Swift 去到 3 個 Type inference 都做得未夠好
有時 Syntactically + Type correct , 但佢認唔到,係咁出 Compile error ,要人手加番啲 Type 先行到 Compile 到
而家長期都用 App Code
P.S. Xcode 8.2 iMac 5k 2014 i7 32GB RAM
via HKEPC Ionic Reader v1.6.0 - iPhone
作者: evec 時間: 2017-2-14 00:50
本帖最後由 evec 於 2017-2-14 00:53 編輯
啲個唔係Swift 或 Xcode 的問題,係Swift同Objective C 一齊成日撞。
單純Swift問題不大,要Call翻實際係Objective C 的Swift 一堆?!就易炒,不過蘋果有排都未改寫好。
而家當然用翻Objective C無咁笨用Swift (除非做好簡單野用來練功)
作者: hihihi123hk 時間: 2017-2-14 03:45
本帖最後由 hihihi123hk 於 2017-2-14 03:51 編輯
100% Swift Project (included all libraries)
同埋唔關 ObjC 事 ,基本上 Playground 都 Reproduce 到,有次得閒已經報埋上 bug.swift.org
總之 Xcode Syntax Parsing 真係做得好差 好唔穩定
Swift Compiler 又未做得好,三個月已經以黎試過只係錯 Syntax / 錯 Type 遇到 5,6次 Compiler 直接炒 Segmentation Fault ,唔係出 SyntaxError,Clean build 都無用絕對係 Compiler bug 黎。
最簡單例子你都可以試下,喺 Closeture 入面錯 Syntax 都唔能夠指出,佢都會話紅你 Closeture 出面嗰行話你錯 Type(完全唔關事),啲新人望住個 Error 企咗係度。
整體開發體驗遠遠差過同 Scala in Intellij / Kotlin in Android Studio 。
唉,明明隻 Language 設計得唔錯,但係啲配套真係仲未夠成熟;而家App Code 又有啲 Syntax 仲未識得 Parse,有時真係當 App Code 係 Text Editor 咁用,起碼夠穩定唔會阻住我,慢慢見証到由 App Code 3.x 到 2016 愈認愈多野係開心嘅。
至於 Xcode 就算X數啦,7, 8, 8.1,8.2 都係炒到癲,完全無期望。
遲下已經諗住錄自己用 Xcode 一日,再剪番啲炒嘅 Frust 位出黎做 Gif ,真係伏到不能以筆墨形容
via HKEPC Ionic Reader v1.6.0 - iPhone
作者: reXxx 時間: 2017-2-14 09:22
無用 Rx, 複雜少少有幾複雜先? 我又真係無咩點經常炒喎
間唔中 jump to definition 會錯晒就試過, Syntactically + Type correct 認唔到, 有冇 sample code 睇下呀
作者: shing1630 時間: 2017-2-14 09:24
你們的資訊很有用
作者: KinChungE 時間: 2017-2-14 10:17
100% Swift Project (included all libraries)
同埋唔關 ObjC 事 ,基本上 Playground 都 Reprod ...
hihihi123hk 發表於 2017-2-14 03:45
最搞笑既係, 有時明明自己fix左error, 佢仲指住滿缸紅, 搵黎搵去都唔知咩事
跟住build一次, 自動fix哂, 原來只係IDE未refresh
未用過IDE蠢到咁
作者: hihihi123hk 時間: 2017-2-14 11:49
本帖最後由 hihihi123hk 於 2017-2-14 12:05 編輯
Type Inference 唔掂
[attach]1960099[/attach]
要人手加返個 Type
[attach]1960098[/attach]
RxSwift 大量運用 Generic , 加埋 Functional Style Code 大量運用 Tuple
成件事
Swift 有好大進步空間,正常黎講同一段 Functional Code 無論係咩 language 都係 「Syntactically + Type Correct」 ,但係 Swift Compile 就因為 Type Infer 唔到而出 Error
Kotin in Android Studio 完全無問題
[attach]1960100[/attach]
作者: hihihi123hk 時間: 2017-2-14 11:55
回覆 15# KinChungE
YES , 加咗新 function / properties , 佢唔識自動 Index, 要人手 Build 去 Trigger / 等到 2046
AutoComplete 唔到唔緊要,你唔好亂咁 紅 X 我先啦
我已經同所有 Junior 講,「唔好信 Xcode 啲 Error message,唔好等 Xcode Index」 直接禁制用 ⌘B , ⌘B 出 Error 先好理
作者: reXxx 時間: 2017-2-14 16:20
本帖最後由 reXxx 於 2017-2-14 16:50 編輯
Type Inference 唔掂
要人手加返個 Type
RxSwift 大量運用 Generic , 加埋 Functional Style Code ...
hihihi123hk 發表於 2017-2-14 11:49
蟲蟲吧,你試下
https://developer.apple.com/bug-reporting/
作者: reXxx 時間: 2017-2-14 16:21
真係衰得過 Eclipse + Ant build ?

作者: KinChungE 時間: 2017-2-14 16:28
eclipse我又好少話見到一大堆紅色error而實際冇事喎
作者: reXxx 時間: 2017-2-14 16:46
早兩年重用 Eclipse 時,同同事講得最多係「Clean 左再試啦」「熄左再開過就無事啦」
作者: KinChungE 時間: 2017-2-14 16:57
呢個真
有時code改左, 佢唔肯recompile
要clean左先得
作者: evec 時間: 2017-2-14 22:09
本帖最後由 evec 於 2017-2-14 22:11 編輯
100% Swift Project (included all libraries)
同埋唔關 ObjC 事 ,基本上 Playground 都 Reprod ...
hihihi123hk 發表於 2017-2-14 03:45
你用真Mac機做?加Ram SSD係原裝 ? 基本上Swift係易炒但根本無你講到咁易,至少playground, command line tool 係唔炒,仲有100%Swift Project唔代表你用到堆Framework係Swift,而家根本低層都未原生Swift,全部Cocoa Swift 都係有Obj C成份。
作者: hihihi123hk 時間: 2017-2-15 00:56
本帖最後由 hihihi123hk 於 2017-2-15 01:19 編輯
如果純用 if then else switch guard let for loop struct extension 呢啲咁基本嘅野當然好難炒啦,佢地啲 Test case 擋得到呀嘛。
但係都係嗰句,寫 Rx 同埋 Functional 啲 Type 非常多層,極多 Generic ,所有野 Syntax 同埋 Type 都係岩(Swift cli Compiler 完全無問題),但係 Xcode 自己炒 Internal error 然後無哂 syntax highlight, 甚至成個 quit。所以我用 AppCode無問題一樣出到 Build,係 Xcode 本身自己認唔到炒到癲,App code 起碼仲唔會炒有啲顏色。
舉個例,大量極複雜嘅 Type 不斷 Transform 去不同嘅 Type,由最 Raw 開始 ,Observable<Either<Error, (User, Account)>>,淨係呢度已經有三層 Generic Type
最後 Transform 做 Observable<User>
除咗大量 Transformation,仲有大量 Extension + Generic 做 Abstraction
extension Reactive where Base: UILabel {
var title: UIBindingObserver<Base, String> = {
//...
}
}
咁多 Type/Generic 係 Functional 嘅日常,傳統 Imperative 應該會少見好多咁複雜嘅 Type,Xcode 相對會無咁容易炒
重申 Native iMac 5K i7 4GHz 32GB RAM Fusion Drive
另外同事三部 iMac 5K i5 32GB RAM 256 SSD 一樣全炒,基本上每 30-40 分鐘就會炒到全白
由 Xcode 7 炒到 8.2
有時見 Xcode 無炒會用 Xcode 黎寫,不過一般用一陣佢就會炒,然後就會轉番用 AppCodevia HKEPC Ionic Reader v1.6.0 - iPhone
作者: hihihi123hk 時間: 2017-2-15 01:31
本帖最後由 hihihi123hk 於 2017-2-15 01:42 編輯
其實我一直強調係 2015/2016年 Xcode 絕對唔係一個「寫得好」嘅 IDE (for Swift)
自從加料事件之後, Xcode 8 仲要封哂所有 Plugin,以前有得加啲 Plugin 可以做到行數隔離有 git diff 睇得番呢個 commit 嘅改動,咁基本嘅野,Atom Intellij 基本上已經 Default 有,但係 Xcode 8 就依然
Xcode (for Obj-c) 就未用過,不過有咁多年歷史,正路應該穩定好多!
最感慨係 Swift 本身係一隻唔錯嘅 Language,但係未有一隻好嘅 IDE 將佢個光環加強。 期望 AppCode 2017 係 parse Syntax 方面可以完全取代 Xcode, 有啲 Syntax 太複雜暫時都係得 Xcode 做到 Auto-complete ( 未炒之前)
作者: evec 時間: 2017-2-15 02:49
如果純用 if then else switch guard let for loop struct extension 呢啲咁基本嘅野當然好難炒啦 ...
hihihi123hk 發表於 2017-2-15 00:56
8GB Macbook Pro 練功Swift寫過隻Game 係IOS同OSX行,寫成日都無見過炒,都係唔明點解炒到癲。
當然我寫野係唔多用Generic,能唔用Generic就唔好用,通常個Project要用太多Generic個結構差。
Xcode 炒,CLI唔炒,係咪你個Program有一堆Leak 或 stack 問題,因為用Xcode預設一堆Debug Monitoring 令到Xcode 會用太多Memory 導致不穩。
作者: KinChungE 時間: 2017-2-15 09:18
其實我一直強調係 2015/2016年 Xcode 絕對唔係一個「寫得好」嘅 IDE (for Swift) , 無 Refactor 無 f ...
hihihi123hk 發表於 2017-2-15 01:31
我期望AppCode免費多D
作者: hihihi123hk 時間: 2017-2-15 09:36
本帖最後由 hihihi123hk 於 2017-2-15 09:38 編輯
而家長期免費 30分鐘喇 唔會連開都開唔到
不斷重開可以無限用
via HKEPC Ionic Reader v1.6.0 - iPhone
作者: KinChungE 時間: 2017-2-15 09:38
呢層我都知, 玩過PHPStorm
可以不停重開
作者: hihihi123hk 時間: 2017-2-15 09:39
我有買 Full subscription
所有 Intellij Product 都用得
via HKEPC Ionic Reader v1.6.0 - iPhone
作者: hihihi123hk 時間: 2017-2-15 09:52
本帖最後由 hihihi123hk 於 2017-2-15 09:55 編輯
唔好扭曲 Generic ,Generic 唔係淨係用係 OO design ,只不過係你無其它方面用(Value Wrapper),唔代表用咗就係結構差。
Imperative coding 好少會用 Value Wrapper,當然好少用到 Generic。啲 Code 好難會寫到一個無 Standard Pattern或者寫到個萬能底層 ,好多時十個人可以有九種寫法。
Functional 大量寫法到都係用好接近嘅 Pattern 去處理(用一個 Type Wrap住啲 Data 再 Transform) ,十個人可能得一兩種寫法,咁樣先有優勢容易去睇同埋 Maintain
題內話:Optional 都係用 Generic + Enum 組成,由 .some(value) .none 構成,唔通又結構差
via HKEPC Ionic Reader v1.6.0 - iPhone

