なずブログ

インフラSE、Java開発、リモートワークエンジニアな人のメモ帳

職業訓練の授業~37日目~htmlの基本

f:id:nazuna_0124:20170228225206p:plain

内容:タグ打ちとCSS

昨日までの小難しい内容とうってかわって、おなじみのHTMLさんです。

高校レベルでも学校によっては学習済みらしく。ここも未経験という方はやや少なめ。

SQLを復習するよい時間ですが、タグとか初めて知った人はそろそろきつそうです。

最終的にデザインを渡されてWebサイト作るところまでやるのだそうな。

WEBデザイナー部隊がアップを開始しています。


ここで気になるのは、今後プログラムをやるにあたってタグ打ちをちまちまがんばるかです。

タグとじやら候補予測とか補助的なものから、AMMETとかオーサリングツールとかに頼るべきなのか。


簡単にPHPやってみた感触からすると、手打ちを覚えたほうが結果的に早いのではないかと。


タグ打ち出来るようになってからツールに頼るべきなのでしょうねー。


プログラムの各種フレームワークもきっとそうなのでしょうなっ。

職業訓練の授業~36日目~

f:id:nazuna_0124:20170223232525p:plain

内容:SQLテスト。ビュー、トリガー。

本日は6日間続いたSQLのテストの日でした。

紙資料のみ持ち込みOK

ぐぐったり、コマンド試すのはだめというペーパーテストです。

割りと珍しく全て選択肢でした。

難易度はというと、ちょっと簡単すぎるような…。

もともと範囲が広い割に作らなきゃ行けない部分もあり駆け足気味。

肝心の、自分がうろ覚えだからテストに出してほしい箇所が出てません。 (サブクエリとか、トリガーとか)

こっそり重要だけど忘れがちなトランザクションがないのも残念。

さらに


ちょっとだけ改変して問題一覧をブログにのせようかなーとか思ってたら

なぜか問題も回収された!


そーゆうわけで、以下は忘れそうな内容のメモ書きです。

列の追加

alter table tbl_name add col_name int;

どーにも慣れない。

後から主キーの追加

alter table tbl_name add primary key (col_name);

すでに主キーが設定してあるとこに足して複合キーはできません。

一旦外す必要があります。

alter table tbl_name drop primary key;

triggerのnewとold

起点テーブルの動作を元に行動前か後かを選択できる。

create trigger test after insert on tbl_read for each row insert into tbl_write(id,name) value (new.id,new,name);

delimiter

ストアドプロシージャとか作るときに使う。

一時的な;の変更。

delimiter //

ストアドプロシージャ

VBA使いには作り方は慣れたもの。

問題は使いみちがあまり思い浮かばないこと

ストアドファンクション

こっちもおなじみ。ただし、授業ではやってません。

プロシージャも資料だけ渡されて早めに終わった人はみといてねシリーズ。

なんでないんだーということで、ざっくりぐぐってみました。

こっちはよく使うのでたぶんだいじょーぶ。

他の方法が取れる場合に速度とかのが重要。

ぐぐらずにがんばってほしいこと~文の末尾を削除する~

プログラムをぐぐってソースをコピーするのは功罪あります。

ちなみに学校の先生はぐぐること自体に否定的。

これは論理的な話ではなく感情的なところが見え隠れするので、 詳しく聞いてみて別途書いてみます。


考える力とやらはどうしても必要になります。


どこでそれをさせるかですが、文の末尾を削除するのは結構よいのではないかと。


  • 文の文字数をカウントする方法を教える。
  • 先頭から指定文字数文まで抜き出す方法を教える。

では、これらを使って文の最後の一文字だけ削除する方法を考えてみてください、とやるわけです。


「最後の一文字を削除」の言い回しがとっても曲者です。


○○が起こらない確率 = 1 - ○○が起こる確率

みたいな言い換えが必要なイメージ。



自分で作成したら他に方法がないかぐぐってみましょーと続きます。



30分ほどかけてわからなければ、ある種のセンスがない疑い。

教え方を考える必要があるんじゃないかなーと。

タイピングゲームつくってみたい

プログラム単語練習用のタイピングがいまいちいいのが見つかりません。

なかったら作ればいいじゃないということで、javascriptの練習がてら作成してみることに。

気に入ったのがないのはタイピング練習してる暇があるなら、そもそもコード書けって話かもですが気にしません。


ちょうどドットインストールさんに講座があります。

動画文は作り(写し)終えたので何を追加するかを検討します。

以下は気になる点やら仕様案など。

使ってほしい対象者

英字タイピングでWPM130~200くらいでプログラム未経験の人。

低すぎる場合はそもそもブラインドタッチができないとして他を誘導。

キーの同時入力が受付できない

ほとんど同時みたいな入力は受付できないようです。

かなり早く打った場合のみなのでここは直しません。

全体的な仕様はe-typingさん

  • 時間制限ではなく単語数しばり
  • WPM表記
  • でもキーボード画面は出しません

とりあえずSQLで作ろう

booksテーブルでid=3 の行のbook_nameを変更してね。といった文章を表記。

実際のコマンドを打ってもらいます。

出題は課題で使ったものを使用し復習をかねます。

ゲーム要素もいれたいな

  • タイピングした総時間を計測したい 結局は使った時間です。そのへんのモチベをなんとかしたいところ。

  • 1日15~30分程度つかってほしい てきとうにカバー

納期

1週間で形にならなかった諦めます!

プログラムが上手く行ったときにガッツポーズしたのを見られた

f:id:nazuna_0124:20170225095503p:plain

なずな「えー なんかエラー出てる。なんでー」



PC<だめです

「ここかな。 どう?」


PC<XXXXが見つかりません。


「えー! いや あってるよ? ほらほらちゃんとみて」


PC<見つかりません。



「むがー!! あ ここがおかしいのか。 これでどーよ!?」





PC<




「キタ━━━━(゚∀゚)━━━━!!」




通りすがりの先生「うまくいくとでるよね~(・∀・)ニヤニヤ」




もう少し周りを見ながらプログラム…は絶対無理なので仕切りがほしいです。




SEは病む人が多いらしい。



駄目な時は怒られるのに、うまく行った時は何も言ってくれないPCにも原因があるんじゃとか思いました。

職業訓練の授業~35日目~

f:id:nazuna_0124:20170224215942p:plain

内容:SQLのテーブル結合をいろいろ

ひぃぃぃ 背中がかゆい!!!


どうやら新しく買ってみた柔軟剤が合わないようです。



痒くて授業に全く集中できません。




なずな<「そうだ。痒みを忘れるためになんでもいいから作業に集中しよう」


というわけで本日も全く聞いてません。そろそろこのブログの存在価値があやしくなってきました。

おぼろげに聞いた限りでは、leftjoinの話とcaseの話してました。

caseって使い方なのねー。Accessじゃiifでした。


でもせんせー、そこで別にcaseいらないんじゃないかしら。 わたし使ってないですわよ。

そんなことより気になるのは周りの子達に聞かれた内容。

問題自体は外部結合のおはなし。


  • 図書管理の問題

  • テーブルは3つ 本テーブル、利用者テーブル、貸出表テーブル

  • 最初に一度も借りられたことのない本をselect これはSQLが例として提示

  • 問題として利用者の借りた本の一覧をselectしなさい



[利用者テーブル]←[貸出表テーブル]

こうくっつけるだけです。どーもこれがピンきてない様子

たぶん何かが頭に入ってなくてイメージしにくいんじゃないかと。

そーいえば、わたしはGUIでの表示をイメージしつつSQL書いてます。

う~ん、真剣にGUI使いつつ覚えて貰う方法を検討してみます。

そんなことを考えつつ、作りたいシステムに使うサンプルデータを ちまちま作成してました。

職業訓練の授業~34日目~

f:id:nazuna_0124:20170223232525p:plain

内容:さらにSQLを詳しく

なずな はレベルがあがった!  

innner join を おぼえた! left join を おぼえた!

AccessVBA時代にもっとも曖昧だった部分。

テーブル結合が本日のお題。

これでようやくクエリオブジェクトを作って、 SQLビューからちまちまコピーする生活から開放されます。

今までは長すぎていやになってたようなSQLも随分書けるようになりました。

これも授業のおかげです。(ちゃんと聞いてたとは言ってません

もう一つのお題は参照整合性。こっちも大事。

面倒になるので今まで使ってなかった部分です

親側を更新したときに子側も自動更新してくれる機能なんてあるのね~

このあたりはどーにも理解しにくかった様子。

絶対まだデータベース自体ピント来てない人いるもの。

最近の勉強の流れ

  • 課題を貰ったら授業そっちのけで進める。
  • 作業手順や回答をMarkdownで手早くメモ
  • HTMLに変換してVmwareで起動してるサーバーに放り込む
  • サイト更新まで終わったらやりたいことやる

こんな手順です。作ったもので復習、わかんない人向けの資料、 ブログ書くためのメモと大活躍。

作ってるサイトのCSSをもうちょっと考えられたらばっちしですね。

まだまだ覚えることはてんこもり。

ざくざくいきましょー。