如何从PHP过渡到golang?
如何从PHP过渡到golang?
-----
网友解答:
-----
您好,您这个问题应该包含两个方面。一个是php程序员如何转成golang程序员,一个是php项目如何转换成golang项目。
对于php程序员来说,如果之前接触过c语言,或者阅读过php底层源码的话,那么学习golang会容易一些,golang继承了c语言的一些特性,同时又简化了它的使用。
golang首先它是编译型语言,这和php这种解释型语言有着本质的区别,之前很多在php中需要运行时才能检查出来的错误,现在在编译期都能查询出来。
php的关键字很少,语法也很简洁,但是它有些概念和使用方法需要深入理解,对于goroutine,对于channel,对于并发,你需要深入研究才能够初探它的皮毛,而要深入了解,你这需要源码一层去一窥全貌。
对于php项目过渡到golang项目,你会发现节省了大量服务器资源。
在golang这种常驻内存的语言中,是有线程池的概念的,如果你接触过swoole,你可能会理解一些,如果没接触过,也没有关系,你只需要知道在将php项目转换成golang项目的过程中,你不仅仅只是要注意代码的转换,思路的装换更重要。
在使用php的时候,我们并不需要过多考虑资源的回收利用问题,因为每一次请求都是独立的进程来完成的,两次请求之间并不会共享资源。而在golang中,我们就需要考虑线程并发问题,考虑锁的问题。
可以说golang是吸取了c,java,python的优点,然后集百家之长而创造出的一门编程语言,它本身有自己的缺点,但是它的优点毋庸置疑,它让编程变得更加简单,让代码运行效率变得更高效,让编写代码变得更加容易。
总结
无论学习任何一门编程语言,你都需要大量的实践才能掌握,很多技巧你只是学习语法是掌握不到的,你只要不断地从项目中吸取经验,多看一些项目,你才能一点点地进步。
golang相比于其它编程语言诞生的时间不算太长,没有过多的历史包袱,因此现在学习它是最好的时机,毕竟一门编写代码简单,运行效率又高的语言还是很有吸引力的。
-----
网友解答:
-----
其实 PHP 转 Go 并不困难,首先我们知道 Go 的基础语法是非常简洁的,只有 25 个关键字,直接看书就能上手。真正需要你花时间去转变的其实是编程的思维。由于 CGI 这一编程模式的特性,请求完成都会释放掉所有内存,每次处理请求都是重新分配的内存空间,导致我们写 PHP 的时候更多的侧重点是在如何写好业务逻辑上,很多东西是不需要考虑的,比如
GC连接池,对象池并发安全当你真正理解它们,并懂得如何使用它们写出高质量的代码,那么此时此刻,你才算真正完成从 PHP 过渡到 Go
-----
网友解答:
-----
身为一个使用golang的开发人员,我的技术路线是从java到python,中间也学过一些php,直到现在在用golang+vue写web应用,这样一路走过来的,但我感觉golang还是比较好学的。
1)易学,易上手,语法简单,没有那么多糖,语法比较好记,基本看一遍就懂了。
2)文档清晰,自带的库文档非常清晰,就算第一次使用直接看函数上面的文档就会用了,可以边写边学。
曾经觉得python就比较简单好学,但学过golang之后,发现golang更容易上手。
我一般学新语言的时候先看一下变量、条件、循环、函数、数组、对象等等这些基本的信息然后做一个简单的小程序,就可以上手了,比如我做的第一个golang程序就是爬虫。
这些完成之后再学一下框架,去github上找个带文章的例子,自己看一遍基本就会了。
总的来说golang的学习成本还是很低的,但要精通还是需要一定的时间去积累。
-----
网友解答:
-----
行动起来,就怕天天想,可是不行动。
-----
网友解答:
-----
我就是PHP,正在转golang,大概步骤我觉得是:
语法
数据结构
协程
反射
指针
最后实践出真知,自己虚拟些项目,从零实现一遍
------------------
推荐阅读:
老家有一个宅基地,已经在城市定居,一年也不回去几次,要不要卖掉?