よしきた!!"ハイパーテキストマークアップランゲージ"の時間だぜ
今まで、rubyを学んできましたが理解できたところでどうなん??
となっています。
なので、次にhtml,cssを勉強して行こうやないかと。
htmlぐらいはもしかしたら学校で情報の時間にチラッと触ったことがある方がいらっしゃるかもしれません。
HTML(Hyper Text Markup Language) ← 響きだけはカッコイイ。中二とか使いそう。。
htmlは、文字を表示させる言語とでも言いましょうか。
cssは、文字を装飾する言語とでも言っておきましょう♪
実際このブログにも、使われている物なんですよ。
右クリックで、検証を行うと文字列がたくさん並んでいると思います。
<html>とか<head>とか
<body>とか<div class="">とかね。
これがいわゆるhtmlで、htmlは文字を表示させる言語です。
これだけだとなんとも寂しいのでcss(装飾)を用いて鮮やかにしてくのがイイでしょう。以下が、css
h1,h2,h3,h4,h5,h6 {
}.title {
font-weight: bold;
} .title--big {
font-size: 1.5em;
font-weight: bold;
i {
font-style: italic;
font-size: 1.8em;
}
}
header.header {
@include basePadding;
こんな感じなんだぐらいでいいと思います。(テキトーに)
html cssは自分自身はかなり、はや足で終わらせました。確かに、基礎は出来てないかもしれませんがまたあとで戻って来ようと思っています。
とにかく、早くweb applicationを作れるところまで持っていきたいので。。。
引数って、なんかわかりにくいよね
引数ってなんて読むの???
いんすう??
引数 (ひきすう)だそうです。
でも、とにかくわかりにくい(初心者には)
調べてみると、
例えば「料理」という関数に「材料」という引数を渡して料理をしてもらうイメージ。
うん。わからん!!!
さらに、一言で言うと、
プログラムや関数に渡す値
だそうです。
そもそも、引数はこんな時に使用します。
class Hello
def self.hello(aaa)
puts "こんちわ!#{aaa}"
end
Hello.hello("bbb")
Hello.hello("ccc")
Hello.hello("")
#実行結果
- こんちわ!bbb
- こんちわ!ccc
- こんちわ!
引数に当たる部分はaaaの部分ですね。
簡単に言うと、aaaの部分だけ任意にデータを挿入できて、そのほかの処理は変えずに実行できるものです。
hello メソッド(def self.hello)の中身は、"こんちわ!()"を出力する処理です。
もしも、引数の中身を指定しない場合は 3の"こんちわ!"だけ出力されます。(この場合引数には("")が必須です!もし入れないとエラーが起こります)
引数を使うと、aaaの部分を、bbbに変えたりcccに変えたりできます。もちろん、他の物にも変えれます。
引数は"引っ張ってこれる変数"の略じゃないかなと思います。
基本、変数が使える範囲(スコープ)が限定されていますが、それでも使いたいって場合に引数を使う。
こう言う特性を使って例えば、引数を名前にして、処理を新規登録を行う処理にすると、名前だけ引数に与えてやれば勝手に新規登録してくれるみたいなことだってできちゃうかもしれません。(あくまで、予想ですが。。)
def registration(name) #新規登録する処理をかく end
nameに"dossy"を入れると新規登録してくれる!
まぁ、でも結局慣れやと思います。勉強だけでなく何にしても慣れが必要ではないでしょうか?
あんまり、引数で考え込まずに気楽に次々行くんやで〜〜〜
超初級プログラミング問題 fizzbuzzを解いてみる
プログラミング問題を解いて見ようと思います。
プログラミング問題は、プログラマーの技術を測れる物らしいのですね。
例えば、これレベルが解けたらなかなかのレベルだ!!!とか、
こんなのも解けないのなら初心者だな!!!とか。
まぁ、初心者なんだから解けなくても当たり前ですよね.......
そこで、今回はfizz buzz問題を解いて見ようと思います。
超有名問題みたいですよ♪♪♪
”fizzbuzz問題 ”
1〜100までの数字を出力してください。ただし、「3の倍数」のときは数字の代わりに文字列でfizz、「5の倍数」のときはbuzz、両方の倍数である「15の倍数」のときはfizzbuzzと出力。
なるほど、ちなみに出力結果は以下のようになれば正解です。
1 2 fizz 4 buzz fizz 7 8 fizz buzz 11 fizz 13 14 fizzbuzz 16 17 fizz 19 buzz fizz 22 23 fizz buzz 26 fizz 28 29 fizzbuzz 31 32 fizz 34 buzz fizz 37 38 fizz buzz 41 fizz 43 44 fizzbuzz 46 47 fizz 49 buzz fizz 52 53 fizz buzz 56 fizz 58 59 fizzbuzz 61 62 fizz 64 buzz fizz 67 68 fizz buzz 71 fizz 73 74 fizzbuzz 76 77 fizz 79 buzz fizz 82 83 fizz buzz 86 fizz 88 89 fizzbuzz 91 92 fizz 94 buzz fizz 97 98 fizz
100
コードとしては、while 文(繰り返し)を使いますよね?
正直初心者には結構な重労働(頭の)でしたよ。ホント
感想としては、このような処理を書くことを悩んで悩んで、組み立てると頭がよくなる気がしましたww
私は、初見では解けずに答えを見た派です。
下に、解答を載せておきますのでよければ見てみては??
解けなくても、ええんやで〜
プログラミングには、数学知識が必要か??
私は、文系出身です。
そんでもって、プログラミングには数学知識がないとダメなんじゃないのかと思うこともあります。
※プログラミングって理系出身の人がやるべきものなんじゃないか?
※文系にはプログラミングが難しいのではないか??
なんて、思ったこともありました。
結論を言うと、"条件つき"でそうです。
今から、プログラミングを始めようとしている人に関して言えば、数学的知識は必要ないと言えます。
でも、高度なもの(ゲームプログラム、AI機械学習)に関して言えば数学は必要です。
と、肌で感じました。(実体験)
例えば、以下のサイトでは機械学習を1から学ぶと書いてありますが、
文系には馴染みがないΣ(シグマ)やゴリゴリの数式が出てきます。
ですが、初心者の自分が今勉強しているRubyに関して言えばそのようなことはないので安心を!
そもそも、AIの領域は最先端の技術が盛り込まれています。
最近では、自動運転やコールセンターの受付の自動化など広く知られています。
そんな世界の最先端に初心者があーだこーだ口出しはできんのです。
世界の最先端についていくにはそれ相応の知識がなければいけません。(あたりまえやん)
プログラミングを触ってみるのであれば、数学的知識は必要ありません。
しかし、これだけは言えると思います。
プログラミングを極めたいのであれば、数学的知識は必須であると。
プロでも、数学があまりできない人はいると思います。(多分日本人限定)
ですが、一流になるにはやはり必要になってくる要因ではあると思っています。
プログラミングには、アルゴリズムと言う物が存在し、その計算量は数学的知識をもっているか否かで変わってくる、とも言われています。。。(詳しくは知りませんww)
最後に、初心者の方はそんなに怯えないで((((;゚Д゚)))))))
気楽に行きましょうww
rubyを進めてみたけど、どうも ”プログラミングしてます!” 感がないです.......
いざ、プログラミングを始めてみたけどもどうも気に入らない。
というのも、最初はとりあえず、hello worldを表示させてみよう!だとか、
文字列と数値を連結させよう!だとか、
掛け算、割り算(演算子)をやってみようだとかいまいち何かを作っている感じが無い。
まぁ、初歩の初歩から始めているのだから当然といえば当然なのだが。。。アマチュアにも届かない初心者の中の初心者です。
それでも、何か目指すべき物が見当たらないのである。目指すべき物が見えないのである。
始めようとするときには、ハテナブログとか、どこかの企業HPみたいな物が作れるのでは無いかと思っていたのですが、そのビジョンが全く見えないんです。
プログラミングを始めるときには、何かを作るという目標設定は不可欠だと感じたのですが、如何せん初心者で何が作れるのかもわからない者にとっては目標を作るのも一苦労。
そういった、板挟みがあり挫折してしまう人も多くいらっしゃるのでは無いでしょうか??(もちろん、私もその一人ですww)
今できるのは、こんな文字列を表示させるくらいのものです。
果たして、こんな感じのプログラミングがどうやったらちゃんとしたHPになるのでしょうか?
まだ、まだ勉強は続きます。。。。(引数とかちょいムズです...)
早く、こんなの書いてみたいなぁ〜〜
cloud9 を登録して使ってみよう
cloud9 正式にはAWS Cloud9というみたいです。
AWS Cloud9はAmazonが提供している総合開発環境(IDE)です。
総合開発環境とは................................よくわかりません(笑
とにかく、プログラミングを始める初心者にとってもかなり便利な機能だということで今回紹介します。
決してAmazonの回し者というわけではありません。いやほんと!
実際に、自分はこのcloud9を使ってプログラミングをしています。
プログラミングを始める際に躓くところといえば環境構築なのですが、その最初の壁を乗り越えられる素晴らしいものなのです。
cloud9を使えるようになるステップは
1.会員登録
2.ワークスペース作成
です。
アカウント作成には、クレジットカード番号が必要となりますが、
新規お申込みのお客様は 1 年間の無料利用枠をご利用いただけますので、AWS アカウント作成、無料利用枠内のご利用で請求が行われることはありません。
とのこと、なので安心してください。
サポートプランはもちろん無料のベーシックプランを選択し、登録完了です。
次に、ワークスペース作成です。
※どうやらcolud9を使う場合はリージョン(地域)が限られているようです。日本から一番近いシンガポールにリージョン(地域)を設定しなおしましょう。
ログインすると、AWSサービスの下に検索窓のようなものがあるので、そこにcloud9と打ち込んでください。
すると、ワークスペース作成が可能なページに飛ぶのでcreate environmentをクリック!!!
ワークスペースの名前などはご自由に(できるだけ簡潔に)、
・ settingでは Create a new instance for environment(EC2) ・t2.micro(1GIB RAM)
以上の二つを選択しましょう。(初期推奨でこの設定になっているはずです。とくに何も触らずにnext step -> create envirionmentしましょう)
以上が、cloud9が使えるようになるまでの過程でした。
分からない人は、「cloud9使い方」とかで検索してみては?