【Java】シングルスレッドとマルチスレッド
Javaのスレッド(thread)とは、プログラムの実行単位を表しており、ひとつのプログラム(プロセス)の中で複数の処理の流れを走らせることができます。そうすることで、複数のタスクを同時に処理することができます。スレッドをJavaで使うためのクラスjava.lang.Threadを指す言葉でもあります。簡単な例で考えてみると、家で家事をする場面を考えてみます。独身のまま、洗濯、掃除、料理をすると一つ一つ終わらせてから次の家事に移行するので時間がかかってしまいます。ただ、結婚して二人で同じ作業を行うと、半分もしくは半分以下の時間で終わらせることができます。それと同じで、プログラムでも処理を複数同時に動かせば、短い時間で効率よく処理できます。その仕組みがスレッドです。スレッドは、今ではごく当たり前に使われているのです。スレッドにはシングルスレッドとマルチスレッドがあります。今回は、シングルスレッドとマルチスレッドの特徴についてまとめていきたいと思います。
初心者
【JSTQB】テストの基礎①
JSTQB認定テスト技術者資格とは、日本におけるソフトウェアテスト技術者資格認定の運営組織であるJSTQB(Japan Software Testing Qualifications Board)により認定される、ソフトウェアテスト技術者資格です。
初心者
【IT転職】インフラエンジニアになりたい人必見!仕事内容、必要なスキル・資格をまとめて紹介!!
突然ですが皆さん、ITエンジニアにも大まかに分類すれば2つの職種があることをご存知でしょうか?一つは、アプリケーションやシステムなどソフトウェアの開発を行うシステムエンジニア。そして、もうひとつはITの裏側、すなわちアプリやシステムを動かす根幹となるためのサーバやネットワークなどの設計、構築、保守・運用を行うインフラエンジニアです。今回は、なかなか実態が想像しにくいインフラエンジニアの業務内容について紹介、そしてインフラエンジニアになるための必要なスキルや向いている人の特徴などを解説していきます。
学習・スキル
iOSエンジニアとは?仕事内容・必要なスキル・おすすめな資格をご紹介
現在、多くの方がスマートフォンで日常生活の連絡や情報収集、ゲームを楽しんでいます。そして、そこからスマートフォンアプリを作れるエンジニアの需要は高まっています。とくに、日本で利用者が多いiPhoneのアプリケーションを作ることができるiOSエンジニアは需要が非常に高いです。しかし、iOSエンジニアの具体的な仕事内容や活躍するために必要なスキルはなかなか分からないですよね。そこで、ここではiOSエンジニアの仕事内容と必要なスキルにくわえ、おすすめな資格についてもご紹介します。これからエンジニアとして活躍を目指そうとお考えの方は、ぜひご確認ください。
学習・スキル
組み込みエンジニアの将来性と需要
組み込みエンジニアの将来性と需要について探ってみましょう。組み込みシステムは、私たちの日常生活において見逃せない役割を果たしており、その基盤となる技術はますます重要性を増しています。この記事では、組み込みエンジニアの仕事内容、その専門性の求められる分野、そして未来への展望に焦点を当てて詳しく解説します。組み込みエンジニアが果たす役割は、私たちの日常に欠かせない多くのデバイスやシステムを支えることです。冷蔵庫の制御、自動車のエンジン管理、医療機器の動作制御など、これらの技術は私たちの生活の中で当たり前に使用されています。本記事では、組み込みエンジニアの存在が及ぼす影響と、その需要の増大について詳しく見ていきましょう。
キャリア
学校環境で進む情報化
近年、教育の情報化が進み、各学校において機器の整備や先端技術を活用した教育が広がっています。電子黒板やタブレットを活用した授業が行われることは珍しい事ではありません。ICT支援員などの立場で学校現場の環境整備に携わる場合、教室の広さや利用者等に合わせた運用・保守が必要になります。今回は通常授業で使用する際に用意するべきICT機器や、遠隔授業の際のICT機器、現在行われている先端技術を活用した教育についてまとめました。
学習・スキル
エンジニアとしてのキャリアアップに必須!応用情報技術者試験合格への道
IT業界には、さまざまな資格がありますが、その中でも応用情報技術者試験は、幅広い分野の知識と実践的な能力を持つエンジニアを認定する国家試験です。応用情報技術者試験は、IT業界での就職・転職や、キャリアアップを目指す際のアドバンテージとして活用できる有効な資格の一つでもあります。この記事では、応用情報技術者試験とはどのような試験なのか?資格取得のメリットは何か?IT業界初心者の方に向けて、応用情報技術者試験の全貌を解説いたします。
学習・スキル
ローコード開発とは?ノーコード開発との違い、メリット・デメリットを徹底解説!
近年、IT業界では、プログラミングの知識やスキルがなくても、簡単にアプリやウェブサイトを作成できる「ローコード開発」が注目されています。ローコード開発とは、何なのでしょうか?また、「ノーコード開発」とどう違うのでしょうか?この記事では、ローコード開発の概要やメリット・デメリットについて解説します。
学習・スキル
【MySQL】実行計画を活用した速度改善
作成したプログラムの実行速度が単体テストのときは早かったのに、結合テストや本番では遅くなって問題になることがよくあると思います。今回はデータベースへのアクセス速度の問題を、実行計画を活用しながら解決する方法を簡単に説明いたします。説明はMySQLを対象としておりますが、基本的なところはどのDBMSでも同じと考えています。
初心者
【JSTQB(FL)対策】第1章テストの基礎 1.1テストとは何か?~1.3テストの7原則
こちらの記事ではJSTQBのシラバスのうち、第1章テストの基礎分野における以下の分野の学習内容及び学習してみて私が思ったことについて記載する。
テスト(運用・保守・サポート)
キッティングの基礎【GIGAスクール端末編】
学校現場で使用される1人1台端末の導入・整備に関わる場合、児童生徒が安心して端末を利用する事ができるようキッティングを行うことになります。今回はキッティングの基礎を中心に、児童生徒が使用する端末に関するポイントをまとめてみました。
学習・スキル
DBの基礎と、Microsoft Accessについて
皆さんは”Access”(アクセス)という言葉を聞いたことがありますか? Accessとは、Microsoft社が運営するツールで、主にデータ抽出、集計処理や、業務システムの開発環境や動作環境として使われております。 企業向けというよりかは個人向けのデータベースソフトですが、多機能であり、データベース以外にも、外部のデータベースを参照してデータ抽出やデータ集計をするためのBI(ビジネスインテリジェンス)ツールとしてや、帳票作成機能を活用した業務システムの開発環境、動作環境としても利用されるシーンが多いのが特徴です。 また、AccessにはVBAが標準搭載されているため、プログラミングを行うことも可能です。 プログラミングを行うことで、上記の活用方法をより高度に、より便利に実装することができます。 ただ、機能が多すぎるため、新しくAccessの使い方を習得しようとする場合は、覚えることが多い分、それだけ学習コストが高めとなっております。 今回の記事では、そんなAccessの機能と一般的なデータベース知識の紹介を併せて行っていこうと思います。
製造・コーディング(PG/バックエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年11月17日
学習・スキル2023年10月26日
テスト(運用・保守・サポート)2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見るGit GUIツールの使い方:初心者向けチュートリアル
Gitとは、分散型バージョン管理システムの1つで、コードやファイルなどの変更履歴を記録し、複数の人で同時に開発を進めるために使われます。Linuxの開発者であるLinus Torvaldsによって開発され、現在は世界中の多くの企業やオープンソースプロジェクトで使用されています。Gitは、ファイルの変更履歴を保存するための「リポジトリ」と呼ばれるデータベースを持ち、このリポジトリに対してコミットと呼ばれる操作で変更履歴を追加していきます。また、ブランチと呼ばれる分岐を作成して、異なるバージョンのコードを管理します。Gitの主な特徴としては、以下のようなものが挙げられます。・ローカルでの高速な動作・分散型であるため、オフラインでも開発ができる・変更履歴を管理しやすく、コードの品質を高めることができる・大規模なプロジェクトでもスケーラブルに対応可能Gitは、コマンドラインツールを使って操作することもできますが、GUIツールを使って操作することもできます。
アーキテクト・技術選定(PG/バックエンド)
【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
DBのビューとは?メリットデメリットや使用方法についても紹介!
アプリケーション開発にとってデータベースは必須スキルとなっております。データベースの知識がないと、アプリケーション開発に難航することでしょう。しかしデータベースの知識を身に付けるとなると、かなりの勉強量を要します。というのもデータベースオブジェクトには様々な種類があり、一朝一夕では身に付くものではありません。今回は、データベースのビューについてご説明いたします。ビューそのものは必ず覚えてなくてはならないと言うものではありませんが、よく使われます。まずは本記事でビューの基礎知識を身に付けてください。本記事ではメリットデメリットや具体的な使用方法について紹介しております。
学習・スキル
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
学習・スキル
GitHubのReadmeをMarkdown記法で書く
Markdown記法は、プレーンテキストに特定の書式を付けることで、簡単にWebページやドキュメントを作成するための記法です。Markdown記法は、文書の見た目を整えるためのHTMLタグを記述する必要がなく、テキストファイルとしても読み書きが容易であるため、多くの人々によって広く使用されています。
プロジェクト推進・管理(PG/バックエンド)
【初心者用】ifconfigの出力結果の見方
Linuxシステムでネットワーク設定や情報を確認するための基本的なコマンドの1つがifconfigです。この記事では、初心者向けにifconfigコマンドの使用方法、オプション、出力結果の解釈について詳しく説明します。また、具体的な使用シーンや例、関連するコマンドや技術についても紹介します。
その他(インフラ)
【初心者向け】Packet Tracerでネットワークを学ぶ(CLI操作の基本編①)
ルータ初期設定編ではPacket Tracerを使ってルータを直接操作し色々な設定を試してみたいと思います。 まずCisco製品のルータにはPCと同様にOSがインストールされています。 それが「Cisco IOS(Internetwork Operating System)」です。 スイッチでもこのOSを利用しています。 Cisco IOSはWindowsのようなグラフィカルなインターフェースではなくコマンド入力のみで様々な操作を行うインターフェースになります。 コマンドで操作するインターフェースのことを「CLI(Command Line Interface)」と言います。
詳細設計(内部設計)(インフラ)
【初心者向け】テスト観点について
テスト観点(test perspective)とは、「ソフトウェアやシステムをテストする際に、評価すべき特定の側面や機能」を指します。テスト観点は、テストプロセスを計画、設計、実行する際に、目標となる品質要素を明確にすることで、効果的なテストケースを作成し、重要な問題を特定できるようにする役割があります。これは、製品やサービスの品質向上に大きく貢献する重要な要素であると言えます。
初心者