不写括号是对的,程序员就是匹配括号白了头。
习惯了就好了。
喜欢你写的风格,简洁不繁。不知你用 spacemacs 么?
配置调整窗口大小一直没成功。可否写一下这个呢?
这个最佳看你怎么定义了吧。
这个适合追星族,因为他只有这个版本。而且可以破除神秘感,高手写程序也差不多,也会犯错。 可贵的是他分享了函数分解的思路。我是受益匪浅。
他是最权威的,这毫无疑问吧。
我的理解,不一定对。模块相当于类,Struct 是数据,两个结合起来就可以,比如 100 个订单就是一个 List,有一百个 Struct。
Process 是并发单元,只在需要并发的部分使用,也是有代价的,关系相对复杂些。
流行的说法叫第一性原理,软件的第一性原理就是低耦合。对象的问题就是增加了耦合,不是一点点。 任何两个方法之间都是通过数据耦合的,你承认吧。
对象流行的原因是比较而言好理解一些,缺点也是明显的,程序越大越严重,写多了自己就明白了吧。
可以这样吧,可以重复绑定变量。
order = %{order | status: 'paid'}
Struct 是不是状态?
没有状态能搞开发么?只是处理状态的方式和思路不一样。
正好今天看到这个写的 elixir 一年体会 https://medium.com/@lorenzo_sinisi/what-i-have-learned-working-1-year-with-full-time-using-elixir-51efd4c1f66
不安利了。
好的,我去社区。你的软件真不错。
看来已经得到认同了。 不用等 Rails 修改,自己可以这么干,有什么不好么?
感觉代码很清楚。
def signup_changeset(user, params \\ %{}) do
user
|> cast(params, [:email, :password, :password_confirmation])
|> validate_required([email, :password, :password_confirmation])
|> validate_format(:email, ~r/@/)
|> validate_length(:password, min: 5)
|> password_and_confirmation_matches()
|> generate_password_hash()
end
# ...
defp generate_password_hash(changeset) do
password = get_change(changeset, :password)
hash = Comeonin.Bcrypt.hashpwsalt(password)
changeset |> put_change(:password_hash, hash)
end
defmodule Myapp.Test.Schema.UserTest do
use Myapp.DataCase
alias Myapp.Schema.User
test "rejects if passwords don't match" do
bad_pass = %{
email: "[email protected]",
password: "asfga67585ASDF",
password_confirmation: "asfga67585AS"
}
changeset = User.signup_changeset(%User{}, bad_pass)
refute changeset.valid?
end
end
课程在pluralsight 网站🔗,另外,vs code 的网站,进社区页面🔗,底部有链接。
红字提示我这个插件没安装,输入这个命令也没用。怎么个情况?
:call dein#install(["indentLine"])
还有一个粘贴的时候很慢,在处理什么。 另外,vscode 能识别语法❌,这个 vim 能办到么?
你是使用的什么插件管理器呢?
目前可以提示 def 这样的,但是某个模块比如 String 的函数就无法提示出来。
SPCUpdate 更新过了共 49 个插件,没报错。问题依旧。
l 是Language Specified
,不对吧。
我怎么列出插件呢?如何启动安装插件呢? 有红色提示我 indent 插件没安装。
是吗,那我再看看问题在哪里。
好啊,exs 是 elixir 的标准脚本。目前还不能提示函数名字,不知道是否容易实现,这个是最需要的。
可以了,很好。后缀 ex 就可以了,为什么 exs 不行呢?
好的,这就做。谢谢!
谢谢,更新了 8,发现插件能安装了,可是语法彩色没效果,怎么回事呢?
toml 有彩色,elixir 没有,elixir layer 的插件都安装了。
我有空来写个入门介绍,SpaceVim 不错,配合 Vim8,基本是安装好就能用。
好像还是不行,vi 版本有要求么?我是 7.4
没有 init.toml,我自己建立一个也没有效果。我先看看你的简书。文档我相信是全的,但一般人没耐心去看大文档。
如果条件不具备就暂缓吧,还是有个过程,水到渠成。 mipha 不错。可能的话,你先运营吧,别人才好参与啊。就是一个域名和阿里云的费用吧,还缺什么跟大家提吧。
我现在还不能完全看懂 phoenix 代码,今天试验 Ecto+sqlite 也通不过,困难重重。
谢谢回复。我在 init.vim 添加两行:
[[layers]]
name = "lang#elixir"
没有效果。 fvd 报错 E121,未定义变量 g:_spacevim_global_config_path
补充: 我使用了一下,感觉还不错。我安装的时候插件没完我把它终止了,后来删除掉.vim 重新安装,没出现安装插件过程了。 其他快捷键都可以,也能列出目录。
mac 10.12.
希望能出个简单教程,说明常见的一些操作,方便入门。 插件是用的什么管理,如何列出和安装插件呢?是 vim-plug 么?好像 PluginInstall 不能用。
我想试试看 Elixir layer,怎么操作呢?没看明白。
生态是可以改善的吧。Elixir 代表的是未来,吸取了各个语言的长处。当然不是说别的语言没有未来,呵呵。
有一个数据,github 上的贡献者 Elixir 有七百多了,Node 是两千多,不知道能否说明一些问题。java 和 python 似乎都不在 github 上。
Java 听说增加了函数型的特征,不过 Elixir 选择了函数范型,我支持这个做法。
《Programming Elixir》那本书感觉写得不好,内容组织得不好,反而重点没讲清楚。 而且过于炫技,用了一些难度大的例子,让初学者有挫败感,退而止步。
应该用一些简单的例子,重点讲清楚并发编程的基础就是 Process。
兴趣相当重要,一起加油。可以吸取思想,用到工作语言中。
这是一个好的改进,符合潮流的数据不变。
GenEvent 似乎文档上淘汰了