没三目运算
没泛型,别说 interface}算泛型
没函数重载
没 template
要啥没啥
变量类型说静态不静态,说动态不动态
没有杀手级的框架,写个 web 服务都要难受死
我圆润的滚回 PHP 了
![]() | 1 glues 2017-11-22 14:02:30 +08:00 ![]() 基本都黑到点了 |
2 feiyuanqiu 2017-11-22 14:08:41 +08:00 via Android ![]() php 有这些? |
3 onlyhot 2017-11-22 14:09:32 +08:00 via iPhone @feiyuanqiu 哈哈 |
![]() | 4 hjc4869 2017-11-22 14:10:05 +08:00 via iPhone 看着都难受 |
![]() | 5 yoa1q7y 2017-11-22 14:10:31 +08:00 前排啤酒瓜子花生米 |
![]() | 6 cuebyte 2017-11-22 14:12:36 +08:00 黑到一些了,但 PHP 不比 go 好啊 |
![]() | 7 clino 2017-11-22 14:13:07 +08:00 "没 template" 虽然我没用过 go,不过真没 template? |
![]() | 8 takanasi 2017-11-22 14:13:17 +08:00 via Android ![]() 最臭名昭著的错误处理没说 |
![]() | 9 40huo 2017-11-22 14:15:21 +08:00 前排 |
![]() | 10 Bigglesworth 2017-11-22 14:17:23 +08:00 via Android 挤一挤,让我过去。 |
![]() | 11 dy7338 2017-11-22 14:19:12 +08:00 ![]() php 是全世界最好的语言 |
![]() | 12 isCyan 2017-11-22 14:19:31 +08:00 via Android 当然不能和 php 比,php 真是好用 golang 适合搞一些小工具之类的,或者 api |
![]() | 13 k9982874 OP |
![]() | 15 mkeith 2017-11-22 14:39:57 +08:00 最后 PHP 躺枪 |
![]() | 16 cuebyte 2017-11-22 14:40:09 +08:00 @k9982874 仁者仁,PHP 於我:真值判直吃屎;量要$符,反人; array 使用不一,有方括也有函建,而且 map 混用;置函一大堆,且命名缺乏性。 |
![]() | 17 nullen 2017-11-22 14:42:34 +08:00 ![]() 没喷到点子上,入手一门语言切勿把其他语言带给你的观念给代入进去。 |
![]() | 18 wph95 2017-11-22 14:49:40 +08:00 日常黑 golang [1/1] https://github.com/ksimka/go-is-not-good |
20 SuperMild 2017-11-22 14:56:59 +08:00 新语言肯定要和现有语言有很大区别才值得被创造和推广,Golang 最大的两个优点是语言特性少超快上手、和闪电般的编译速度,而这两大优点的代价之一就是暂时没有泛型。 什么叫做“说静态不静态,说动态不动态”,Golang 绝对是静态类型,连这点你都搞不清楚吗? 说框架和生态,不说语言的年龄不公平,Golang 的生态发展速度可以说是“惊人”的快。Go 1.0 是 2012 年发布的,同期的新语言,哪个的生态敢说比 Golang 好? |
21 Hellert 2017-11-22 14:57:58 +08:00 ![]() Go 语言的定位是系统语言,部分替代 C,要说友好性和 C 比才恰当。 总拿 Go 和 Php, Python 这样的动态语言比较,是几个意思啊 |
![]() | 22 TangMonk 2017-11-22 15:00:55 +08:00 我觉得挺好用的,我主要用来写底层的协议,没写 Web |
23 SuperMild 2017-11-22 15:02:06 +08:00 ![]() 语言特性本身要啥没啥,这是 Golang 的特点(说缺点可以,说优点也行),要啥有啥的语言又不是没有,C++就是,Golang 没必要重新发明 C++,不同的语言有不同的特点和适用场景。 |
![]() | 24 qleroooo 2017-11-22 15:10:15 +08:00 web 框架有 beego,虽然不怎么样,不过要用框架用 java 啊 |
![]() | 25 k9982874 OP |
![]() | 26 skadi 2017-11-22 15:16:29 +08:00 ![]() 我一个 cpp 的使用者跑去写 golang。那才叫一个难受呢。 不仅你提到的这些,还有语法以及好多黑膜法都用不了。 |
![]() | 27 2ME 2017-11-22 15:25:11 +08:00 16 楼函数和语言结构都没搞清楚 低端黑 |
28 boboliu 2017-11-22 15:28:08 +08:00 via Android ![]() rust 不服我跟你讲 |
![]() | 29 prolic 2017-11-22 15:38:00 +08:00 感觉随便写个语句就要开花括号,特别烦 |
![]() | 30 k9982874 OP |
31 daizongxyz 2017-11-22 15:52:29 +08:00 写了三四年 golang,突然来写 C++,各种不习惯,由简入翻好难适应。 |
![]() | 32 recall704 2017-11-22 16:02:52 +08:00 写了好几个月了,还行。 只是刚开始的时候老用 python 的思想写代码。 |
33 aksoft 2017-11-22 16:06:39 +08:00 开始确实难受,不过一门语言和另一门的功能都有了,还有另一门的特性 优点。。那另一门直接去吃屎了 |
![]() | 34 sensui7 2017-11-22 16:12:02 +08:00 还有一条, 包管理, 太敷衍了. 只能说比 include 头文件好用, |
35 MushishiXian 2017-11-22 16:29:42 +08:00 写起来是有点难受的...interface 用得不好的话各种蛋疼.. |
![]() | 36 timothyye 2017-11-22 16:46:03 +08:00 看明白了,原来是黑 PHP 的 |
![]() | 37 yuchenyang1994 2017-11-22 16:47:05 +08:00 ![]() 刚开始用 go 的时候,也感觉是这样,tmd,要啥没啥,各种好用的魔法根本就没有,if err!=nil 写的我手疼,不禁大骂,什么玩意儿啊.......真的是垃圾....直到。。。 我正在改写一个东西,拿到的库不能满足我的需求,然后我去看他的源码,黑魔法少,关键字少,看着流畅且不费力,分分钟把库改成我想要的东西。也许程序员并不需要那么多特性,人民不需要自由。。。 |
![]() | 38 looplj 2017-11-22 17:01:15 +08:00 是黑点,在工程中,这些都不是真正的痛点。 |
![]() | 39 albertofwb 2017-11-22 17:40:36 +08:00 via Android @TangMonk 正在学习中,感觉底层撸起来还是蛮舒服的 |
![]() | 40 albertofwb 2017-11-22 17:42:46 +08:00 via Android @yuchenyang1994 为解决问题而生……哈 |
![]() | 41 webjin1 2017-11-22 17:43:27 +08:00 用 D 语言吧。 |
![]() | 42 GG668v26Fd55CP5W 2017-11-22 17:55:29 +08:00 via iPhone 哈哈,才学了几天我也发现了,go 就是一门任性的语言,爱用用不用滚→_→ 我选择坚持. |
![]() | 43 est 2017-11-22 17:55:40 +08:00 就是带 gc 的 C 语言。 |
![]() | 44 jiangzhuo 2017-11-22 18:02:50 +08:00 Dart 欢迎你 |
![]() | 45 gouchaoer 2017-11-22 18:10:11 +08:00 via Android ![]() go 有 2 个优点,第一是协程带来的 io 高性能,第二是直接编译成二进制无依赖,就这两个就够了。。。至于写业务,php 可以很快很快 |
![]() | 46 iappled 2017-11-22 18:12:49 +08:00 但是简单,工程化啊 |
47 fuxiaohei 2017-11-22 18:30:17 +08:00 会用动态的感觉,肯定是滥用空接口,反而写的折腾。 |
![]() | 48 Tink PRO 主要是能编译二进制 |
![]() | 50 strahe 2017-11-22 18:49:11 +08:00 没觉得难受, 相反觉得写起来很舒服, |
51 guoziyan 2017-11-22 18:50:53 +08:00 滚回宇宙最好的语言吧 [手动 dog] |
![]() | 52 21 2017-11-22 20:38:01 +08:00 Golang 可以看做 C 语言的填坑加强版 |
53 wevsty 2017-11-22 21:09:02 +08:00 ![]() 看到列的这几条,我只想说,你确定你要的不是 cpp ? |
![]() | 54 littleshy 2017-11-22 22:24:39 +08:00 这也是让我一个写 C#的转了两次都放弃的原因。 后来一想,其实我并不需要呀,C#、Python 用着就很爽了啊。 ![]() |
![]() | 55 leitwolf 2017-11-22 22:25:08 +08:00 就喜欢它的特性少,每个人的写法都差不多。 还有就是直接生成二进制不用配置什么依赖环境。 |
56 missdeer 2017-11-22 23:01:13 +08:00 via Android 你需要的是 cpp |
![]() | 58 jowuIM 2017-11-22 23:21:56 +08:00 ....我也使用 go 来学习系列比较底层的协议的,说实话 web 开发我还是习惯用 Java,只有写 typescript 的时候很有写 go 的感觉 |
59 stabc 2017-11-22 23:24:19 +08:00 @yuchenyang1994 代码可读性也许跟程序员的关系更大呢? |
![]() | 60 asen1987 2017-11-22 23:35:34 +08:00 ![]() ![]() |
![]() | 61 abcbuzhiming 2017-11-22 23:50:15 +08:00 golang 非常适合写底层的小工具,写大玩意我个人觉得这东西和 node.js 一样,生态圈不够成熟 |
62 scnace 2017-11-22 23:56:08 +08:00 via Android PHP:这都能黑我? |
63 ddou 2017-11-22 23:56:30 +08:00 via iPhone 为什么要给自己过不去用 go 写 web 服务? java,c#,ruby,python,nodejs,随便挑个框架都能很 6 的写 web 服务。好钢还是要到刀刃上! |
64 scnace 2017-11-22 23:57:16 +08:00 via Android 还有人家叫 Go … |
![]() | 65 leyle 2017-11-23 00:40:17 +08:00 遇到那种直接在数据库里面写程序的,他们定义的结构,那叫圆环套圆环,套了一层又一层,按他们的结构给他们传数据时,才叫恶心。 |
![]() | 66 Technetiumer 2017-11-23 01:05:39 +08:00 via Android @scnace Go 有人了 於是 Google 的 Go 就 Golang |
![]() | 67 Sliverburger 2017-11-23 03:55:05 +08:00 不熟和难用不一样 Go 我用 200 行写出一个类似 ip.cn 的网站,PHP 需要多少?随便 Github 上看了个类似网站的文件,吓一跳 mmornati/myip/blob/master/index.php Go 的网站我可以直接 go run website.go 几乎什么都不需要,PHP 不要 Apache 或者 PHP-FPM 能行? 各有个的好处,Go 也不是说上来就让你做网站用的。 |
68 lrxiao 2017-11-23 06:21:12 +08:00 大括号不能换行(滑稽) |
69 lrxiao 2017-11-23 06:22:03 +08:00 不过你说的这些全是坑( 看看函数重载 /模板 C/C++标准写了多长? |
70 lrxiao 2017-11-23 06:24:46 +08:00 |
71 siteshen 2017-11-23 07:31:56 +08:00 说得很对,这些楼主想要的几乎都没有,(除了 go 明确是支持自动推导的静态类型)。 另外 template ( c++)和范型( java?-不很清楚这块),函数默认值( python )和函数重载( c++/java )都能解决同样的问题,有一个就可以了。(当然了 go 都没有……) |
![]() | 73 Clarencep 2017-11-23 09:00:34 +08:00 确实写起来没有世界上最好的语言 -- PHP 好。 但是,不得不说两句: “没泛型,别说 interface{}算泛型” -- PHP 好像也没有泛型呀,话说都是 duck type 的,要泛型干啥 “没函数重载” -- 哎,说得跟 PHP 有重载一样 “变量类型说静态不静态,说动态不动态” -- golang 明显是静态类型,只是类型推断系统很牛 x “没有杀手级的框架,写个 web 服务都要难受死” -- 不评价,反正我用内置的 http 感觉挺好,挺稳定的 |
![]() | 74 GreatHumorist 2017-11-23 09:04:01 +08:00 @Sliverburger 建议不清楚不要乱黑 |
![]() | 75 Yuansir 2017-11-23 09:08:06 +08:00 又黑 PHP |
![]() | 76 zjqzxc 2017-11-23 09:12:37 +08:00 |
![]() | 77 k9982874 OP @siteshen “变量类型说静态不静态,说动态不动态”这句话说的有问题。 应该要表达变量类型推导这么 NB,为啥没有静态语言的特性(泛型,多态) 然而也没有动态语言的语法糖。 @Clarencep 没错 PHP 和其它动态语言也没有这些东西,是在语言设计时已经规避了问题或者提供了其它方案。 @Sliverburger 我相信 GO 可以 200 行写一个 ip.cn ,甚至你说 200 行写个 facebook 我也信,这是框架或者库提供的便利与语言本身无关。 lumen 框架支持『 php -S localhost:8000 -t public 』启动一个 Server。同样这不是语言层提供的优势,只是看框架是否愿意支持而已。 |
78 jxl 2017-11-23 09:30:14 +08:00 go 去你的 爱用不用 |
![]() | 79 zjqzxc 2017-11-23 09:47:38 +08:00 |
![]() | 80 zyh94946 2017-11-23 09:51:14 +08:00 @Sliverburger 给你科普下 php [options] -S <addr>:<port> [-t docroot] Run with built-in web server. |
![]() | 81 lbp0200 2017-11-23 10:27:20 +08:00 泛型,暴露了楼主是 Java 程序员,坐山观虎斗,哼哼。 |
82 mooncakejs 2017-11-23 10:43:55 +08:00 go 需要一个 typescript 差不多的 typego |
83 6ufq0VLZn0DDkL80 2017-11-23 11:17:34 +08:00 泛型和模板简直是说烂了的问题了,Go 没有的原因是会拖累编译速度,而编译速度快是 Go 语言诞生的目的之一。等 Go team 找到了合适的解决方案就会加,不过至少要等到 Go 2 了。不过,在有接口的情况下,究竟有多少场景真的需要泛型和模板? 函数重载和三目运算这些更是可要可不要的东西,而且会给不够熟悉的代码的阅读者造成混淆,代码不是越短越优雅的,为什么不写得清楚一点呢? |
84 hmli 2017-11-23 11:18:17 +08:00 求你别黑 PHP 了 |
![]() | 85 zhangtao 2017-11-23 11:29:40 +08:00 我只想说,go 能解决 php 没法解决的问题,这就够了 |
86 pqee 2017-11-23 11:54:24 +08:00 几年前我写 go 的时候什么都能忍,错误处理不能忍。 |
![]() | 87 50vip 2017-11-23 13:10:04 +08:00 需要和 js 一样,产生一个 typego |
![]() | 88 joye1230 2017-11-23 13:43:11 +08:00 php 程序员莫名遭黑啊 我接盘过 php 的 workerman 项目觉得,后面换了 golang 的 leaf 场景不适合->写的不爽->开喷 手动滑稽 |
![]() | 89 cloud107202 2017-11-23 13:50:44 +08:00 楼主说的没错啊,难用还不让人说了?只拿出反正我自己写 xxx 时候 blahblah 没什么意义。 还有关于社区所谓的 我们目标是编译快 -> 泛型很影响编译速度 -> 我们舍弃了泛型 |
![]() | 90 cloud107202 2017-11-23 13:51:07 +08:00 不是所谓的舍本逐末么 |
![]() | 91 solee 2017-11-23 14:48:57 +08:00 终于有兄弟吐槽了啊~ 一个包管理就搞到我吐血了,ORM 也不是很完善。 本来无事想学学 go 做个小项目,结果发现处处都是泪啊。 只能说仁者见仁吧,我还是喜欢我的 node,pm2, npm, sequelize |
![]() | 92 solee 2017-11-23 14:51:08 +08:00 语言有语言的特性,但是使用便利度,我到现在位置没有感受到~ |
93 Richardweii 2017-11-23 14:58:12 +08:00 用不用 go 都在这里 |
94 SuperMild 2017-11-23 15:07:19 +08:00 @solee 从动态语言转到静态语言、从生态丰富的旧语言转到刚开始发展的新语言,写小项目,使用便利度不高是很正常的。你试试别的与 Go 一样年轻的静态语言,就能体会了。 |
![]() | 95 zjyl1994 2017-11-23 15:10:49 +08:00 只有我用 Go 给 ARM 设备写软件么? hhhh |
![]() | 96 solee 2017-11-23 15:15:32 +08:00 @SuperMild 主要是没有领路的,选什么包管理,进程管理有什么可用的 module,ORM 哪个比较好。感觉因为是上升期吧,都是百花齐放,感觉还没有形成比较突出的包。这就给我这种有兴趣的很大的困扰。 |
![]() | 97 a591826944 2017-11-23 15:16:35 +08:00 nil |
![]() | 99 k9982874 OP |
![]() | 100 loading 2017-11-23 16:57:12 +08:00 if err != nil { 上面这些字符,我是用过键盘的固件功能,一键输入的,可想而知多恶心。 |