BNBのプログラミング勉強記録

ガチのプログラミング初心者が駆け上がっていくブログ

メモ(Rails道場 II)

ミスったところ。 バリデーションの書き方 タイポ、カラムの指定忘れ、カンマ忘れ。まあ、書き方忘れてたら見ればいいんですがね。どのくらい身についてるのかなあと。 #ボツ class Post < ApplicationRecord valiates :{ presence:true, length:{maximum:14…

メモ(Rails V)

バリデーション Validation=検証 不正なデータがデータベースに保存されないように、データをチェックする仕組みのことをバリデーションと言う バリデーションに引っかかった場合(不正なデータの場合)にはデータベースに保存されない モデルで設定する。 …

メモ(Rails IV)

上書き post=Post.find_by(id:1) post.content="hoge" post.save 削除 post=Post.find_by(id:1) post.destroy 上書き(実際にビューとコントローラにて) <div class="main posts-new"> <div class="container"> <h1 class="form-heading">編集する</h1> <%= form_tag("/posts/#{@post.id}/update") do %> <div class="form"> <div class="form-body"> </div></div></div></div>

メモ(React道場レッスン I)

ミスったところ等。 eachの書き方(根本的にだめ) #ボツ hoge.each |hoge| do #正解 hoge.each do |hoge| each宣言部分を「%=」にしちゃってた 「=」を付けるとprintされちゃうので、データベースの余計な部分がそのまま表示されてしまった #ボツ <%= @p…

メモ(Rails III)

find_byメソッド ある条件に合致するデータを取得することができる post=Post.find_by(id:3) #中略 post.content id 「posts/:id」と書くと「/posts/◯◯」のような全てのURLが該当 「posts/:id」というルーティングは「posts/index」より下に書かなければいけ…

メモ(Rails II)

埋め込みRubyの基本 一覧ページを作成する時は、indexというアクション名を使用することが一般的 index.html.erbのようなerbという形式のファイルでは、HTMLファイルの中にRubyのコードを記述することができる。「erb」とは「Embedded Ruby(埋め込みRuby)…

メモ(HTML & CSS 中級 道場レッスン )

手こずった箇所、ミスった箇所など。 ブロック要素を左右に並べ、右は右に寄せる <footer> <div> Progate </div> <ul> <li> 会社概要 </li> <li> 採用 </li> <li> お問い合わせ </li> </ul> </footer> footer div{ float:left; } footer ul{ float:right; } 忘れていたCSS要素 background-size: cover;・・・1枚の画像で表示範…

メモ(Rails I)

フォルダとか作成 ターミナルにて「tweet_app」フォルダとその中に多くのフォルダとファイルが作成される rails new tweet_app サーバー起動 rails server トップページ自動生成 このコマンドを実行すると、新しいWebページが自動で作られ、「localhost:3000…

メモ(React IV)

基本 フォームが送信されたときに処理を実行するには、formタグに対してonSubmitイベントを指定する フォームの入力や削除が行われたときに処理を実行するには、onChangeイベントを用いる。inputタグに対してonChangeイベントを指定する。 入力値の取得は、o…

メモ(React III)

総合演習 構造は下記のとおり。 Appで各コンポーネントを配置 MainにてLessonのstateを定義し、mapメソッドにてLessonコンポーネントを表示。 Lessonにてコンストラクタ設定 コンストラクタに、イズオープンのstateを追加。初期値はfalse こっからトリッキー…

メモ(React II)

基本 JSXにクラス名をつける場合、HTMLと書き方が違うため注意 クラス名は「className='クラス名'」 コンポーネントは「部品」や「パーツ」という意味。Reactでは、見た目を機能ごとにコンポーネント化して、コンポーネントを組み合わせることでWebサイトの…

メモ(React I)

Reactを読み込んでrenderにjsxを記述 JSXとJS ( JavaScript ) の記述部分は分かれている renderメソッドのreturn内のみ、JSXで記述する必要がある JSXで記述された要素はブラウザに表示される import React from 'react'; class App extends React.Component…

メモ(javascript V)

エクスポートとインポート(defaultエクスポート) クラスや定数をエクスポートしてインポートしたらインポートしたファイルで使える デフォルトエクスポートは1ファイル1つの値のみ(なのでimportで違う定数名にしても読み込める) export default Animal; …

メモ(javascript IV)

クラス定義、コンストラクタ、引数にてクラス呼び出し class Animal { constructor(name,age) { this.name = name; this.age = age; } } const animal = new Animal("モカ",8); console.log(`名前: ${animal.name}`); console.log(`年齢: ${animal.age}`); …

メモ(Python V)

継承 from menu_item import MenuItem class Food(MenuItem): pass オーバーライドとsuper menu_item.py class MenuItem: def __init__(self, name, price): self.name = name self.price = price def info(self): return self.name + ': ¥' + str(self.pric…

メモ(Python IV)

クラス作成とインスタンス生成 class MenuItem: pass menu_item1=MenuItem() インスタンス変数への値の代入と出力 menu_item1に「name」が「サンドイッチ」であるという情報を追加することができる この時、「name」のことを「インスタンス変数」と呼ぶ clas…

メモ(Python III)

関数の定義と呼び出し def print_hand(): print('グーを出しました') print_hand() 仮引数 def print_hand(hand): print(hand+'を出しました') print_hand('グー') print_hand('パー') 複数の引数 def print_hand(hand,name): print(name+'は'+hand + 'を出…

メモ(Python II)

基本 配列のことはリストという。[1,2,3]と記述 インデックスは0から。他と一緒。 例 print(foods[0]) というように出力。これも同じですね〜 上の「同じ」っていうのが、これまで学習してきたjavascript、Ruby、Java、phpのどれと同じってところまでは正直…

とりあえずphpを動かした

php

ちょい手こずった。ただ、ネットで検索しまくると、なんとかなるもんだな。以下MacOS12.6.4での今日時点で俺がやったこと(試行錯誤しまくったので最短だとこうなるかな、と整理して書いた)。もっとおすすめがあればご教示いただけると幸い。 ファインダー…

メモ(php IV)

感想 すっげー難しかった。ダメかも・・。配列とコンストラクタとゲッターが合わさると頭がこんがらがる。ただ、どこが難しかったかは分かる。そして一つ一つの意味も分かる。組み合わさった時に訳が分からなくなる。どうすればいいんだ。やっぱ自分で一から…

メモ(php III)

基本 インスタンスの数を把握するには?→インスタンスの数は個々のインスタンスではなく、クラス全体で管理する必要がある→「クラスプロパティ」というものを用いるとこれを実現できる 個々のインスタンスがもつデータはプロパティ クラスがもつデータはクラ…

メモ(php II)

色々 インスタンスの生成はクラスの外 インスタンス生成は $変数名 = new クラス名(); クラス(設計図)にはそのインスタンス(実体)が持つ「プロパティ」と「メソッド」の2つを定義 プロパティとはインスタンスが持つデータのことで、メソッドはインスタ…

メモ(Java V)

色々 継承の概念は、先に学んだRubyと同じ感じの様子。 継承されるクラスを「スーパークラス」、継承してできる新しいクラスを「サブクラス」と呼ぶ 継承を用いて新しくサブクラスを定義するときは、「class サブクラス名 extends スーパークラス名」として…

メモ(Java道場 II)

間違えたところ scanner.nextInt()をscanner.next()にしていた scannerの変数を、前と同じものにしていた(とは言うものの、同じものにしていてもいけたかも) 変数いじくる際の「this.」付け忘れ(なんでだろうね。) 新たに追加した変数をインスタンスフィ…

メモ(Java IV)

基本 オブジェクト指向で大事なのはクラスとインスタンス。 インスタンスというのはオブジェクトの別名 クラスはインスタンスの設計図 例えば、「名前」「年齢」という情報と「あいさつする」「歩く」という振る舞いを持つ人間のインスタンスを作るのであれ…

メモ(Java 道場I)

ミスったところ1(引数の指定が抜けている) import java.util.Scanner; class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("名前:"); String firstName=scanner.next(); System.out.pr…

メモ(Java III)

基本 メソッドとは、何らかの処理を割り当てた部品 Javaのファイルを実行すると、自動的にmainメソッドが実行される mainメソッドの処理をメソッドに切り分けると、mainメソッドが各メソッドに指示を出し、各メソッドが個々の処理を実行するという構造 今の…

メモ(Java II)

基本 booleanはブーリアン型。ブール氏由来らしい 比較演算子は他と同様 論理演算子も一緒 !(x >= 30)は「xが30以上でない」 ifの書き方・・・if(x==1){ } if文の{ }という記号・・・ブロック。 ifの{ }の後ろにはセミコロンは不要 elseとelse ifを使う whir…

メモ(Java I)

基礎 javascript、Ruby、php、Pythonとやってきたけど、Javaなんかすげえ癖ありそう・・。System.out.printlnとか最初からなんかキモいわ コメントアウトは // JavaもPython同様データ型の概念あり。 変数定義するときに、まずデータ型を宣言する。めんどい…

メモ(Python I)

基本 文末にセミコロンとかいらない 四則演算は他と一緒 出力はprint() ※文字列はシングルかダブルクォーテーションで囲む 変数の頭に$とかいらない 2語以上の変数は「_」で区切る(他の言語だと大文字で区切ったりするけど、なんで言語ごとに違うの?アン…