- 繰り返し行う作業は自動化する
- ビルド、デプロイ、静的解析、テストを簡単に、漏れなく行えるようにする
- ドキュメントなども生成可能な部分は生成する
- 分かりやすく適切な、良い名前を付ける
- 変数、メソッド、クラスなど、命名するもの全てに注意を払うこと
| require 'webrick' | |
| require 'json' | |
| require 'net/https' | |
| def apipost | |
| puts "apipost" | |
| uri = URI.parse("https://slack.com/api/chat.postMessage") | |
| http = Net::HTTP.new(uri.host, uri.port) | |
| http.use_ssl = true | |
| http.verify_mode = OpenSSL::SSL::VERIFY_NONE |
| require 'webrick' | |
| require 'json' | |
| server = WEBrick::HTTPServer.new(Port: ARGV.first) | |
| server.mount_proc '/' do |req, res| | |
| result = JSON.parse(req.body) | |
| action = result["action"] | |
| comment = result["comment"] | |
| username = comment["user"]["login"] | |
| content = comment["body"] |
| // Use Gists to store code you would like to remember later on | |
| console.log(window); // log the "window" object to the console |
| (use gauche.sequence) | |
| ;; マイナンバーのチェック計算 | |
| ;; dataPair = ("11桁の数値文字列" . チェックデジット) | |
| (define (calculateMyNumber dataPair) | |
| ;; チェックデジットの判定 | |
| (define (judgeDigit modValue checkDigit) | |
| (cond ((= modValue 0) (= checkDigit 0)) | |
| ((= modValue 1) (= checkDigit 0)) | |
| (else (= checkDigit (- 11 modValue))) )) |
| 具体例) | |
| feature ブランチから feat/Proc1 を作成して作業していたが、push前に1つにまとめたい場合。 | |
| 1. まずは作業していたブランチをリネーム | |
| $ git branch -m feat/Proc1 feat/Proc1_hist | |
| 2. feature ブランチからコミットログの無い feat/Proc1 を新たに作成 | |
| $ git checkout feature |
| require 'net/ftp' | |
| ftp = Net::FTP.new | |
| ftp.connect('IP', 'PORT') | |
| ftp.login('USERNAME', 'PASSWORD') | |
| p ftp.pwd # 現在のディレクトリを表示してみたり | |
| ftp.put('ftp_connect.rb') # ファイルを転送したり | |
| p ftp.ls # 一覧を取得してみたり | |
| ftp.quit |