My TIPs for the programing

プログラミング学習記録

letter_openerの設定と起動

letter_opener_webは、開発環境用で実際にメールを送信して確認できるgemです。 letter_opener_webを使用すると、/letter_openerへアクセスしてメールが届いているか確認することができます。 ###実際にletter_opener_webをインストール letter_opener_webは…

scaffoldで簡単お問い合わせ機能

rails db:create rails new ののち。。 $ rails g scaffold Contact name:string email:string content:text ファイルがいっぱいできる。 Running via Spring preloader in process 17820 invoke active_record create db/migrate/20171118042216_create_con…

【テストプログラム3】

完成形 (janken2.rb) # 判定部分のみをクラスに。 PLAYER_INPUT_TO_INTEGER = {'g'=> 1 ,'c' => 2 ,'p' => 3 } MACHINE_INTEGER_TO_INPUT = { 0 => "g" , 1 => "c", 2 => "p"} MACHINE_LIST_JANKEN = ["g","c","p"] GCP_TO_JAPANESE = {'g'=>'グー','c' => '…

【テストプログラムを作成2】クラスの変数【ruby】

syntaxエラーが発生。 先輩さん曰く、irbを起動してコピペしてはっつけてみると良いとのこと。 irb(main):001:0> result = (player_123 - machine_012 +3)% 3 SyntaxError: (irb):1: syntax error, unexpected tINTEGER, expecting keyword_do or '{' or '('…

【テストプログラムを作成1】test/unit

作成したじゃんけんプログラムをテストしたい。 エラーに次ぐエラーで勉強になりました test/unitというgemを使うらしい。これは初めて使うのでインストールされているか確認。 $gem list test *** LOCAL GEMS *** minitest (5.8.5) test-unit (3.1.5) あり…

【ruby】getsで文字列を取得する場合の改行文字

getsによりコンソールで文字列を取得する場合 文字列入力後にエンターキーで確定する。 このエンターキー入力が改行文字としてgetsは取得してしまう。 (test.rb) str = getsp str $ ruby test.rb 腑に落ちない "腑に落ちない\n" これを防ぐには、、 gets.c…

format関数の引数・・%03d"とは

3桁以下の数字を変換する課題(例:4 => 004) にて・・・ puts"数字を入力"num_i = gets.to_i*2 puts format("%03d", num_i) formatを初めて使った。 format(format, *arg) -> String format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォー…

破壊メソッドと日破壊メソッド

rubyでアルファベット小文字の入力値を大文字に変換して出力する課題にて・・ puts "入力してください"input = getsoutput = input.upcase!puts output このコード。 upcase!は破壊メソッドだから、inputの値を変更する。 ここではoutputという変数を使って…

エディタと文字コード

sjisとutf-8でこんにちはを表示する課題で・・ はまりました。 atomエディタのデフォルトの設定はutf-8です。 その状態でhtmlファイルを作成してmetaタグで文字コードをsjisに指定。→文字化け。 atomのcore settingsで文字コードを編集して対処した。 だがこ…

【sinatra】rubyをerb(html)上で使用する

sinatraではルーティングを.rbに、ビューを.erbに記述するのでした。 html上で、フォームの取得値等のインスタンス変数を利用するときなど、rubyを使用する際のtipsです。 ex.erb____________________________ <% price = 125500 * 1.08 %><p>パソコンの値段は<</p>…

【http】メソッド【get post ...】

説明にsinatraを使用したコードを利用しています。 GETメソッド サーバー側にリクエストを送信します。 URLの末尾に情報が付与されているため、簡単に送信内容が確認できますが、セキュリティー的な問題があります。 .rb__________________________ require …

【ruby】オートリロード:sinatra/reloader【sinatra ライブラリ】

(On the terminal) gem install sinatra-reloader (On the .rb file)require 'sinatra/reloader'

【html】基本的なフォームのタグ、スタイル

<html><head> <meta charset="UTF-8"></head> <body> <h1>お問い合!せ</h1> <form type = '/a'> <div> お名前:<input type = "text"> </div> <div > メール:<input type = "text" name = "email"> </div> お問い合わせ内容: <br> </form></body></html>

【sinatra】とは

Sinatraは最小の労力でRubyによるWebアプリケーションを手早く作るためのDSLです。 DSL: 独自言語 Sienta自体は外部ライブラリのGemなので、gem inastall & require で使用できるようになります。 同様のフレームワークとしてはRubyOnRailsが有名ですが、こ…

【ruby】条件によってreturnを変える場合【再起処理とか?】

テキストを見ていて唐突に出てきた構文です。ググり方が下手なのか調べても出てこないんです。。 たぶんこういうこと・・・ def function() return <条件式がtrueの場合の出力> if <条件式> <条件式がfalseの場合の出力> end p function ソースコード例・・…

【ruby】ターミナルから入力値を取得

number = gets.to_i 数字をinteger型で取得しています。

【ruby】文字列を1文字ずつ分割してリストに入れる。

ソースコード string = "OOIUssdkj" list = string.split("") p list 実行結果 ["O", "O", "I", "U", "s", "s", "d", "k", "j"]

【ruby】attr_accessor でインスタンス変数の操作【オブジェクト指向】

attr_accessor を用いずにインスタンス変数を操作(アクセスメソッド) class School # nameというインスタンスメソッドを定義する def name=(value) @name = value end def name # インスタンス変数のため、メソッド間で使用できる @name end end school = …

【ruby】ライブラリの種類

組み込みライブラリ そのまま使える 標準ライブラリ require で使える 外部ライブラリ gem install の後 require で使える

【Linux】エイリアス alias

エイリアスを設定することでコマンドを省略して実行できます。 覚えやすくしたり、操作が簡単になります。 (ex) alias ls='ls -F' Googleで調べるとたくさん省略例がでてきますので、使えそうなコマンドはどんどん使っていきましょう。 aliasを使うことで、…

【Linux】コマンド

pwd カレントディレクトリを表示 mkdir カレントディレクトリの直下に新たなディレクトリを作成 ls カレントディレクトリの配下にあるフォルダやファイルを表示 cd (ディレクトリ名) カレントディレクトリの移動 !ディレクトリ名を指定しない場合(cdのみ)…

【ruby】メソッドと戻り値

def division(n,y) if y == 0 return "割れないよ" end n / y end 以上のコードでy=0だった場合、n/yは実行されずに、割れないよと表示されます。 すなわち、return にはメソッドを終了させる働きもあります。

【ruby】each文

配列,範囲オブジェクト.each do |変数名| 処理 end コード例 fab = ["hance","maizer","yukino"] fab.each do |chara| puts charaend 出力 hancemaizeryukino 以上、リストに対してeach文を適用しましたが、ハッシュにも適用可能です。 コード例 fab = {rokk…

rubyのハッシュ(辞書)の書き方は3種類ある。

{: yuigahama => "yui", : yukinosshita => "yukino", :kawasaki => "saki"} {"yuigahama" => "yui", "yukinoshita" => "yukino", "kawasaki" => "saki"} {yuigahama: "yui", yukinoshita: "yukino", kawasaki: "saki"} #頻度高め

rubyを対話型で。

ターミナルで irb

【javascript】バックオート

テキスト内に変数を埋め込む場合に使用します。 console.log( `あなたの成績は${achivement}です。${pass_or_failure}です!`) //バックオート``変数をテキストと一緒に表示

jQuiry 指針

$('h1').on('event', () => { //処理 }) イベントを設定したい要素を取得する その要素にイベントを設定する イベントが発生した時の処理を実行する TIPs ・このfunctionをイベントハンドラと呼ぶ。

【javascript】スタイルプロパティーをDOMにて与えること。その注意点【キャメルケース】

javascriptにおけるDOMでは、以下のようにスタイルプロパティを設定します。 node.style.prop [= value] // node: 対象のノード prop: スタイルプロパティ value:設定値 .cssファイルで、次のようなスタイルを設定するとします。 { text-decoration: line-th…

【javascript】イベントオブジェクト

addEventListenerの、イベントを記述するfunction()のかっこでは、イベントオブジェクトを設定できます。 node.addEventListener('click', function(e) { // eがイベントオブジェクトです},false); console.log(e.target) TIPs ・イベントオブジェクトには情…

【DOM】【javaScript】インラインスタイルにアクセス、操作する

これまで私が触れてきたCSSは.cssファイルにコードを記述し、<head>にてCSSファイルを読み込むものでした。 javascriptにおけるDOMでCSSを操作する場合、htmlファイル中のタグに直接スタイルの書き込みを行います。このやり方は「インラインスタイル」と呼ばれます</head>…