[{"data":1,"prerenderedAt":248},["ShallowReactive",2],{"archive-2014-8-1":3},{"title":4,"articles":5,"hot_article":38,"month_arch":97,"total":80,"cover":245},"2014年8月 - 独孤影的博客",[6,18,28],{"id":7,"title":8,"uri":8,"author":9,"tags":10,"created_at":15,"view_count":16,"content":17},8,"Go语言新手应该知道的几点","duguying",[11,12,13,14],"golang","初学者","包导入","变量命名","2014-08-17 13:29:25",6066,"\u003Cp>1. 变量与函数命名\u003C\u002Fp>  \u003Cp>在go语言中变量与函数的命名是有着特殊的限制的，比如，一个函数functionname与函数FunctionName是有着不同的特点的。函数名第一个字母大写表示此函数可以被其他文件中的代码所调用，而函数名第一个字母小写的函数却只能在当前文件中被调用。初学者往往会发现自己正确的导入了包，但是却无法调用包里面的函数，这时候请看一下自己定义的函数名的首字母的大小写情况。因此，建议Go语言变量命名一律使用骆驼命名法(FunctionName\u002FfunctionName)，而不是蛇形命名法(function_name)。\u003C\u002Fp>  \u003Cp>2. 包导入import\u003C\u002Fp>  \u003Cp>(1) 相对路径    \u003Cbr \u002F>\u003C\u002Fp>  \r\n\u003Cpre class=\"brush:php;\">import \".\u002Fmodel\" \u002F\u002F当前文件同一目录的model目录，但是不建议这种方式来import\u003C\u002Fpre>\r\n\r\n\u003Cp>\u003C\u002Fp>\r\n\r\n\u003Cp>(2) 绝对路径 \r\n  \u003Cbr \u002F>\u003C\u002Fp>\r\n\r\n\u003Cpre class=\"brush:php;\">import \"shorturl\u002Fmodel\" \u002F\u002F加载gopath\u002Fsrc\u002Fshorturl\u002Fmodel模块\u003C\u002Fpre>\r\n\r\n\u003Cp>(3) 点操作 \r\n  \u003Cbr \u002F>\u003C\u002Fp>\r\n\r\n\u003Cpre class=\"brush:php;\">import( . \"fmt\" ) \u003C\u002Fpre>\r\n这个点操作的含义就是这个包导入之后在你调用这个包的函数时，你可以省略前缀的包名，也就是前面你调用的fmt.Println(\"hello world\")可以省略的写成Println(\"hello world\") \r\n\r\n\u003Cp>\u003C\u002Fp>\r\n\r\n\u003Cp>(4) 别名操作 \r\n  \u003Cbr \u002F>别名操作顾名思义我们可以把包命名成另一个我们用起来容易记忆的名字 \u003C\u002Fp>\r\n\r\n\u003Cpre class=\"brush:php;\">import( f \"fmt\" ) \u002F\u002F别名操作的话调用包函数时前缀变成了我们的前缀，即f.Println(\"hello world\")\u003C\u002Fpre>\r\n\r\n\u003Cp>(5) _操作\r\n  \u003Cbr \u002F>\u003C\u002Fp>\r\n\r\n\u003Cpre class=\"brush:php;\">import ( \"database\u002Fsql\" \r\n         _ \"github.com\u002Fziutek\u002Fmymysql\u002Fgodrv\" \r\n        )\u003C\u002Fpre>\r\n_操作其实是引入该包，而不直接使用包里面的函数，而是调用了该包里面的init函数",{"id":19,"title":20,"uri":20,"author":9,"tags":21,"created_at":25,"view_count":26,"content":27},7,"Vim常用操作",[22,23,24],"Vim","动画演示","常用操作","2014-08-11 15:49:27",3849,"\u003Cp>1. 单词间跳转，w词首，e词尾\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Fword_jump.gif\" title=\"\" alt=\"word_jump.gif\"\u002F>\u003C\u002Fp>\u003Cp>2. 行首^、行尾$\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Fhome_end.gif\" title=\"\" alt=\"home_end.gif\"\u002F>\u003C\u002Fp>\u003Cp>3. 撤销u、重做ctrl+r\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Fundo_redo.gif\" title=\"\" alt=\"undo_redo.gif\"\u002F>\u003C\u002Fp>\u003Cp>4. 查找\u002Fkeyword\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Ffind.gif\" title=\"\" alt=\"find.gif\"\u002F>\u003C\u002Fp>\u003Cp>5. 复制、粘贴(v选区，y复制，p粘贴)\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Fcopy_paste.gif\" title=\"\" alt=\"copy_paste.gif\"\u002F>\u003C\u002Fp>\u003Cp>6. 块操作，注释块(ctrl+v进入块操作模式，I块插入模式，编辑，Esc填充)\u003C\u002Fp>\u003Cp>\u003Cimg src=\"\u002F\u002Fduguying.oss-cn-qingdao.aliyuncs.com\u002F2014\u002F9\u002F8\u002Fblock_operate.gif\" title=\"\" alt=\"block_operate.gif\"\u002F>\u003C\u002Fp>\u003Cp>以上是一些常用的基本操作，当然Vim的操作还有很多，要不断的学习和练习才能够更加熟练。\u003C\u002Fp>",{"id":29,"title":30,"uri":30,"author":9,"tags":31,"created_at":35,"view_count":36,"content":37},6,"Windows上的软件包管理器chocolatey",[32,33,34],"chocolatey","windows","软件包管理","2014-08-10 15:55:22",8012,"\u003Cp>软件包管理器相信用过非Windows的人都知道。例如Linux上的apt-get，yum；MacOS上的brew。对于开发者来说，包管理器确实是个好东西，前面所说的包管理器可以安装二进制文件，部分也可以源码编译安装。Windows上的自带的软件管理(添加删除程序)一向被人们称为垃圾。下面就给大家介绍一个第三方实现的包管理器chocolatey。\u003C\u002Fp>\u003Cp>chocolatey官网\u003Ca href=\"http:\u002F\u002Fchocolatey.org\u002F\">http:\u002F\u002Fchocolatey.org\u002F\u003C\u002Fa> ，安装方法：在cmd中执行下面命令(依赖于.NET Framework 4和Powershell)\u003C\u002Fp>\u003Cpre class=\"brush:ps;\">C:&gt;@powershell&nbsp;-NoProfile&nbsp;-ExecutionPolicy&nbsp;unrestricted&nbsp;-Command&nbsp;&quot;iex&nbsp;((new-object&nbsp;net.webclient).DownloadString(&#39;https:\u002F\u002Fchocolatey.org\u002Finstall.ps1&#39;))&quot;&nbsp;&amp;&amp;&nbsp;SET&nbsp;PATH=%PATH%;%ALLUSERSPROFILE%\\chocolatey\\bin\u003C\u002Fpre>\u003Cp>之后就可以在cmd中使用一下命令执行安装、卸载、查找软件包了\u003C\u002Fp>\u003Cpre class=\"brush:bat;\">::&nbsp;安装notepad2软件\nchoco&nbsp;install&nbsp;notepad2\n::&nbsp;或\ncinst&nbsp;notepad2\n::&nbsp;卸载notepad2软件\nchoco&nbsp;uninstall&nbsp;notepad2\n::&nbsp;或\ncuninst&nbsp;notepad2\n::&nbsp;查找软件\nchoco&nbsp;search&nbsp;sublime\u003C\u002Fpre>\u003Cp>与Linux、MacOS上的命令很相似了，不过这个还是无法达到Linux、MacOS上的apt-get,yum,brew那么强悍，因为它只能够安装二进制软件包，并不能做编译安装之类的工作。chocolatey并不够强悍，不过也可以让人们在Windows系统上稍微体验一下命令行安装的感觉了。\u003C\u002Fp>",{"title":39,"list":40},"最热文章",[41,47,53,59,65,71,77,79,85,91],{"id":42,"title":43,"uri":44,"author":9,"created_at":45,"view_count":46},28,"docker容器目录与主机目录同步","\u002Farticle\u002Fdocker容器目录与主机目录同步","2014-12-31 12:34:08",15573,{"id":48,"title":49,"uri":50,"author":9,"created_at":51,"view_count":52},21,"beego中使用fis","\u002Farticle\u002Fbeego中使用fis","2014-12-03 10:47:56",9253,{"id":54,"title":55,"uri":56,"author":9,"created_at":57,"view_count":58},20,"用github登录，oauth开发","\u002Farticle\u002F用github登录，oauth开发","2014-11-23 13:33:37",9115,{"id":60,"title":61,"uri":62,"author":9,"created_at":63,"view_count":64},18,"windows服务注册工具nssm","\u002Farticle\u002Fwindows服务注册工具nssm","2014-10-31 21:34:39",9054,{"id":66,"title":67,"uri":68,"author":9,"created_at":69,"view_count":70},49,"用latex排版中文书籍","\u002Farticle\u002F用latex排版中文书籍","2016-10-31 11:12:02",8645,{"id":72,"title":73,"uri":74,"author":9,"created_at":75,"view_count":76},19,"texlive中文书签乱码","\u002Farticle\u002Ftexlive中文书签乱码","2014-11-15 02:54:01",8466,{"id":29,"title":30,"uri":78,"author":9,"created_at":35,"view_count":36},"\u002Farticle\u002FWindows上的软件包管理器chocolatey",{"id":80,"title":81,"uri":82,"author":9,"created_at":83,"view_count":84},3,"利用开源和免费资源搭建CI环境","\u002Farticle\u002F利用开源和免费资源搭建CI环境","2014-07-04 16:54:58",7740,{"id":86,"title":87,"uri":88,"author":9,"created_at":89,"view_count":90},16,"php-fpm网站目录权限配置","\u002Farticle\u002Fphp-fpm网站目录权限配置","2014-10-18 01:36:10",7276,{"id":92,"title":93,"uri":94,"author":9,"created_at":95,"view_count":96},27,"sublime text 2插件开发，外部修改文件无法重新加载","\u002Farticle\u002Fsublime text 2插件开发，外部修改文件无法重新加载","2014-12-26 20:24:13",7055,{"title":98,"list":99},"按月归档",[100,104,107,110,113,116,119,123,127,130,133,136,140,143,146,150,153,156,159,163,166,169,172,175,178,181,184,187,190,193,196,199,202,205,208,211,214,217,220,223,227,230,233,236,239,242],{"title":101,"uri":102,"view_count":103},"2026年7月","\u002Farchive\u002F2026\u002F7\u002F1","[1]",{"title":105,"uri":106,"view_count":103},"2026年1月","\u002Farchive\u002F2026\u002F1\u002F1",{"title":108,"uri":109,"view_count":103},"2025年4月","\u002Farchive\u002F2025\u002F4\u002F1",{"title":111,"uri":112,"view_count":103},"2024年6月","\u002Farchive\u002F2024\u002F6\u002F1",{"title":114,"uri":115,"view_count":103},"2024年5月","\u002Farchive\u002F2024\u002F5\u002F1",{"title":117,"uri":118,"view_count":103},"2024年4月","\u002Farchive\u002F2024\u002F4\u002F1",{"title":120,"uri":121,"view_count":122},"2023年12月","\u002Farchive\u002F2023\u002F12\u002F1","[6]",{"title":124,"uri":125,"view_count":126},"2023年11月","\u002Farchive\u002F2023\u002F11\u002F1","[2]",{"title":128,"uri":129,"view_count":103},"2023年10月","\u002Farchive\u002F2023\u002F10\u002F1",{"title":131,"uri":132,"view_count":103},"2023年7月","\u002Farchive\u002F2023\u002F7\u002F1",{"title":134,"uri":135,"view_count":126},"2023年6月","\u002Farchive\u002F2023\u002F6\u002F1",{"title":137,"uri":138,"view_count":139},"2023年5月","\u002Farchive\u002F2023\u002F5\u002F1","[3]",{"title":141,"uri":142,"view_count":126},"2023年4月","\u002Farchive\u002F2023\u002F4\u002F1",{"title":144,"uri":145,"view_count":126},"2023年3月","\u002Farchive\u002F2023\u002F3\u002F1",{"title":147,"uri":148,"view_count":149},"2023年2月","\u002Farchive\u002F2023\u002F2\u002F1","[5]",{"title":151,"uri":152,"view_count":103},"2023年1月","\u002Farchive\u002F2023\u002F1\u002F1",{"title":154,"uri":155,"view_count":126},"2022年12月","\u002Farchive\u002F2022\u002F12\u002F1",{"title":157,"uri":158,"view_count":149},"2022年11月","\u002Farchive\u002F2022\u002F11\u002F1",{"title":160,"uri":161,"view_count":162},"2022年10月","\u002Farchive\u002F2022\u002F10\u002F1","[4]",{"title":164,"uri":165,"view_count":122},"2022年9月","\u002Farchive\u002F2022\u002F9\u002F1",{"title":167,"uri":168,"view_count":149},"2022年8月","\u002Farchive\u002F2022\u002F8\u002F1",{"title":170,"uri":171,"view_count":103},"2019年7月","\u002Farchive\u002F2019\u002F7\u002F1",{"title":173,"uri":174,"view_count":103},"2019年2月","\u002Farchive\u002F2019\u002F2\u002F1",{"title":176,"uri":177,"view_count":103},"2018年9月","\u002Farchive\u002F2018\u002F9\u002F1",{"title":179,"uri":180,"view_count":103},"2018年8月","\u002Farchive\u002F2018\u002F8\u002F1",{"title":182,"uri":183,"view_count":103},"2017年11月","\u002Farchive\u002F2017\u002F11\u002F1",{"title":185,"uri":186,"view_count":103},"2017年8月","\u002Farchive\u002F2017\u002F8\u002F1",{"title":188,"uri":189,"view_count":103},"2017年5月","\u002Farchive\u002F2017\u002F5\u002F1",{"title":191,"uri":192,"view_count":103},"2017年4月","\u002Farchive\u002F2017\u002F4\u002F1",{"title":194,"uri":195,"view_count":103},"2016年11月","\u002Farchive\u002F2016\u002F11\u002F1",{"title":197,"uri":198,"view_count":103},"2016年10月","\u002Farchive\u002F2016\u002F10\u002F1",{"title":200,"uri":201,"view_count":126},"2016年9月","\u002Farchive\u002F2016\u002F9\u002F1",{"title":203,"uri":204,"view_count":103},"2016年8月","\u002Farchive\u002F2016\u002F8\u002F1",{"title":206,"uri":207,"view_count":126},"2016年7月","\u002Farchive\u002F2016\u002F7\u002F1",{"title":209,"uri":210,"view_count":149},"2016年6月","\u002Farchive\u002F2016\u002F6\u002F1",{"title":212,"uri":213,"view_count":103},"2015年12月","\u002Farchive\u002F2015\u002F12\u002F1",{"title":215,"uri":216,"view_count":103},"2015年10月","\u002Farchive\u002F2015\u002F10\u002F1",{"title":218,"uri":219,"view_count":126},"2015年2月","\u002Farchive\u002F2015\u002F2\u002F1",{"title":221,"uri":222,"view_count":103},"2015年1月","\u002Farchive\u002F2015\u002F1\u002F1",{"title":224,"uri":225,"view_count":226},"2014年12月","\u002Farchive\u002F2014\u002F12\u002F1","[8]",{"title":228,"uri":229,"view_count":126},"2014年11月","\u002Farchive\u002F2014\u002F11\u002F1",{"title":231,"uri":232,"view_count":149},"2014年10月","\u002Farchive\u002F2014\u002F10\u002F1",{"title":234,"uri":235,"view_count":139},"2014年9月","\u002Farchive\u002F2014\u002F9\u002F1",{"title":237,"uri":238,"view_count":139},"2014年8月","\u002Farchive\u002F2014\u002F8\u002F1",{"title":240,"uri":241,"view_count":139},"2014年7月","\u002Farchive\u002F2014\u002F7\u002F1",{"title":243,"uri":244,"view_count":126},"2013年9月","\u002Farchive\u002F2013\u002F9\u002F1",{"url":246,"title":247},"https:\u002F\u002Fimage.duguying.net\u002F2022\u002F09\u002Fij6x8o4s.webp","老家 摄于2020年秋",1790781591588]