2022-01-01ãã1å¹´éã®è¨äºä¸è¦§
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã JetBrainsããæä¾ã®è£½åã¢ãããã¼ãä¸è¦§è¨äºãåºã¾ãããã blog.jetbrains.com æ¯åãã¨ã¦ã沢山ã®æ°æ©è½ãåºã¦ãã¦ãã¾ãããå人çã« DataGrip ã« Redis ãµãã¼ãã追å ãä¸â¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãããããªã«ä½¿ãå ´é¢ã¯ç¡ãã®ã§ããããã¾ã«ä½¿ãã¨ããããã®ã§ãã¤ãã§ã«ããã«ã¡ã¢ã¡ã¢ãã Goã§ãã¾ã«åºããã°ã®ä¸ã¤ã«ã·ã£ãã¦ã¤ã³ã°ãããã¾ãã ãããªã®ã§ãã package main import "fmt" func main() { i :â¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãããã¤ãå¿ããã®ã§ããã«ã¡ã¢ã¡ã¢ããã ãã¾ã« which ã³ãã³ããç¡ãç°å¢ãããã¾ãã whichã³ãã³ãã¯å¤é¨ã³ãã³ããªã®ã§å ¥ã£ã¦ããªãç°å¢ãããã¾ãã ã§ããåããããªãã¨ããããå ´åãããããã¨ãã«éã£â¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã Gigazineããã®ä»¥ä¸ã®è¨äºã§ç¥ãã¾ããã gigazine.net PlantUMLã¿ãããªæãã§ãã·ã³ãã«ã«ãªã£ã¦ããã¤ã¡ã¼ã¸ã Goã§ä½ããã¦ã¦ããã¼ã«ã¨ãã¦ã©ã¤ãã©ãªã¨ãã¦ãã¦ã使ããã¿ãâ¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããã¾ã 試ãã¦ã¾ããããå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã ãã©ã¦ã¶çµç±ã§ã¿ã¼ããã«ãå ±æã§ãããã®ãã¼ã便å©ã§ãããåå¨ãå ¨ç¶ç¥ãã¾ããã§ããã CJK and IME support ã¨è¨è¼ããã¦ããã®ã§ãæ¥æ¬èªé¢é£ãåé¡ãªâ¦
æ¦è¦ ã¿ã¹ã¯ãã¡ã¤ã«ãåå¨ãããã£ã¬ã¯ããªã«ããç¶æ ã§å®è¡ å¥ã®ãã£ã¬ã¯ããªã«åå¨ããã¿ã¹ã¯ãã¡ã¤ã«ãå®è¡ åèæ å ± æ¦è¦ Task ã Make ã®ãããªã¿ã¹ã¯ã©ã³ãã¼ã使ãå ´åãããã¦ãï¼ã¤ã®å®è¡æ¹æ³ãç¥ã£ã¦ããã¨ä¾¿å©ã§ãã ã¿ã¹ã¯ãã¡ã¤ã«ãåå¨ãããâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ ä½äºãã¾ãã¯hello worldãããåºæ¬ã¯ãã¤ã§ã大äºã§ããã æã®äººã¯è¯ãè¨èãæ®ãã¦ããã¦ãã¾ãã 稽å¤ã¨ã¯ä¸ããç¿ãåãç¥ã åããããããã¨ã®ãã®ä¸ ãµã³ãã« # https://taskfile.dev ################################â¦
æ¦è¦ ãµã³ãã«(1) ã·ã³ãã«ãªå½¢ config.go main.go ãµã³ãã«(2) éå ¬éãªåã使ã£ã¦ã®ããæ¹ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãããããªã«ä½¿ãå ´é¢ã¯ç¡ãã®ã§ããããã¾ã«ä½¿ãã¨ããããã®ã§ãã¤ãã§ã«ããã«ã¡ã¢ã¡ã¢ãã Goã«ã¯ Functional Option Pattâ¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã SvelteKit ã® 1.0 ããªãªã¼ã¹ãããã¿ããã§ããã¼ã é¢é£ãªã½ã¼ã¹ã以ä¸ã«ã¡ã¢ã¡ã¢ã It's here.https://t.co/mP8vD5zctaâ Svelte (@sveltejs) 2022å¹´12æ14æ¥ SvelteKit 1.0 is â¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ã ãã¶åï¼ä»¥å Microsoft MVP ãåè³ãã¦ããã¨ãï¼ã«ãMicrosoft MVP ç¨ã®ã©ã¤ã»ã³ã¹ã使ã£ã¦ãDevExpressã®è£½åããããã触ã£ã¦ã¦ä»¥ä¸ã®ãªã³ã¯ã«ããããã«è¨äºã«ãã¦ãã¾ããã https://github.com/devligâ¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã Googleã®Goã¹ã¿ã¤ã«ã¬ã¤ãã¨ããã®ããããã¨ã以ä¸ã®è¨äºã§ç¥ãã¾ãããæè¬ã qiita.com google.github.io åèæ å ± ããã°ã©ãã³ã°è¨èªGoä½è :ã¢ã©ã³ã»ãããã³,ãã©ã¤ã¢ã³ã»ã«â¦
æ¦è¦ åèæ å ± æ¦è¦ ãã¾ã«OWASP èå¼±æ§è¨ºæã¨ãã§åºã¦ãããã®ã«å¯¾ãã¦ãã©ã®ãããªã¢ããã¼ããè¡ãã°è¯ããåãããªãã¨ããããã¾ãã ãããªã¨ãã«ä»¥ä¸ãå½¹ã«ç«ã¤ãããããªãã®ã§ãå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã cheatsheetseries.owasp.org åèæ å ± â¦
æ¦è¦ åèæ å ± æ¦è¦ å人çã«ã¨ã¦ãæ°ã«å ¥ã£ã¦ããé¨åãªã®ã§ãããTaskããã¯å é¨ã§mvdan.cc/shã¨ããã©ã¤ãã©ãªãå©ç¨ãã¦ããã¦ããã®ã§ãWindowsã§ãshã®è¨æ³ã使ãã¾ãããããã¨ã¦ã便å©ã§ãã ãã¨ãã° version: '3' tasks: default: cmds: - echo "$â¦
æ¦è¦ åèæ å ± æ¦è¦ ååã¯ã¤ã³ã¹ãã¼ã«ã«ã¤ãã¦æ¸ããã®ã§ãä»åã¯æã大äºãªã¿ã¹ã¯ãã¡ã¤ã«ã«ã¤ãã¦ã Task ã§ã¯ãå®è¡ãã¦ã»ããã¿ã¹ã¯ãå®ç¾©ãããã¡ã¤ã«ãä½ã£ã¦æå®ãã¾ãã ãã®ãã¡ã¤ã«åã¯ããã©ã«ãã§ã¯ Taskfile.yml ã¾ã㯠Taskfile.yaml ã§ããâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããããå¿ããã®ã§ãããã«ã¡ã¢ã¡ã¢ããã 以ä¸ã®Go 1.20ã«ã¤ãã¦ã®æ å ±ã«ã¤ãã¦æ¸ãã¦ãã ãã£ã¦ããè¨äºãè¦ã¦ã¦ zenn.dev 1.20 ã§ã¤ãã« a := []string{"golang", "python", "csharp"} b := [3]string(â¦
æ¦è¦ ã¤ã³ã¹ãã¼ã« Windows Unixç³» go install ã§å ¥ãã ãªãã¸ã㪠åèæ å ± æ¦è¦ åã«ä»¥ä¸ã®è¨äºã§ã¡ã¢ãã Task (go-task) ããã§ãããæè¿ã¯Makefileã®ä»£ããã«ãã£ã¨å©ç¨ãã¦ããã®ã§ãã¤ãã§ãªã®ã§åå¿é²ã¨ãã¦ã¡ã¢ãã¦ãããã¨æãã¾ãã æåãªã®ã§â¦
æ¦è¦ ãµã³ãã« server.go client.go Taskfile.yml å®è¡çµæ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ãã¾ã«ã¡ããã£ã¨éä¿¡ããããã°ã©ã æ¸ãã¨ãã«ãGoã§TCPéä¿¡ã©ãããããã£ãï¼ï¼ã£ã¦ãããªãã®ã§ãå¿ããªãããã«ããã«ã¡ã¢ã¡ã¢ããã èªåç¨ã®ãã¤ã©â¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããå ¨ç¶ç¥ããªãã£ãã®ã§ãå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã ãã£ããã¯ä»¥ä¸ã®è¨äºãè¦ãã¨ãã§ããã qiita.com è¨äºèªä½ãã¨ã¦ãåå¼·ã«ãªãå 容ã ã£ãã®ã§ãããéä¸ã« easymotion ã¨ããç¨èªãåºã¦ã㦠æåãããâ¦
æ¦è¦ ãµã³ãã« stat.go user.go group.go other.go ãã¹ã åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ãã¾ã«ä½¿ãããã¨ãã«ããå¿ãã¦ããã®ã§ãããã«ã¡ã¢ã¡ã¢ããã ååããã¡ã¤ã«ã®èªã¿è¾¼ã¿ã»æ¸ãè¾¼ã¿ã»å®è¡å¯è½ãã©ãããå¤å®ãããµã³ãã«ãæ¸ãã¦ã¾ããâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ãã¾ã«ä½¿ãããã¨ãã«ããå¿ãã¦ããã®ã§ãããã«ã¡ã¢ã¡ã¢ããã fs.FileInfo ãèµ·ç¹ã§ããããã fs.FileMode ãåå¾ãã¦å¤å®ãã¾ãã ãã¼ããã·ã§ã³ã®æå®ã¯ unix ã©ã¤ã¯ã« 0400 ã¨ã 0644 ã®ããâ¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ãã¾ã«ãvim 㧠netrw ã§æä½ãã¦ãã¦ãã«ã¬ã³ããã£ã¬ã¯ããªãå¤æ´ãããã¨ãã« å㯠c ã£ã¦æ¼ãã°å¤ãã£ã¦ããã®ã«åºæ¥ãªããªã£ã¦ãã®ã§ãããã¥ã¡ã³ãè¦ã¦ã¿ãã¨ã以ä¸ã®ããã«è¨è¼ããã¦ã¾ããã vim-jp.orâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ ãã¤ã使ãããã¨ãã«å¿ããã®ã§ãã¤ãã§ã«ããã«ã¡ã¢ã å ¬å¼ Javadoc ã®Formatterã¯ã©ã¹ã®è¨è¼ãèªãã°åããã¿ãããªã®ã§ãããããããããã§ãããããã ã¨ããããã%,d ã§ã«ã³ãä»ãã«ãªãã ãµã³ãã« public final clasâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ ç¥ããªãã£ãã®ã§ãå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã Java 11 ããããã¤ã®ã¾ã«ã java ãã¡ã¤ã«ã javac ã§ã³ã³ãã¤ã«ããã¨ãåä¸ãã¡ã¤ã«ãç´æ¥å®è¡ã§ããããã«ãªã£ã¦ããã§ããã JEP 330 ã£ã¦ãã®ãããã åºæ¬çã«æ¥åã ã¨â¦
æ¦è¦ å¦ççµæã«ãã£ã¦éä¿¡å´ãããªããªããåä¿¡å´ãæ¾æ£ããã¦ãã¾ã åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ã´ã«ã¼ãã³(goroutine) ã£ã¦ãã¨ã¦ã便å©ã§ããããã¾ã«ãªã¼ã¯ããã¦ãã¾ããã¨ããã£ãããã¾ãã åºæ¬çãªãã¿ã¼ã³ã¯æ±ºã¾ã£ã¦ããã®ã§ãããâ¦
æ¦è¦ éä¿¡ãããã¨ãã¦ãããåä¿¡å´ãããªããªã£ã¦ãã¾ããã¿ã¼ã³ åä¿¡ãããã¨ãã¦ãããéä¿¡å´ãããªããªã£ã¦ãã¾ããã¿ã¼ã³ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ã´ã«ã¼ãã³(goroutine) ã£ã¦ãã¨ã¦ã便å©ã§ããããã¾ã«ãªã¼ã¯ããã¦ãã¾ããã¨ããã£â¦
æ¦è¦ éä¿¡å´ãå¿ãã¦ãã¾ã£ã¦ãããã¿ã¼ã³ åä¿¡å´ãå¿ãã¦ãã¾ã£ã¦ãããã¿ã¼ã³ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã ã´ã«ã¼ãã³(goroutine) ã£ã¦ãã¨ã¦ã便å©ã§ããããã¾ã«ãªã¼ã¯ããã¦ãã¾ããã¨ããã£ãããã¾ãã åºæ¬çãªãã¿ã¼ã³ã¯æ±ºã¾ã£ã¦ããã®â¦
æ¦è¦ ãµã³ãã« runtime.Caller runtime.Callers åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã runtime.Caller() 㨠runtime.Callers() 㧠skip ã« 0 ã渡ããã¨ãã®çµæãå°ãã ãç°ãªãã®ã§ãå¿ããªããã¡ã«ã¡ã¢ã¡ã¢ã runtime.Caller() ã®æ¹ã¯ã0 ãæå®ããã¨â¦
æ¦è¦ åèæ å ± æ¦è¦ ããããåã«è¨äºã§æ¸ãã Python.NET (pythonnet) ããé·ããã®å¬ç ç¶æ ããæã㦠3.0.0 ã®ã¡ã¸ã£ã¼ãã¼ã¸ã§ã³ã¢ãããæãããã¿ããã§ããã www.i-programmer.info github.com ãªãªã¼ã¹ãã¼ã¸ã¿ãããããªãã®æ°ã®PRãå ¥ã£ã¦ãããâ¦
æ¦è¦ åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ããã¾ã ãã¡ããã¨èªãã§ããªãã®ã§å¿ããªããã¡ã«ã¡ã¢ã¡ã¢ããã JetBrains ã® GoLand ã®ããã°è¨äºã«ã¦ã以ä¸ãã¢ããããã¦ãã¾ããã blog.jetbrains.com Goã®ãã³ãã¬ã¼ãæ©è½ãããã便å©ãªã®ã§ããã®ãããªâ¦
æ¦è¦ ãµã³ãã« åèæ å ± æ¦è¦ 以ä¸ãèªåç¨ã®ã¡ã¢ã§ãã使ãããã¨ãã«ããå¿ããã®ã§ãã ãµã³ãã« # ç©ç CPU ã®æ° $ grep physical.id /proc/cpuinfo | sort -u | wc -l 1 # CPU ãã¨ã®ã³ã¢ã®æ° $ grep cpu.cores /proc/cpuinfo | sort -u cpu cores : 8 â¦