erlang工作前新手学习指引路线

Erlang学习总结,新手指引

要详细的写erlang入门技术网上有很多,我写的肯定没有那些大牛写的好,自己也实习了快一个月,也做一个总结,给后erlang初学兴趣者提供些拙见吧

第一步搭建学习环境

还没进公司前,我搭建的是erlang17+ Eclipse + erlide 网上教程很多,不细说搭建流程

第二步基本语法知识

认真看erlang程序设计的前5章,新出第二版也是大同小异,然后写一些题目,做一些润年和斐波那契数列之类的题目了,熟悉lists函数库的用法后,可以水一些HduOj的11页语法题,练练语法,这一步的要求是能够熟练使用tuple(含record)和list的基本用法

第三步熟悉基本的otp

认真看erlang程序设计的7、8、9章,了解进程的基本工作的原理,进程之间发消息和建立link等。

附习题三道

1、用进程实现,初始有[{‘[email protected]‘, 0}, {‘[email protected]‘, 0}, {‘[email protected]‘, 0}],其中[email protected],[email protected],[email protected]是三个erlang节点,对应的当前各种服务器节点人数是0,0,0,之后每次发送消息{update, Node},对应的Node人数就增加1,然后再提供一个,发送消息get_node_list,返回这三个节点在线情况,比如[{‘[email protected]‘, 12}, {‘[email protected]‘,
10}, {‘[email protected]‘, 23}]。

2、创建一个网络进程,注册名是player_socket,同时在player_socket进程创建一个玩家进程,注册名是player,接着,1、如果player进程crash了,那么要通知player_socket进程,同时要关闭player_socket进程;2、如果player_socket进程挂了,那么要通知player,但是不关闭player进程。

3、有8个Jobs分给4个进程去处理。比如fun(Id) -> io:format("~p~n", [Id]) end,Id就是第几个Job,那么就是[1-8]8个数字打印,分给四个进程去打印。

注意:能解决以上题目,otp入门差不多了,每道题目都要解决,不管花多久时间

第四步工作搭建环境

首先要会一些基本的Linux命令操作,没玩过Linux或很久没玩的少年需要花时间熟悉它,公司的实际开发环境是linux+erlang17.0+emacs编辑器+rebar编译,代码管理和版本控制git。资料在网上也有很多关于rebar编译和git,这里我也写不出的一二三。不过emacs的用法着实让人很是蛋疼,看文档的话也不一定会用那些快捷键,这个要不断的失败尝试

第五步gen_server  application  supervisor

认真看书16、18章这里开始才是真正的接触erlang,要求初步了解这三者的用法,然后结合第四步一起学习,这里如果对gen_tcp不了解的话,要求去学习下

第六步项目框架基础

有了前五步的积累,这里推荐otp服务器框架经典博客一篇

http://www.blogjava.net/yongboy/archive/2012/10/24/390185.html我们公司的项目框架是以博客中的第二个框架为基础扩展

序:以上六步花了10天的时间熟悉,我究竟有多弱,第十一天终于开始给公司贡献最水的代码了,进公司前,有两个多月没拍代码,近四个月没看过erlang,以前看的差不多都忘了,面试的几家游戏公司也没有问关于erlang的知识,凭借着数据结构和算法的底子也找到了几家公司,现在呆的这家公司的威神大哥在网上认识的,人挺不错,冲着这点别的单位都不去了,后面也证实自己的选择没有错,感谢

时间: 10-04

erlang工作前新手学习指引路线的相关文章

Android Studio新手完全指引

Android Studio新手完全指引 @author ASCE1885的 Github 简书 微博 Android Studio的下载及安装 如果你的电脑可以翻墙,那么请直接到Android官网下载,如下图所示: 如果不幸翻不了墙,没关系,可以到AndroidDevTools下载,这个网站基本涵盖了Android开发所需的所有工具,文件放在百度云上面,下载速度杠杠的. 下载并安装完成后,首次启动会去下载更新一系列文件,如果已经翻了墙,就等待其更新完成:如果没有翻墙,就别傻等了,最终等到的只会

【转】程序员英语学习指引

转自互联网 ============= 作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://lucida.me/blog/english-for-programmers/ 概要 这篇文章面向程序员,简要的介绍了一些学习计算机专业英语的步骤和经验. 关于 之前不少人曾站内我如何学习英语,我也曾试图写一篇如何学习英语的博文,但我现在的实力着实无法写出令人信服的文章: 尽管阅读.写作和听力还可以,但口语很差——我指的是日常用语,即便出国一年,现在我和同事交流

Chromium学习指引

面对复杂如操作系统的一个工程,我们应该如何学习,学习什么,从哪里入手?下面是一篇学习指引: 关于Chromium code base,有许多需要学习的,宏观层次比如:进程及其相互之间的关系,IPC如何工作,URL加载流程:微观层次比如:智能指针,消息循环,线程用法,线程模型,string等的使用指引. 学习Chromium的"行为处事": 编码风格:http://www.chromium.org/developers/coding-style:如果你有其它编码经验,你可能会觉得chro

新手学习web遇到的一些乱码问题

在新手学习web网站学习的时候经常会遇到?????这种乱码,对于刚起步的菜鸟来说真的很头痛,很容易打击继续学的信心当然了对于菜鸟的我最近也遇到过乱码问题,沉浸其中不能自拔,爱的深啊!!!!!我所遇到的乱码问题可以有以下几个:1.页面乱码-->没有对页面进行编码格式的修改,pageEncoding="utf-8"<<我用的是jsp页面>>其他页面:asp,html都是一样的要对页面编码格式进行设定,不然就不会给你想要的会出现很多"????????&

程序员英语学习指引

原文链接:http://lucida.me/blog/english-for-programmers/ 概要 这篇文章面向程序员,简要的介绍了一些学习计算机专业英语的步骤和经验. 关于 之前不少人曾站内我如何学习英语,我也曾试图写一篇如何学习英语的博文,但我现在的实力着实无法写出令人信服的文章: 尽管阅读.写作和听力还可以,但口语很差——我指的是日常用语,即便出国一年,现在我和同事交流时仍然磕磕巴巴,不知道用什么词的情况经常出现: 尽管读过大量外文资料,但它们绝大多是计算机专业书籍和论文,并不适

Hadoop新手学习指导之hadoop核心知识学习

上篇(Hadoop新手学习指导之入门需知)我们介绍了新手学习hadoop的入门注意事项.这篇来谈谈hadoop核心知识学习. hadoop核心知识学习: hadoop分为hadoop1.X和hadoop2.X,并且还有hadoop生态系统.这里只能慢慢介绍了.一口也吃不成胖子. 那么下面我们以hadoop2.x为例进行详细介绍: Hadoop的核心是mapreduce和hdfs. Mapreduce:mapreduce是很多人都需要迈过去的槛,它比较难以理解,我们有时候即使写出了mapreduc

怎样让百度快速收录(适合新手学习,老手参考)

一个100%新站,30秒被收录,一个月就做到权重文章秒收,这必定是有真功夫的. 前提,是你要知道百度收录永远跟你网站评分有关. 分数不够,就不收录,分数够了,就收录,就怎么简单. 问题来了……怎样能提高分数? 不啰嗦. 洪雨总结一下自己实践操作中发现的因素,供新手学习,老手参考. 1.原创因素(你不一定真知道什么叫原创) 原创是首要因素,你会说,这个谁都知道,能不能说点新鲜的. 可有时候你自己写的文章,确实是原创,但是百度也不一定收录. 知道这为什么吗? 因为你的标题,没有写好,标题是一个内页的

Erlang之父的学习历史及学习建议

当我开始学习编程的时候(1967年),我可以在 FORTRAN 和(传说中的)Algol 之间选择,不过没有任何人了解 Algol,所以我选择了 FORTRAN. 在我最早学习编程的时候,我的编程周期基本上是这样的: 第一周 在纸上的表格里编写代码,然后送到计算机中心将其转换为打孔卡: 第二周 复查打孔卡,如果没问题就放到设备上执行: 第三周 得到结果 编程的一周,事实上是花费了我的三周时间:当编译器遇到第一个语法错误的时,它会终止运行——这会将你带回第一周.所以,如果在你的程序中有十个错误,它

用别人的钱和时间进行学习(可以学到很多东西,创业成功多了把握,而且缓解财务压力),善于利用已有资源,别着急,只要不断工作、不断学习然后保持耐心即可

我还是个小孩的时候,曾经在堂兄的礼品店干过. 那些漫长炎热的夏天实在是太无聊了,所以我甚至都没开口让他给我工钱. 不过有一天我突然想到了一个好点子.我可以跑到山里面,到当地果园摘一些无花果,然后卖给游客. 我把这个计划告诉了堂兄. “这是个糟糕的想法,”他听了直摇头:“每个人都会问你的果是从哪儿来的.然后你就成小偷了.” 这是我的第一个商业点子——不过它还没有来得及开始就夭折了. 很多人相信成功的创业注定需要冒险. 要么你是个守着柠檬汁小摊的 8 岁小孩,要么就是没有合适的东西. 就像 Remi