サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
アメリカ大統領選
simple-it-life.com
今回の記事について Vue.js / Nuxt.jsにおけるコンポーネント設計を考えてみました 昔筆者が数人で使うような社内ツールをVue.js / Nuxt.jsで実装した時に、コンポーネント設計についてあまり考えておらず適当に作成していました 1つのコンポーネントでコード量が増えてしまったり、componentsディレクトリ配下にずらずらとコンポーネントが並び同一ディレクトリでコンポーネントの粒度がまちまちで見栄えが悪い状態となっていました その状態で新規に開発メンバーがアサインされてソースを見てもらった時には申し訳なさでいっぱいになってしまったため、一度コンポーネント設計について考えてみることにしました どういうコンポーネント設計手法があるのかをまず調べてみて、その後で最終的に自分だったらどのように設計していくかをまとめていきたいと思います 最後に記述する自分なりのコンポーネント設計
Apache Bench(ab)を使って初めての負荷検証を行う Published: 2016年8月28日 by tomsato 概要 Apache Bench(ab)を使って負荷検証をします どういう風に進めていくのか考える所からabを使って実際に負荷検証を行ってみます Apache Bench(ab)とは Apacheに同梱されているWebサーバの負荷検証を行うためのツール 例えばabを使うと、任意のURLに並列数10で1000回アクセスするなどが行えて 平均レスポンスタイムはこれぐらいで1秒間にこれぐらいさばける、などの結果を調べることができる 負荷検証の目的を明確にする どのように負荷検証を進めていくのかについて 大事なのは「どういう目的で負荷検証を行うか」 case 1 「このページへのアクセスが2倍に増えた時にサーバが耐えられるか」という検証を行いたい場合 → 現状のアクセス数
何故Vue.js/Nuxt.jsなのか、SSRや仮想DOMなどのメリットについてもまとめる Published: 2018年9月1日 by tomsato 概要 Vue.jsやNuxt.jsで開発をすることが多くなってきたが 改めて「なんでVue.jsにしたの?」「仮想DOMって?」「SSRって何がいいの?」 などメリットを聞かれた時にサラサラと答えられなかったり用語についての説明が言えなかったりしたので自分なりにまとめる フロントエンドの歴史について 何故フロントエンドエンジニアが必要になってきたのか 昨今フロントエンドエンジニアの需要が高まってきた、何故高まってきたのかはWebの歴史を見ていく必要がある 1990年代にWebが誕生しCSSやJavaScriptがWebブラウザに搭載されるようになったが 当初はJavaScriptは貧弱でCSSと共にページの装飾に用いられることが主だった
Node-REDとは Node-REDとは、APIやオンラインサービス、デバイスなどの機能を繋げてアプリケーションを作成していくプラットフォーム 処理フローをブラウザの操作によって作成することができる オープンソースソフトウェアで、Node.jsが動く環境なら何処でも動かせる Node-REDを使う方法としては2種類あって、ローカルでNodejsの環境を準備して立ち上げる方法と IBM Bluemixというクラウドサービス上に作成する方法があるので2種類それぞれを紹介する また別記事でLINEのAPIとNode-REDを使ってBotが受け取ったメッセージをオウム返しさせた LINE Messaging APIを使ってBotを作成する ローカルのNodejs環境で使う 動作検証環境 $ cat /etc/redhat-release CentOS release 6.8 (Final) No
Chrome拡張機能のCodeception Test Toolsを試す Published: 2017年8月13日 by tomsato ■ Codeception TestTools Codeception TestToolsはChromeの拡張機能である ブラウザの操作だけで受け入れテスト(Acceptance test)のソースを自動で書き起こすことができる 出来上がったソースコードを元に受け入れテストを拡充していくことができる 使い方 導入 Chrome TestToolsよりChromeの拡張機能を導入する 開く Chromeのデベロッパーツールを開く 「Codeception TestTools」タブがあるのでそれを開く アクション 画面上で右クリックを押すと「Codeception Test Tools」という項目がある 項目 説明 Am on page テストの開始のパス
LINE Messaging APIを使ってBotを作成する Published: 2017年8月20日 by tomsato 概要 LINE Messaging APIを使ってBotを作成する 今回はユーザーがBotに話しかけるとBotがオウム返しするだけの内容とする 使うまでの流れ LINE Botを使うための準備(アカウント作成など)を行う ユーザーからメッセージを受け取って返答する処理はNode-REDを使って実装する LINE Messaging APIとは LINEのボットを作成してユーザーと対話を行う際に利用するAPI Messaging APIのご紹介より引用 PushとReplyのAPIを使って実現していく Messaging APIのご紹介より引用 料金体系は以下、とりあえず使う分にはDeveloper Trialを利用するのが良さそう Messaging APIのご紹
IBM Watson入門の入門 デモを試してWatsonがどんなものかのイメージを掴む Published: 2017年8月13日 by tomsato Watsonとは Watsonを開発したIBMはAIを「Artificial Intelligence(人工知能)」ではなく 「Augmented Intelligence (拡張知能)」として人間の知識を拡張し増強するものと考えている つまりWatsonは、自然言語処理と機械学習を使用して人間の意思決定を支援するテクノロジー・プラットフォームである Watson とは? どういうものが作れるか、実績 2011年のクイズ大会でクイズ王に勝利した → クイズ番組に挑戦した IBM Watson 患者の白血病の正確な種類を10分で見抜き、その種類の適切な治療によって患者の命を救ったことがある → 人工知能、がん治療で助言 国内初か 白血病のタ
Codeceptionとは PHPのテストを簡単に行うためのテスティングフレームワーク 単体テスト、機能テスト、受け入れテストの3種類のテストを簡単に書くことができる 公式ドキュメントも日本語で読めるので敷居が低い Codeception.docs.ja しかしそれでも敷居が高い人や、使ってはいるけどあんまり理解していない人向けに簡潔にまとめていくこととする Codeceptionはテストの実行環境としてPHPUnitを使用しているので、今まで PHPUnitを使っているテストでも、Codeceptionに移行するのは容易である。またテストを実行するためにPHPUnitを別途インストールする必要はない 実際にプロジェクトにCodeceptionを追加する話は次回としている プロジェクトにCodeceptionテストをゼロから追加する 単体テスト・機能テスト・受け入れテスト Codecept
概要 phpDocumentorとはクラスやメソッドの定義前にブロックコメントを決められた方式で記述していると、APIドキュメントを自動生成することができるツール 今回はそのphpDocumentorで記述する書式についてまとめる PHPDocの書き方 前提知識 DocCommentの開始は以下のように記述する ※ 開始行のアスタリスクは必ず2つ /** * @var int */ $num = rand(0, 10); 1行で記述することもできる /** @var int */ $num = rand(0, 10); 「//」を使ったコメントではDocCommentにはならにことに注意 PHPDocを記述する例 ファイルの先頭 目的など簡潔に記述する <?php /** * このファイルではPHPDocの説明をします * * @copyright 会社名 All Rights Reser
PHP_CodeSnifferとPHPMDを使って自動的にコードを少しでも綺麗にする Published: 2016年12月3日 by tomsato 概要 複数人で開発を行うと各々好き勝手にコードを書かれてしまって気がついたらコーディング規約が定まらない汚いソースコードになってしまうので便利ツールを使って少しでも改善していく。 PHPコードのチェックをPHP_CodeSnifferとPHPMDで行う 自動でチェックが走るようにGitのHooks機能機能を使ってcommit時に毎回確認するようにする PHP_CodeSnifferとは PHPコード規約のチェックを行うツール phpcsコマンドでチェックを行えるが、phpcbfを使って自動で修正することもできる 以下のコーディング規約を対応している $ phpcs -i The installed coding standards are
概要 今日はI/O Schedulerについて調べます I/O Schedulerとは 前提として知っておきたい知識 ディスクI/Oが発生するとHDDヘッドが読み書きをする場所までヘッドをシークさせる時間がある この時間は物理的な移動時間なので移動が少ないほどディスクI/Oの時間が少なくなる ディスクIOスケジューラ アプリケーションから発行された複数のI/O要求を並び替えてディスクのシーク量を減らすためのソフトウェア ディスクI/Oのパフォーマンスがうまく出せていない時は考えてみると吉 並び替えアルゴリズムについて キューについて OSからI/O要求が新規に追加された際にはI/Oスケジューラが呼び出されるようになっていて、新しい要求をキューに追加する 要求をキューに追加するアルゴリズムが4つ存在する noop 何もしないスケジューラ、I/O要求を要求順に処理をする なのでスケジューリング
PHPUnit + DBUnitでMySQLのテストを行う Published: 2016年4月10日 by tomsato 概要 PHPUnitとDBUnitを使ってMySQLのテストを行う(Oracleのテストもできる) テスト用のMySQLを用意してPHPUni+DBUnitでinsert,updateなどのテストを行って その後に意図したデータになっているか確認をすることができる テストの流れ データベースのテストは次の4段階に分けて考える必要がある Gerard Meszaros は、著書 xUnit Test Patterns でユニットテストを次の四段階に分類しています。 フィクスチャとはアプリケーションやデータベースの初期状態のこと、テストを実行する前に用意する 環境の準備 MySQLのインストール $ sudo yum -y install http://dev.mysq
Google App Engineで初めてのPaaSを触る!PHPでHello World! Published: 2017年2月10日 by tomsato 概要 前回の投稿でGoogle Cloud Platformの紹介からGoogle Compute Engineを使ってみるまでをまとめていた Google Cloud Platform入門の入門 今回はGoogle App Engineを使ってみてPaaSとはどんなものなのかを学ぶ 実際にGoogle App Engineを触ってみるがGoogle Cloud SDKをCentOS6系に入れてCentOS上で開発することとする また今回はPHP の言語を対象とするが他にもJava、Python、PHP、Goに対応している PaaSとは PaaS(Platform as a Service) アプリケーションを稼働させるためのプラッ
概要 Google Cloud Platformについてまとめる 入門の入門ということで 端的にGoogle Cloud Platformが何なのか 料金について 実際に触ってみる とどういうものなのかをイメージできるまで記述していく Google Cloud Platformとは 以下GCPとする Googleが自社で使っているインフラと同じインフラを低コストで利用することができるクラウドサービス 似たようなサービスとしてはAWSがあるが、違いなどは比較サイトを参考にしてほしい 強いて言うならAWSよりも後に出たサービスなのもあるが性能やコストパフォーマンスが良さそう GCPが持っているサービス サービスの一部を抜粋して紹介する https://cloud.google.com/products/ Compute Engine Googleが提供するIaaS KVMを利用していて、仮想サ
概要 自分が持っているサーバに対して無料でセキュリティチェック(脆弱性診断)を行います 脆弱性について初期知識を学びつつ、実際にポートスキャンや脆弱性スキャンを行って自分のサーバは問題ないのかチェックまでしてみたいと思います 最近では、セキュリティ専門家の有志が脆弱性診断を実施する技術者を「脆弱性診断士」として必要なスキルを明文化する取り組みが行われていて将来的には資格化も目指しているらしいです ちなみにJPCERTで脆弱性に関する情報をWebサイトで公開しているので定期的に確認するといいかもしれません お願い・注意 自身の管理下にないネットワークおよびコンピュータに脆弱性診断や擬似攻撃を行った場合は法的処置をとられる可能性もあるので絶対にやらないようにしてください このページに記述する内容は自身で管理している環境で検証を行ってください 脆弱性について 脆弱性(ぜいじゃくせい)とは、プログ
概要 以前Jenkins入門の入門にてCIについてとCIツールであるJenkinsついてまとめましたが、今回は別途話題になっているCircleCIについてまとめてみます 人口的にはまだJenkinsを使っている人が多いみたいですがJenkinsからCircleCIに乗り換えている人もいるみたいなのでどんなものなのかイメージできるぐらいに調べてみたいと思います CircleCIとは 前提としてCIとJenkinsについて以下にまとめているので単語の意味だけでも目を通してもらえればと Jenkins入門の入門 CircleCIとはCIサービスになります https://circleci.com/ 上記のページから登録を行うことによりJenkinsのようなビルドやテスト、デプロイを自動で実行することができます Jenkinsは自前でJenkinsサーバを立てる必要がありますがCircleCIはサ
概要 以前 Jenkins入門の入門 でJenkinsの概要と導入について調べましたが 1歩進んでGitHubと連携してGitにPushした時に自動ビルドを走らせるまでをやってみます ユニットテスト(単体テスト)やビルドなどを自動で走らせたい時に良いかと思います ここから応用するとプルリクエストをマージさせた時に走らせたりなど色々なタイミングで自動ビルドを行うことができます 手順 GitHubの設定 ※ 以下全てJenkinsサーバでの作業 GitHubにSSHを行ってknown_hostsに追加を行う $ sudo su -s /bin/bash jenkins $ mkdir ~/.ssh;cd ~/.ssh // 自分のメールアドレス $ ssh-keygen -t rsa -C test@example.com // パスワードを聞かれるが空で登録する $ chmod 600 id
◼︎ 概要 Jenkinsについて概要とインストール方法を調べます 入門の入門ということでCIについてからメリット、インストールまでまとめます 入門を読み終わった後は JenkinsでGitにPush時に自動ビルドさせる も書いてみましたので良かったら拝見してください ◼︎ 継続的インテグレーション(CI)とは wikipediaより 継続的インテグレーション、CI(英: continuous integration)とは、主にプログラマーのアプリケーション作成時の品質改善や納期の短縮のための習慣のことである。 狭義的にはソフトウェアやサービス、システムが動作するか、こまめに確認しながら開発を進める開発手法 ◼︎ 継続的インテグレーションのメリット 手戻りの削減、品質の維持 環境に依存しない 自動化による作業コストの削減 継続的に改善し続けられる ◼︎ Jenkinsとは Javaで書かれ
Docker Hubを使ってGitHubにあるDockerfileからimageを自動生成する Published: 2016年3月27日 by tomsato 概要 Docker入門の入門 Dockerコマンドを学ぶ これまでDockerの概要と使い方について学んできましたが、今回はDockerHubとGitHubを連携してGitHubにあるDockerfileから自動でDockerHubリポジトリにimageを追加するやり方を学びます 続き → 個人開発環境作成のためのDockerfileメモ イメージ ユーザーがDockerfileをGitHubにPushする Dockerfileからimageを自動で作成する 前提としてDockerHubの登録が済んでいてDockerHubとGitHubの連携ができている必要がある 作成されたimageはDockerHubリポジトリに追加される 違
このページを最初にブックマークしてみませんか?
『simple-it-life.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く