青鱼 发布的文章

计算机时代早已经到来,即便小型传统企业,都有自己的局域网络和主机。
信息化建设,应该是一个循序渐进、由浅入深、因地制宜的过程。不同类型、不同规模、不同发展规划的企业,应该量身定制,属于自己的信息化建设方案。
我们分析企业现状和未来发展,首先描绘企业信息化蓝图,然后考察投入与收益,制定给企业带来最大收益的现实方案,并朝着理想蓝图稳定发展。

  1. 企业数据备份
    企业数据包含但不限于客户数据、订单数据、商业机密文件、业务流水、财务数据等,通常也是企业的命脉,如果这些数据丢失,将给企业带来重创。
    备份,有备无患。哪些方案
  2. 官网建设及企业邮箱、社交账号建设
    官网是企业门面,权威的象征,应该展示企业的产品服务,传达一种专业性、给网站浏览者一种可靠的感觉。
  3. 互联网推广
  4. CRM(客户资源管理)
  5. 协同办公、云同步、企业IM
  6. 业务上云自动化
  7. AI应用

为一般情况编写程序,把具体情况放在别处。
把抽象放进代码,细节放进元数据。
好处:

  • 解除设计的耦合,从而带来更灵活、可适应性更好的程序

  • 迟细节处理,创建更健壮、更抽象的设计

系统设计
概念区分明确
逻辑显式指定,杜绝隐含推导逻辑

相信自己,深度思考

近日再学golang
略看《A Tour of Go》
仔细看标准库代码
体会Ken等大师所认知的世界,领悟世界的真谛。

凡事都应简单,但不能过于简单 ————Albert Einstein

根据 Robert Hundt(2011 年 6 月,详见引用 28)的文章对 C++、Java、Go 和 Scala,以及 Go 开发团队的反应(详见引用 29),可以得出以下结论:

  • Go 和 Scala 之间具有更多的可比性(都使用更少的代码),而 C++ 和 Java 都使用非常冗长的代码。
  • Go 的编译速度要比绝大多数语言都要快,比 Java 和C++ 快 5 至 6 倍,比 Scala 快 10 倍。
  • Go 的二进制文件体积是最大的(每个可执行文件都包含 runtime)。(以历史的视角看,是以空间换软件复杂度,在现代来说,磁盘空间很充足,这样做太值了!)
  • 在最理想的情况下,Go 能够和 C++ 一样快,比 Scala 快 2 至 3 倍,比 Java 快 5 至 10 倍。
  • Go在内存管理方面也可以和 C++ 相媲美,几乎只需要 Scala 所使用的一半,是Java的五分之一左右。

内嵌类型的方法和继承

当一个匿名类型被内嵌在结构体中时,匿名类型的可见方法也同样被内嵌,这在效果上等同于外层类型 继承了这些方法:将父类型放在子类型中来实现亚型。这个机制提供了一种简单的方式来模拟经典面向对象语言中的子类和继承相关的效果,也类似 Ruby中的混入(mixin)。
type Engine interface {
    Start()
    Stop()
}

type Car struct {
    Engine
}

Go的这种设计,能更自然地表示世界,没有多继承的复杂、没有单继承的局限、不需要像PHP那样 单继承+trait补充
万物关系从来不只是继承,还有更多的组合。越是准确直接地表达世界,代码越是整洁。

本文目的是分享一个开发便捷、运行简便、工作优雅的开发方案。
本文适用于使用IDE写代码、看代码的RD及QA。对于热衷Vim等编辑器的同学,可能不适用。
本地指个人笔记本,服务器指的是开发运行的机器。

本地开发服务器运行.png

1.开发便捷:利用IDE的强大功能就好

2.运行简便:服务器(开发机)上的环境是直接可用的,所以将本地代码快捷地同步到服务器上运行,本地开发并提交版本控制。

    什么方式?SFTP/FTP/SMB等都可以,服务器上只要运行相关服务器,本地配置认证、目录映射,本地代码变动,手动或自动地将代码上传。[如何在Webstorm/Phpstorm中设置连接FTP][2]

3.工作优雅:举例说,本地开发分支A,服务器运行调试,开发完成(提交代码)或开发至一半(git stash暂存工作进度),本地切换分支B,开发下一个功能... 此刻服务器上代码的版本控制,就是不干净的,所以在本地切分支A->B时,同时处理好服务器的代码,清理不干净的代码、同样切换A->B,以git为例

git clean -df
git reset --hard
git pull
git checkout --track origin/B