【初心者向け】様々なシステム開発手法
システム開発には作成するサービスやプロジェクトによって適切な開発手法がいくつかあります。今回はシステム開発の手法を数種類紹介して、それぞれの特徴や、メリット、デメリットを紹介します。下記が主な開発手法の一覧になります。 ・ウォーターフォール型開発 ・アジャイル型開発 ・プロトタイプ型開発 ・スパイラル型開発 ・DevOps(デブオプス) ・リーン開発では次からそれぞれの開発手法の特徴とメリット、デメリットを紹介します。
初心者
【初心者向け】ORMとは
ORMとは英語でObject-Relational Mappingといい、オブジェクト指向プログラミング言語とリレーショナルデータベースとのマッピングを行うものになります。またそれぞれの互換性を向上させるために設計されたプログラミング技術でもあります。ORMの基本的な構造として、プログラミング言語のクラスとデータベースのテーブルを関連付けや対応付けを行うことから始まります。これにより、エンジニアは直接SQLクエリを作成することなく、ORMを通じてデータベースとやりとりを行うことができます。そもそもオブジェクト指向プログラミング言語と、リレーショナルデータベースとはなにかを簡単に説明します。オブジェクト指向言語:データ(オブジェクト)とそれに関連する操作(メソッド)を組み合わせてプログラムを構築するプログラム言語のことです。リレーショナルデータベース:データを表形式で管理するデータベースの一種です。リレーショナルデータベースでは、データが複数のテーブルに分割され、それらの表の間に関係性が定義されています。ではなぜORMという技術が出てきたのでしょうか。
初心者
Gitの使い方
ツールのアップデートが頻繁に行われているWEB業界では、Gitを活用して業務を効率化させることが一般的になってきています。しかし、初心者の方や業界に馴染みのない方は、Gitが何のことかわからない方もきっといらっしゃるでしょう。多くの開発者に利用されている印象のあるGitですが、実はエンジニアだけではなく、WEBデザイナーやライターにとっても便利なツールのひとつです。Gitを活用することで、チームでの作業効率を高めたり、多くのファイルを管理することが簡単になります。というわけで本記事では、Gitについて基本的な用語について解説いたします。
学習・スキル
【ゼロから始めるAI】巷で噂のAIを触ってみたい 第1回
よく話題に挙がる「AI」というものAI(人工知能)は、ChatGPTの登場以来、「会話ができるAIが誕生した!」とSNSやメディアで大きな注目を集めてきました。今では企業が業務に取り入れ始めており、社内チャットに導入したり、テスト工程で画像認識を活用したりと、すでにAIは社会に欠かせない存在となりつつあります。私のエンジニアの友人の中には、「このままではAIに仕事を奪われるかもしれない……」と危機感を抱く人も出てきています。さらに、ゲーム開発の分野でもAIを活用した取り組みが話題になるなど、AIの可能性はどんどん広がっています。とはいえ、世間でこれだけ話題になっていても、「AIって何となく分かるけど、実際の使い方までは分からない……」という人も多いのではないでしょうか。実は、私自身もその一人です。だったらいっそ、自分で触って、理解を深めてみよう! そう思い立ったのがこの企画の始まりです。AIを趣味や仕事に活かすヒントを探しながら、ゼロからAIについて学んでいきたいと思います。このシリーズでは、「とにかく簡単に始めてみる」をテーマに、AIの基礎から実際の使い方まで、やさしく解説していきます。
初心者
SES営業が語る!需要と将来性の高いプログラミング言語3選!
念願のシステム会社に就職し、新規プロジェクトの立ち上げや、新サービスの開発など期待を持って業界に飛び込んだにも関わらず、現状はレガシーシステムの運用保守や、サブシステムの小規模な改修や単体テストばかり。ずっと今の仕事を続けて年収や役割がアップするのだろうか?今のままで自分の将来は大丈夫なのか?悩んでいる方も多いのではないでしょうか。優秀な技術者は常に業界のトレンドや需要に合わせて自身をアップデートしていますので、現状のままで良いのか悩んでいる技術者は優秀な証です。しかし、業務で携わっている技術が市場の需要からかけ離れたことをしていると、その努力が報われないこともあるでしょう。本記事では、そのような方に向けて需要と将来性の高いプログラミング言語をご紹介します。
【Java】シングルスレッドとマルチスレッド
Javaのスレッド(thread)とは、プログラムの実行単位を表しており、ひとつのプログラム(プロセス)の中で複数の処理の流れを走らせることができます。そうすることで、複数のタスクを同時に処理することができます。スレッドをJavaで使うためのクラスjava.lang.Threadを指す言葉でもあります。簡単な例で考えてみると、家で家事をする場面を考えてみます。独身のまま、洗濯、掃除、料理をすると一つ一つ終わらせてから次の家事に移行するので時間がかかってしまいます。ただ、結婚して二人で同じ作業を行うと、半分もしくは半分以下の時間で終わらせることができます。それと同じで、プログラムでも処理を複数同時に動かせば、短い時間で効率よく処理できます。その仕組みがスレッドです。スレッドは、今ではごく当たり前に使われているのです。スレッドにはシングルスレッドとマルチスレッドがあります。今回は、シングルスレッドとマルチスレッドの特徴についてまとめていきたいと思います。
初心者
タスク管理ツール、Redmineの使い方
Redmine(レッドマイン)とはオープンソースで公開されているプロジェクト管理ツールのことです。 プロジェクト管理ツールとは、チームで作業する場合の進捗状況やスケジュールを管理することを目的としており、システム開発などエンジニアの仕事においては必須のツールであります。 今は様々なプロジェクト管理ツールが存在していますが、数あるツールの中でもRedmineはオープンソースで自由度が高いという特徴を持っています。 Redmineはフランス人であるJean-Philippe Lang氏によって開発され、2006年に最初のバージョンがリリースされた、かなり歴史の古いプロジェクト管理ツールです。 オープンソースであるためGitHub上でソースコードが公開されており、様々なエンジニアが開発に参画していますしていることから、GitHubでは細かいアップデートが頻繁に行われています。 また、Redmineはオープンソースソフトウェアであるため、全ての機能を無料で使うことが可能です。個人利用としてプロジェクト管理ツールを使いたい場合にも心強いと言えるでしょう。
製造・コーディング(PG/バックエンド)
サーブレットJSPを学ぼう!!#1
インターネットの日常化に伴い、アプリケーションの形態も変わってきました。以前は、利用者のコンピューターにインストールして利用するデスクトップアプリケーションが当たり前だったのですが、今では、ブラウザで使うことが出来るwebアプリケーションが広く普及しています。プログラミング言語Javaでwebアプリケーションを開発するための技術を一緒に学びましょう。
製造・コーディング(PG/フロントエンド)
【Git】基礎まとめ | 初心者向け
今回はバージョン管理システムのGitについてまとめました。Gitを使用すると、より効率的にシステムを開発することができます。ぜひ最後までお読みください!
その他(SE)
【初心者用】React フックについて
React フックとは、Reactのライブラリの一部として導入された機能で、state などの React の機能をクラスを書かずに使えるようになります。React フックを活用すると、簡潔で読みやすいコードを記述できます。
初心者
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
学習・スキル2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【初心者用】IISについて調べてみた
個人でプログラミングを勉強する際にIISを使用することになったのですが、「IISって具体的には何だっけ?」となったのでまとめてみます。 タイトルにある通り、初心者向けに極力噛み砕いて説明していきます。
製造・コーディング(PG/バックエンド)
Git GUIツールの使い方:初心者向けチュートリアル
Gitとは、分散型バージョン管理システムの1つで、コードやファイルなどの変更履歴を記録し、複数の人で同時に開発を進めるために使われます。Linuxの開発者であるLinus Torvaldsによって開発され、現在は世界中の多くの企業やオープンソースプロジェクトで使用されています。Gitは、ファイルの変更履歴を保存するための「リポジトリ」と呼ばれるデータベースを持ち、このリポジトリに対してコミットと呼ばれる操作で変更履歴を追加していきます。また、ブランチと呼ばれる分岐を作成して、異なるバージョンのコードを管理します。Gitの主な特徴としては、以下のようなものが挙げられます。・ローカルでの高速な動作・分散型であるため、オフラインでも開発ができる・変更履歴を管理しやすく、コードの品質を高めることができる・大規模なプロジェクトでもスケーラブルに対応可能Gitは、コマンドラインツールを使って操作することもできますが、GUIツールを使って操作することもできます。
アーキテクト・技術選定(PG/バックエンド)
【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
学習・スキル
JUnitとは何か?初心者向け入門ガイド
Junitは、Java言語用のオープンソースの単体テストフレームワークです。単体テストは、プログラムの各部分が個別に正しく動作するかを確認するために行われます。Junitは、テスト駆動開発(TDD)と呼ばれるアジャイルソフトウェア開発の手法をサポートするために開発されました。Junitは、テストケースの定義、テストの自動実行、テスト結果のアサーション(検証)など、テストに必要な機能を提供します。また、テスト結果のレポーティング機能も備えています。Junitは、プログラマーにとって非常に便利なツールであり、プログラムの品質を向上させるために欠かせないものとなっています。Junitを使用することで、プログラムの変更がもたらす影響をすばやく確認することができます。
テスト(PG/バックエンド)
【初心者向け】Packet Tracerでネットワークを学ぶ(DHCP)
DHCP(Dynamic Host Configuration Protocol)は自動的にIPアドレスやサブネットマスク等をPCやルータに配布してくれるプロトコルです。
詳細設計(内部設計)(インフラ)
組み込み開発とOSの関係は?汎用OSとの違いから将来性まで
組み込み開発とは、家電や自動車、ロボットなどに搭載される制御ソフトウェアを開発することです。組み込み開発には、OS(オペレーティングシステム)という重要なソフトウェアが必要です。OSとは、機器の基本的な動作や管理を行うソフトウェアのことで、組み込み開発では、組み込みOSと呼ばれる特殊なOSを使用します。この記事では、OSとは何か、組み込みOSとは何か?組み込みOSの種類から、その需要と将来性まで解説していきます。
初心者
【初心者用】ifconfigの出力結果の見方
Linuxシステムでネットワーク設定や情報を確認するための基本的なコマンドの1つがifconfigです。この記事では、初心者向けにifconfigコマンドの使用方法、オプション、出力結果の解釈について詳しく説明します。また、具体的な使用シーンや例、関連するコマンドや技術についても紹介します。
その他(インフラ)
