【RaiseTech】超初心者が1から学ぶプログラミング記〜その15〜

公開日:2020/9/22 最終更新日:2021/2/20

こんにちは!ナガタロックです!

このブログでは2020年6月より

RaiseTech 〜WordPress副業コース〜

を受講し、プログラミング超初心者の著者の成長の記録や感じた事を記録して行ってます。

このブログでは

・学習の記録

RaiseTechの学習内容

RaiseTechを受けて感じた事

をまとめています

第15回目の今回は

ブラウザチェックとWordPressのテーマチェックによるデバッグ

です!

今回の講義を含めて残すところあと2回となりました。

私はというと4連休の渋滞のせいで講義参加が遅れ

講義の前半はリアルタイムで参加することが出来ませんでした(TдT)

セキュリティ

品質について

納品物は一定の品質を担保する必要があり、

「見た目」「ソースコード」「セキュリティ」

は実装後にしっかりとチェックしなければならない。

特に「セキュリティ」に不備があると、そこからサイトに障害が起き

顧客に大きな損失を与え、大問題に発展する可能性がある。

SQLインジェクション

SQLとはデータベース言語の事で、様々な情報を扱い操作する。

セキュリティ対策のしていない検索フォームからSQL言語を注入(インジェクション)

することで、サイトに多大な被害等を起こす。

送信されたデータをそのまま受け取らず

「動作しない文字列」

として受け取るようにする必要がある。

XSS(クロスサイトスクリプティング)

こちらの言語はJavaScript。

SQLインジェクションがデータベースに対して、攻撃をするのに対して

XSSは表示されるWebページに対して、改変や不具合を起こさせる。

こちらも対策としては、送信されるプログラムを無害化する処理を

施しておく。

ブルートフォースアタック

ログインフォームに対して、IDとパスワードを大量に自動生成してログインを試みる。

WordPressは利用者が多いため、多くのクラッカーやハッカーの対象となってします。

対策としては、

・ログインIDを廃止してメールアドレスのみ有効にする

・2段階認証を設ける

・強固で複雑なIDとパスワードを利用する

などがあり、これを複数設けるとなお良い。

またWordPressのプラグイン

SiteGurd

でも色々な対策出来る。

名前はロボットアニメみたいで

かっこいいけど、めちゃめちゃ悪質で恐い!!

これはサイト運営だけでなく、普段から生活するうえで対策しておかないと

いけない内容です!!

僕もワンパスワードを導入して、パスワードを複雑化して管理するようにしました。

ちなみに

「複数回パスワードを間違うと自動ロック」

がかかるのに、対抗して

「パスワードを固定して複数のIDにログインを試みる」

リバースブルートフォースアタック!!

なるものもあるそうです。

WordPress本体&プラグインのアップデート

各種アップデートには、公式側のセキュリティ対策も含まれている。

納品する際には最新の状態にしておくのが当然として

クライアントにも必ずアップデートの必要性を話しておくこと。

問題が生じた場合の対策を受けることを契約として結んでおく。

またアップデートにより、テーマが正常に表示出来なくなることも

起こりうるので、それを事前に伝えておくことも大事なこと。

エスケープ処理について

エスケープ処理とは…

意味を持つ文字や記号を別の文字に置き換える処理のこと。

有害なデータを無害化する。

・文字のエスケープ ecs_html()

・URLのエスケープ esc_url()

・HTML属性のエスケープ esc_attr()

エスケープを行う対象

・内部処理でエスケープを行わず、データベースから値を取り出して出力する場合

・データを取り出す際、直接出力ではなく変数や定数に値を取得してから出力する場合

ブラウザチェック

ブラウザチェックとは

・異なるブラウザでも「動作不具合」や「表示崩れ」が起きていないかチェックが必要

モダンブラウザとレガシーブラウザ

■モダンブラウザ

・国際標準化団体が定義している「Web標準」に対応しているブラウザのこと

・「Google Chrome」「Firefox」「Safari」「Microsoft Edge」「Opera」

■レガシーブラウザ

・「Internet Explorer 」や旧バージョンのブラウザのこと

Web標準を満たしたモダンブラウザの対応が求められる。

スマフォやタブレットの対応

・iPhoneやiPadの最新OSや一世代前のバージョン

・AndoroidはGALAXYやXperiaなど

の対応が求められる

検証方法について

・基本的に実機で対応する。

Macで制作したものは、Windowsで不具合がないか?
Windowsで制作したものは、Macで不具合がないか?

MacでWindowsを仮想で動かすサービスParallels

※無料の物もあるが、Parallelsは高速。

・各スマフォで不具合がないか?検証する場合の参考サイト↓

https://qiita.com/aqril_1132/items/4789bc12a511136d8bfa

ベンダープレフィックス

・各ブラウザのCSSの解釈の差異を埋めるための拡張子のこと

Gulpを使えば自動化出来る

・その他の対策としては、リセットCSSがある

WordPressテーマチェック

何が出来るか?

・最新のテーマレビュースタンダードに対応したレビューが受けられる。

・本来はWordPress公式のテーマへ申請するものだが、品質面で納品前の担保が出来る

第12回講義でもレクチャーがありました。

コードリファクタリング

コードリファクタリングとは

納品したあとでも、引き継いだ相手の

運用のしやすさや、編集の際のわかりやすさ

が求められる。

もちろん自分でメンテナンスをする際も同様である。

納品直後は覚えていても、1年2年たつと自分でもわからないかもしれない。

そういう状況を防ぐために、見やすいソースコードに整理をしておく必要がある。

■主なチェック項目■

・HTMLの構造チェック

・CSSの構造チェック、見づらくないか?

・JavaScriptの構造チェック、同じ処理を複数書いてないか?

・WordPressやPHPの処理に同じ箇所が複数ないか?

注意点

・開始前に必ずバックアップをとる

・新たな機能は追加しない

・一気に全部は修正しない

・テストは何度も行う。ステップ毎に行い一気にチェックしない

本日の感想

今回の内容は、プログラミングの技術的な内容というよりは

実案件で納品する前に行う、

「品質チェック」や「セキュリティ」に関する

内容でした。

ただサイトを作れるようになるだけでは当然ダメで

サイトを運用していく前提で注意すべき点や

メンテナンスの方法などなど・・・

ただプログラミング言語が書けるようになっただけでは

報酬はもらえない!ということ。

案件を取るというのには

・クライアントの要望を聞く力

・要望を受けての提案力

・要望を叶えるスキル

・運用をしていくうえでの、メンテナンスやセキュリティの配慮

さらに加えて

・案件がまわってくるような仕組みや種まき

・自分の実績やスキルを発信する方法

・オンライン、オフライン双方でのコミュニケーション能力

・行動力&瞬発力

等様々な力が必要ということを痛感した。

これが会社に属していたら、自分が組織の歯車の一つになって

すべき役割をこなせば、

上記の力を持っていなくても成立するのかもしれないが、

自力で報酬を得るためには必要な力!!

しかもSNSが飛躍的に発達し続けているこの世の中、やり方が無数にあり、

そういう情報はTwitterやRaiseTechのSlack内でいくらでも目にする機会ある。

プログラミングスキル上達の為に必要なのは

「自走力」

と言われてきたがそれは当然として、

YAT先生含む講師陣やRaiseTech受講生の方々から感じるのは

自分で考える力、自由に考える力

「自想力」

こちらにも磨き続けることが大事なのだ!!ということ。

これはプログラミングだけではなく、その他の趣味や仕事にも通ずることだ!

RaiseTech入ってよかったなと思うのは、

スキルだけではなく、そういう考え方をして行動している人たちに

出会えたこと、知れたこともとても大きい。

アパレル業界に入って、一つの会社で10年以上勤めているだけでは

絶対に出会えなかった人達だった。

そういった人達の影響も受けて?

この度

「WordPress副業コース6月生の情報共有会」

を自ら催すことにしました!

単純に

・みんなどれくらい出来るのだろう?

・みんなどうやって勉強しているのだろう?

・独りで勉強するのしんどい!

といった想いからです。

未だにオンラインミーティングに慣れない僕ですがw

楽しみです!

今回も講義タイトルとブログ記事をまとめておきますので、

参照ください(`・ω・´)ゞ

そしてRaiseTechが気になるという方は

是非公式サイトより無料体験会or受講のお申し込みを(●´ω`●)


ABOUT US

この記事を書いた人

ナガタロック

このサイト作成者の写真

アパレルメーカーに勤める30代男
2020年より「RaiseTech」にてプログラミング学習を開始
講義内容の学習記録
副業に関する情報を発信しています

  • カテゴリー