go

JavaScript动画实例:螺旋线

泄露秘密 提交于 2020-10-24 06:31:54
数学中有各式各样富含诗意的曲线,螺旋线就是其中比较特别的一类。螺旋线这个名词来源于希腊文,它的原意是 “ 旋卷 ” 或 “ 缠卷 ” 。例如,平面螺旋便是以一个固定点开始向外逐圈旋绕而形成的曲线。在2000多年以前,古希腊数学家阿基米德就对螺旋线进行了研究。著名数学家笛卡尔于1683年首先描述了对数螺旋线,并且列出了螺旋线的解析式。 1.阿基米德螺线 阿基米德螺线亦称 “ 等速螺线 ” 。当一点P沿动射线OP以等速率运动的同时,该射线又以等角速度绕点O旋转,点P的轨迹称为 “ 阿基米德螺线 ” 。 将动点P的轨迹动态出现出来,编写如下的HTML代码。 <!DOCTYPE> <html> <head> <title>阿基米德螺线</title> </head> <body> <canvas id="myCanvas" width="400" height="300" style="border:3px double #996633;"> </canvas> <script> var canvas = document.getElementById('myCanvas'); var ctx = canvas.getContext('2d'); var i=0; var j=0.1; ctx.clearRect(0,0,400,300); function motion() { i=i

golang 固定worker 工作池

我怕爱的太早我们不能终老 提交于 2020-10-24 04:54:38
服务器编程使用最多的就是通过线程池提升服务的并发执行能力,在go语言中,一样可以轻松的构建固定数目的goroutine作为线程池,下面通过计算多个整数的和来说明这种并发范式。 设计思路: 除了主要的main goroutine ,还需开启以下几类goroutine 1,初始化任务的goroutine 2,分发任务的goroutine 3,等到所有work结束,然后关闭所有通道的goroutine main主要负责拉起以上的goroutine 冰火取结果 程序还需要三个通道 1,传递task任务的通道 2,传递task结果的通道 3 ,接收workder处理完任务后所发送通知的通道 具体代码如下 package go_worker import ( " fmt " ) // 定义工作数量 const ( WORKS = 5 ) // 定义工作任务结构体,可根据需求改变 type task struct { begin int end int result chan <- int } // 定义执行任务的方法,可根据需求更改 func (t *task) do (){ sum: = 0 for i:=t.begin;i<=t.end;i++ { sum ++ } t.result <- sum } // 入口函数 func main(){ works: = WORKS //

如何在Go中编写多行字符串?

寵の児 提交于 2020-10-24 04:03:42
问题: Does Go have anything similar to Python's multiline strings: Go是否与Python的多行字符串相似? """line 1 line 2 line 3""" If not, what is the preferred way of writing strings spanning multiple lines? 如果不是,编写跨多行字符串的首选方式是什么? 解决方案: 参考一: https://stackoom.com/question/XHr2/如何在Go中编写多行字符串 参考二: https://oldbug.net/q/XHr2/How-do-you-write-multiline-strings-in-Go 来源: oschina 链接: https://my.oschina.net/u/4438370/blog/4281585

漫画:程序员,你得熬过这最难的一天!

半世苍凉 提交于 2020-10-23 13:16:03
更多精彩技术漫画,尽在 码农翻身 后记(凑字数):这篇漫画主要想讲一讲选择的问题,初学者开始学习编程的时候,都会遇到。哪个语言好?哪个语言更有钱途?Python简单易学,啥都能干,人工智能火得很;Java大法好,后端,大数据,手机端都是它;学JavaScript吧,一行顶十行,GitHub上最流行,写完后立刻就能在浏览器看到效果;学习Go语言吧,云计算时代的语言。 诸如此类的声音会让你无所适从。 然后选机器,Linux,Mac, Windows各自又有一批忠实的支持者。IDE之战更是常见话题,Eclipse ,IDEA, VS Code, Vi ,Emacs各有所长。接下来就是上培训班还是自学,培训班有学习氛围,四个月学完出师,还能包就业,甚至直通大厂,银行提供贷款,但是良莠不齐,一不小心就会掉入坑中。自学需要有强大的自制力和驱动力,有了问题没人交流,就会比较苦闷,时间长了就会放弃。 之于书和视频,也是萝卜白菜各有所爱。 来源: oschina 链接: https://my.oschina.net/u/4347242/blog/4685899

goLang学习之一

偶尔善良 提交于 2020-10-23 11:20:25
windows下搭建golang开发环境 下载地址: http://www.golangtc.com/download 环境变量配置,这里只需要配置GOROOT、GOBIN和GOPATH三个环境变量即可。 GOBIN : golang安装后根目录下的bin目录,即$GOROOT\bin\,windows平台下默认为c:\go\bin,安装过程中会由安装程序自动添加到PATH环境变量中。 GOROOT : golang安装后的根目录,windows下默认为c:\go\,安装过程中会由安装程序自动写入系统环境变量中。 GOPATH : golang的工作目录,是用来设置包加载路径的重要变量,也是go get和go install工具将会使用的目录。GOPATH变量可以同时制定多个目录,这些目录在Mac和Linux系统上通过:分隔,而在windows系统上通过;分隔。在大部分情况下都将是第一个路径优先。 编译运行第一个golang程序: // Hello.go package main import ( "fmt" ) func main() { fmt.Println("Hello World! Welcome to Go Lang!") } • LiteIDE安装 ▶ 下载windows版本,下载地址: https://sourceforge.net/projects/liteide