サーブレットJSPを学ぼう!#9
前回は簡単なWebアプリケーションを作れるようになりました。しかし、それだけでショッピングサイトのような複雑なWebアプリケーションを作るのは難しく、開発の効率もよくありません。今回は、Webアプリケーションを本格的に作成するための知識を学びます。これまでの学習内容を使ってWebアプリケーションの開発の練習をしていきます。前回までは、1つのリクエストを1つのサーブレットクラスまたは、JSPファイルで処理をしていましたが本格的なアプリケーションを開発するには、より効果的な方法があります。実際の開発現場でも採用されている、Webアプリケーションの模範的な構造と開発手法を学びたいと思います!
製造・コーディング(PG/フロントエンド)
仕事の流れを可視化する業務フローの作り方
システム開発の現場に参画して一番最初に学ぶ内容が、今回紹介する業務フローです。 前回紹介したマニュアルと近しいドキュメントにはなってしまいますが、マニュアルと業務フローは全く別の観点から作り上げるドキュメントです。 マニュアルは、システムの操作方法などを記したドキュメントなのに対して、業務フローは【仕事の内容や手順を図で表したもの】です。 業務を視覚化することで、見落としを行うリスクが軽減し、文章で手順を読むよりもわかりやすく、全体像を掴みやすくするというメリットがあります。 各現場によっては非常に読みづらい業務フローが整備されていますが、適切に書かれたフローであれば業務の流れを直観的に理解しやすく、業務マニュアルや新人研修としても活用できるため、非常に効果的です。 担当者が業務を改善したり、他部署の業務について相互理解を深めたりするツールとしても有効です。 小規模・中規模のシステムにも活用できますが、大規模なシステムにおいては、全体の機能を業務フローで表すことができるので、保守性の向上にもつなげることができます。 障害が発生して調査をおこなう場合などでも、ソースコードのみを調べると時間がかかりますが、業務フローがあれば、機能ごとのきりわけができるので問題を早く特定しやすくなります。 もちろん、システムの機能拡張や業務内容の変更の際も、業務フローがあれば検討資料としても活用されるシーンが多いです。 業務フロー作成の目的をまとめると、 ・業務の視覚化、標準化 ・業務の問題の発見 ・担当者および他部署間の業務の把握、相互理解 ・業務の保守性、拡張性の向上
製造・コーディング(PG/バックエンド)
Javaの文法まとめ
今日はJavaの文法についてのまとめを紹介したいと思います。この記事では、初心者から上級者まで幅広く対象となるように、Javaの基本的な文法を詳しく解説していきます。Javaを学びたい方はぜひ参考にしてください。
製造・コーディング(PG/バックエンド)
【オブジェクト指向】継承、コンポジションの違いと使用方法
まずはじめに、オブジェクト指向言語とはソフトウェアの考え方で「さまざまな処理を部品ごとに分けて、それらを1つにまとめプログラミングしていくという考え方」を表しています。よく自動車の例が挙げられていますが、ほとんど同じですがここでは自動販売機を例にあげてみます。まずは自動販売機の動作をおさらいしてみますが、「お金を入れる」→「購入できる飲み物のボタンが光る」→「ボタンが押されたら飲み物が出てくる」というようなものが共通の動作としてあると思います。この共通の動作を色々な自動販売機に流用していくというのがオブジェクト指向の考え方です。「お金を入れる」処理を1000円ガチャなどに流用すると、小銭が使えなくお札のみ使用できるという処理を1から作らずに応用して作成することができます。こういった考え方をプログラムに落としたものがオブジェクト指向といいます。今回はその中で、「継承」、「コンポジション」についてそれぞれの違いと使用方法について簡単に説明していきます。
初心者
【Java】コレクションフレームワークとジェネリクス
Javaの学習をしていき、ある程度の基本文法について知識がつくと次はコレクションフレームワークと、ジェネリクスについて学習することになると思います。今回は、コレクションフレームワークとジェネリクスについてどういった特徴があるのか、そして使用方法についてできるだけ分かりやすく解説していきます。
初心者
【ソフトウェアテスト】デシジョンテーブルテスト
さまざまな入力値が想定されており、それぞれの入力値を統合した結果として複数の状態を返すようなシステム仕様に対しては、デシジョンテーブルテスト技法を用いることで、複雑な条件を整理することができます。サービス利用時に新規アカウントを作成するような場面で、ユーザー情報を入力して登録する機能を想定した場合、[名前(ローマ字)][よみがな][任意のパスワード][パスワード確認入力][年齢][住所]などを入力し、それらの入力値が全て正常であれば登録処理を進めて、入力値のうち1つでも正常ではない値が入力されている場合は、エラーメッセージを表示して再度入力を促すようなシステムがあります。対象のステータスによって期間限定のサービス適用有無を判定するようなシステムでも、サービス対象となるかどうかを複数条件から判定するような仕様が想定されます。5年以上サービスを利用していて、アカウントの利用者ランクがゴールド以上の場合、商品購入時の金額から5%をサービス固有ポイントとして還元するというイベントを、n年n月n日~n年n月n日まで開催するといった追加開発システムのテストをする際に、デシジョンテーブルによってテスト対象を適切に抽出できます。
テスト(運用・保守・サポート)
マニュアル作成で心がけることとは
皆さんはシステム開発現場のマニュアルや仕様書などのドキュメントに対して、どのようなイメージをお持ちでしょうか。 実際にシステム開発の現場で整備されていたマニュアルが、めちゃくちゃ役に立ったと考えているかたは、ごく少数なのではないでしょうか。 各プロジェクトで、エンジニアの入れ替わりが当たり前になった昨今では、業務マニュアルやシステムの操作マニュアルがない会社はないと言っても過言ではありません。 ・分厚くて読む気がしない ・どこに何が書いてあるのか分かりにくい ・そもそも読んでも理解できない ・プロセスやトラブルの解決策が抜けがち ・書いてある内容が古い(アップデートされていない) 上記の内容はいずれも、マニュアルが風化する原因の1つです。 裏を返せば、マニュアルを作る側が、上記のような状態にならないように気をつけるべき項目とも考えることが出来ます。 実際、多くのシステム開発の現場で、マニュアルと実際に稼働しているシステムとの情報が乖離しており、マニュアルはストレージを圧迫する邪魔な存在。だと認識されているケースが多いです。 今回の記事では、システムの操作マニュアルに関して、みなさんが実際にマニュアルを作成する場合に、分かりやすく使いやすいマニュアルを作るために心がけるべき5つのポイントについて解説していこうと思います。
製造・コーディング(PG/バックエンド)
Python基本文法3
グローバル(global)宣言・グローバル変数とは、関数内でグローバル変数にアクセスするための宣言です。ローカル変数(関数定義の内部で定義した関数)とグローバル変数(関数定義の外側で定義した変数)があります。glb = 0def func1(): glb = 1def func2(): global glb glb = 5print(glb) # 0が出力されるfunc1()print(glb) # 0が出力されるfunc2()print(glb) # 5が出力される
初心者
【Java基礎】Java未経験から習得を目指す 基礎知識編2
どうも、C++が最も得意なプログラマです。仕事の関係でJavaを扱うことになったのですが、Javaに関しては全くの未経験ですので、今回からJavaについて学んでいこうかと思います。
製造・コーディング(PG/フロントエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
学習・スキル2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
【初心者用】SPAについて
Web開発の勉強をしていく中で、最近のトレンドではSPAという作成方法が採用されていることを知りました。実際にNext.jsなどで作成してみたのですが、詳細をしっかりと理解していないと感じたので、再度SPAでのWebサイト作成をする前にまとめようと思いました。Web開発でSPAは今後も伸びていくので、理解して開発できるよう今回で詳細を学びたいと思います。
その他(PG/フロントエンド)
【初心者用】SQL インデックスとビューについてまとめてみた
参考サイト https://style.potepan.com/articles/25208.html SQLのインデックスとは? 作成、確認、削除方法からメリットまで解説! https://medium-company.com/sql-index/ SQL インデックス(INDEX)を作成・削除する http://dbonline.s25.xrea.com/sqlite/index/index3.html UNIQUEインデックス https://www.sejuku.net/blog/52356 SQL入門 PRIMARY KEY(主キー)制約とは? 追加や削除についても解説 https://style.potepan.com/articles/26878.html SQL 主キー(PRIMARY KEY)制約って何? サンプルコードで基本的な使い方を確認しよう! https://smallit.co.jp/blog/a1015/ BLOG SQLのビューについて https://products.sint.co.jp/siob/blog/view ビューとは? 使い方を解説 https://style.potepan.com/articles/25504.html SQLのビューって何? 基本的な使い方を理解しよう https://cs.wingarc.com/manual/drsum/5.5/ja/UUID-3b6e70a4-5a0d-205e-4b2b-fcb2df959cfd.html ALTER VIEW ビューの定義を変更する
製造・コーディング(SE)
【初心者必見】Python独学を通し、プログラミング入門についてまとめてみた
とあるきっかけからPythonに関心を持ちまして、手探りですが勉強をしてみました。 まだ入り口に片足踏み込んだ程度ですが、プログラミング初心者にとってはその難しい「一歩」の助けになればと思い、記事にしました。 当記事では、ざっくりと ・使用した教材、感じた利点 ・学習のコツ、簡単に応用力を伸ばしていける工夫 について、書いていきます。 プログラミング学習のコツについても解説していくので、Python初心者に留まらず、プログラミング自体が初めての方にも参考になると思います。 ※注意点! ・本記事は、あくまで学習方法、コツについての解説です。Pythonって何? どうコーディングすればいいの? といった点に触れたものではありません。 ・本記事における学習ラインは、タイトルに「入門編」と書いた通り、変数の概念や条件分岐や繰り返し文といった初歩の初歩までです。機械学習やデータ分析といったディープな部分までを補完しうるものではありません。
製造・コーディング(PG/バックエンド)
