※ 引述《Lordaeron (Terry)》之銘言: : → superpandal: free pascal也很久沒更了 囧 01/06 22:31 : 推 oopFoo: 穩定更新少正常。C++一直變,我都不敢說我懂C++,像c++23 01/07 09:32 : → oopFoo: 拿掉GC,我才知道C++有GC的spec。 01/07 09:33 : 現存活著的Pascal 有 : 1. Delphi : 換公司到embarcadero 後,活著!!但真的沒啥進步。 : IDE 爛字不夠形容,Compiler 就吃老本。 : VCL/FMX 沒進步。 : BCB 是更慘,庶出,能活著就不錯了。 : 2. FreePascal : 這Compiler 是真的很3.2.2 很久了沒錯,但還是有一直在更版。 : 而Compiler 的跨平台也沒話說,Write Once Compile Anywhere 有做到。 : IDE 好吧。Delphi7 的樣子,Delphi7 的程度。 : LCL 的跨平台沒話說。套LCL 的APPLICATION 跨Windows/Mac/Linux/BSD系列沒問題。 : 3. GNU Pascal : 這GPC....沒在用。 : 按說法,GCC support 的平台它都Support。也可以吃GNU 的toolchain。 講開FPC freepascal 和Delphi 了。 就講一下台灣比較沒人在提的LAZARUS 吧。用它來對應Delphi。 Lazarus 的GUI framework 叫LCL,對應到Delphi 的VCL和FMX。是的,一套對兩套。 LCL 直接跨平台了,不用像Delphi 哪樣,還有一個VCL 卡住。 Lazarus 的String 等於Delphi 的RawString。 Delphi 的String 是UTF-16,Lazarus 的元件是UTF-8,所以建議String 是UTF-8。 所以Lazarus 本身有做好的UTF-8的表,和相應的FUNCTION 來處理和UTF-8的事, 基本上是對照到Java 字串轉換該有的都有了。 Microsoft 的extend 的CP932,CP936,CP949,CP950 表我也做上去了。 Delphi 開發和DB 相關的,基本上LAZARUS 都有。 但DBase DBF,Paradox DB 這兩個基本上不要有任何的期待,特別是Big5。 其它的GUI 元件,則比VCL 的好。 另外LAZARUS 還有不少第三方的Component,可以從install/uninstall component 上 找到或從 https://wiki.freepascal.org/Projects_using_Lazarus_-_Components_and_Libraries 找到。 都沒有,可以上github 上找。 其它的如CRYPT,NETWORK,都有。 第三方的GUI component 是沒有Delphi 的做得漂亮的。 安裝方面,除了 https://www.lazarus-ide.org/ 外,我建議 https://github.com/LongDirtyAnimAlf/fpcupdeluxe/releases fpcupdeluxe 可以讓你客製化你的LAZARUS 包括cross compile,也只有這個才有 M1 MacOs 的Lazarus,M1 MacOs 原來的中文輸入的問題,我也修正和調整好了。 在LAZARUS 3.0 中整進去了。 其它的平台Windows, Linux, BSD 等也有相應的調整。 所以,請用LAZARUS 3.0,但FPC 依舊是3.2.2。 最後,提醒一下,LAZARUS 和Delphi 一樣,只有String 有GC。 其它的,請自行處理。同時,String 是thread unsafe 的。 -- ※ 發信站: 批踢踢實業坊(pttsite.org.tw), 來自: 36.226.165.206 (臺灣) ※ 文章網址: https://pttsite.org.tw/Soft_Job/M.1705232283.A.010
derecklin: 推 01/15 13:42
Lordaeron: 歡迎入坑啊.... 01/15 16:41