LoginSignup
1
0

More than 5 years have passed since last update.

プログラミング学習 講義内容 8/16

Posted at

・これまでの復習
三人の人から発表(今までの学習内容)
1.山本君:LESSについて
CSSの無駄をそぎ落としたもの
特徴:階層化できる、演算できる、ミックスインできる

階層化

これ
header{
font-size:20px;
color:red;
}
header a{
font-size:20px;
color:blue;
}

こう
header{
font-size:20px;
color:red;
}
a{
color:blue;
}
できる。

ミックスイン
color→変数
font-size 15px
padding 10px
margin 5px
としたい場合、
.mix-in(@color){
color:@color;
font-size:15px;
padding:10px;
margin:5px;
}

とすることで、例えば
h1{font-size:20px;
.mix-in(red)
}

color→red
font-size 20px
padding 10px
margin 5px
になる。

補足
lessc ~~(LESSファイルの名前).less ~~(CSSファイルの名前).css
というコマンドを打つことでLESSファイルを召喚できる

2.倉田くん:名前空間namespace
使用目的:クラスの名前が呼び出すときに被っていても使えるようにするため
→requireで読み込んだりすると被っていたらエラーが出る(namespace無しの場合)

使い方
namespace 名前空間名;
で指定できる。一つのファイルに複数の空間名を付けることお可能
※namespaceの前には命令文とHTMLを記述しない

名前空間も被る場合
サブ名前空間をつくる
namespace 名前空間/サブ名前空間名/サブ/サブ/...

名前空間が長すぎるときにはuseを使う
use oo/xx/ii as AA;
でAAがoo/xx/iiというnamespaceというものにすることができる。
<?php
require_once'tokyo.php';
use asia/japan/kanto/tokyo as tokyo;

これで
asia/japan/kanto/tokyo を tokyoという形に省略することができた。(どこまでを省略するかは自由!例:kantoまでをasで違うものに置き換えてtokyoは残す、など)

3.西村君:オブジェクト指向
メリット
あらかじめ変更が予想される個所をクラスとして個別にまとめておくことで柔軟に変更に対応できる。
必要な知識
クラス:主に設計図。
インスタンス
例:車を作るときの設計図。スピード、色とかの要素は関数。
逆にその設計図の中でスピード、色を決めたら車が出来上がるというようなものにする式がインスタンス

カプセル化:外部から見て簡単に見えるものを作る、不必要に複雑な部分は外部から見て隠す
そのクラスの中での変更をそのクラス内だけにできる

ポリモーフィズム:異なる動作を同じ命令で実現すること
例:走れ!とコマンドすると自動車では「ブーン!」自転車では「シャー!」と表示される、といったイメージ
クラスによって、そのコマンドによって出てくる

interface~~~{}
としておくと、その中で決めておいたもの決めずに実行したときにエラーを吐くようにできる
テンプレート(interfaceの中)に従ってもらえるようにする
他にもabstractがある

クラスの中で使われる関数:メソッド
クラスの中で使われる変数:プロパティ

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0