独り言

プログラミングの講師をしています。新人研修で扱う技術の解説と個人の技術メモ、技術書の紹介など

【情報処理】ネットワークの基本(IPv4)

ここではネットワークの中でも、IPv4のIPアドレスについて解説します。 IPアドレスの基本と、IPv4とIPv6のざっくりとした解説はネットワークの基本の記事に書きましたので、そちらを参照ください。 ここではIPアドレスという表記は基本的にIPv4におけるIPア…

【情報処理】サーバーの基本

ITの世界にはサーバーという言葉が頻繁に出てきますが、 サーバーって何ですか?と聞いて簡潔に答えられる人は意外と少ない気がします。 ここではサーバーについて解説します。 ちなみに、日本語の場合は本やサイトによって「サーバー」と書く場合と「サーバ…

【情報処理】セキュリティの基礎

ここではセキュリティの基礎のついて解説します。 セキュリティの必要性 コンピュータを扱う上でセキュリティは重要です。 インターネットの発展により、世界中のコンピュータ同士とやり取りができるようになりました。 それは、とても便利になった反面、情…

【プログラミング全般】アルゴリズム入門

ここではアルゴリズムの基本について解説します。 アルゴリズムとは さっそくですがアルゴリズムとはいったい何でしょうか。 アルゴリズムとは、「ある特定の目的を達成するための処理手順」だそうです。 何かをするときの手順、あるいはやり方のことです。 …

【情報処理】ネットワークの基本

ここではネットワークの基本について学んでいきます。 ネットワークとは ネットワークとはそもそもどういう意味でしょうか。 ネットとは直訳すると網という意味があります。 網目状のように、何かと何かが繋がり合っている、あるいは関連し合っている状態が…

【情報処理】ソフトウェアの基本

ここではソフトウェアの基本を解説します。 ソフトウェアとは そもそもソフトウェアとは何でしょうか。 言葉は聞いたことがあって何となく知っている人も多いかと思います。 そもそもソフトウェアという言葉はハードウェアの退避としての言葉です。 ハードウ…

【IT業界全般】IT業界の仕事

ここではIT業界の仕事について簡単に解説します。 IT業界の仕事とは ITとはInformation Technologyの略。 直訳すると情報技術。 IT業界の仕事とは、ざっくりと言ってしまうと、情報技術を使ってお客様に対して何かしらサービスを提供する仕事になります。 情…

【情報処理】ハードウェアの基本

コンピュータ関係での仕事をするなら、ハードウェアについての最低限の知識は持っておいた方が良いでしょう。 ということでここではハードウェアの基本について解説します。 ハードウェアとは そもそもハードウェアとは何でしょうか。 ハードウェアは、目に…

【PC操作】タイピングをマスターする

タイピングの必要性と上達のコツなどについての記事となります。 タイピングの必要性 まず、タイピングは、プログラマー・エンジニアなどのIT関連の企業への就職を目指している、あるいはこれからプログラミングを学習しようとしている、もしくは学習し始め…

【書籍】リーダブルコード

プログラミングの最重要課題の1つは、命名、つまり名前を付けることだと言われています。 プログラミングと言うのは、コンピュータに実現させたい処理の流れを、プログラミング言語を使って書いていくことです。 そのためには、処理の流れ(ロジック、アルゴ…

【SQL】家計簿のデータの集計から学ぶSQLの基礎

SQL

家計簿のデータを1年分、月別に集計するSQLを考えたところ、これができたらSQLの基本はほぼマスターしたと言えるのでではないかと思ったので、そんな話。 DBはPostgreSQLを想定。 また、分かりやすさを優先してテーブル名とカラム名は日本語にしています。 …

【Spring Boot】【Heroku】Spring BootのWebアプリケーションを作成してHerokuにアップするまで

Spring Bootを使って作成したJavaのWebアプリケーションを、Herokuを使ってクラウド上にアップするまで手順についてのメモです。 今回はGitHubと連携する方法を紹介。 PCの環境はWindows10、DBはPostgreSQLを使用していることを想定。 必要なアカウント GitH…

【書籍】プログラマが知るべき97のこと

この本は、世界中から選ばれた97人の優秀なプログラマ達からのメッセージが書かれた本となっています。 内容としては主にプログラミング初学者向けの内容となっています。 内容は、 プログラムを書くときの心構えや考え方 、注意すべきこと プログラムの質を…

【書籍】 わかばちゃんと学ぶ Git使い方入門

GitはWeb系の開発をしていく上では欠かすことのできないほぼ必須のバージョン管理ツールです。 ただ、必須とは言っても、初めて学ぶときには知らない用語が多く出てきて、初心者は混乱してしまうツールの一つでもあります。 リポジトリ コミット クローン プ…

【書籍】楽々ERDレッスン

この本はDB設計に関する本です。 新人の時に読んだ本ですが、個人的にはこの本を読んで受けた影響はかなり大きいです。 DB設計に関する考え方は非常に参考になりましたし、SQL文の内部の動きや書き方に関する内容は、SQLを使用して開発をする全ての人に知っ…

【書籍】コンピュータのひみつ

この本は私がIT企業に内定を取れた大学4年の時、プログラミングやコンピュータについて全く知識がなかったころに読み、非常に分かりやすく勉強になったと思った本の一つです。 出版されたのはそれなりに前ですが、内容は今読んでも色あせていません。 内容は…

【書籍】アルゴリズム図鑑

コンピュータアルゴリズムについての入門書になります。 アルゴリズムとは、ざっくりいえば物事を達成するための手順です。 例えば、料理におけるレシピなどがアルゴリズムになります。 コンピュータは、人間のように自分で考えて動くことができません。 人…

【書籍】プログラミング言語図鑑

タイトルの通り、世の中に存在するプログラミング言語の種類について紹介した書籍になります。 昔から存在するメジャーな言語から、最近よく使用される流行の言語、全く聞いたことがない初めて知る言語など、実に様々な言語について紹介されています。 特定…

【書籍】プログラミングリテラシー

プログラミングリテラシー。 この本はプログラミング初心者や、これからプログラミングを学びたいという人向けの書籍になります。 内容としては、プログラミングを学ぶのであれば知っておきたい基本的な用語の解説がメインです。 後半は技術書の選び方も書か…

【書籍】スッキリわかるJava入門

Javaの入門書の紹介です。 紹介する本はこちら、スッキリわかる Java入門です。 第2版は以前読んだことがあるのですが、最近新しくなって第3版が出版されました。 研修生に配布するので、私も今一度復習の意味も込めて読み直してみました。 以前読んだときも…

【SQL】SQL入門(パフォーマンスチューニング編)

SQL

ここではSQLのパフォーマンスチューニングについて解説していきます。 SQLはSELECT文の書き方をある程度覚えてしまえば、やりたいことは大抵実現できます。 しかし、インデックスなどのパフォーマンスに関する知識がないと、データ件数が増えた時に速度が遅…

【SQL】SQL入門(DBの様々な機能編)

SQL

ここでは、テーブル以外のDBで使用されるオブジェクトについて解説します。 RDBでは、テーブルと最低限のインデックスがあればシステムとして成り立ちますが、DBの機能を最大限活用することで、よりプログラミングを効率化したり、メンテナンス性を高めたり…

【SQL】SQL入門(DML編)

SQL

ここではSQLの中でも最も使用頻度の高いDMLについて解説します。 ここからは先のSQL(導入・DBMS概要・DDL)の記事で作成した、ユーザー「testuser」、データベース「testdb」に接続している状態と仮定して学習を進めます。 DDLの個所で作成した「items」テ…

【SQL】SQL入門(導入・DBMS概要・DDL編)

SQL

データベースを操作するための言語であるSQLについて解説していきます。 ここではデータベースの導入からデータベースの概要、SQLの中のDDLについて解説します。 目次 導入 データベース概要 SQLとは DDL 導入 SQLを学習するにはデータベースの環境が必要で…

【Java】デザインパターン入門

ここではJavaを用いて、デザインパターンについての解説をします。 Javaの基礎と、オブジェクト指向の基本を理解していることを前提とします。 Javaとオブジェクト指向については下記の記事を参照ください。 case10.hateblo.jp case10.hateblo.jp デザインパ…

【PHP】PHP入門(導入~関数編)

PHP

目次 PHPとは 環境構築 変数 演算 制御構文 配列 関数 PHPとは PHPは、Webアプリケーションの作成に特化したプログラミング言語で、正式名称は「Hypertext Preprocessor」です。 HTMLの中に直接ソースコードを埋め込むことができる言語です。 このような言語…

【Excel】Excel入門(ショートカットキー編)

ショートカットキーとは マウスを私用せず、キーボードによる操作で特定の操作を行う方法のことをいいます。 Excelではマウス操作でほとんどの操作を行うことが可能ですが、一般にショートカットキーを使用したほうが速くなる場合が多いです。 Excelの用途に…

【Git】Git 入門(Git Bash - リモートリポジトリ編)

Git

ここではリモートリポジトリと連携して、Git Bashで操作する場合の操作方法を見ていきます。 Gitの概要とローカルリポジトリ編については下記の記事を参照ください。 case10.hateblo.jp case10.hateblo.jp GitHubのアカウントとリモートリポジトリの作成 ま…

【Git】Git 入門(Git Bash - ローカルリポジトリ編)

Git

Gitの概要は以下の記事に書いたので、概要を知りたい方はそちらを参照ください。 case10.hateblo.jp Git Bashを動かしながらGitの動きを理解を深めます。 ここでは主にリモートリポジトリに操作について学びます。 まず「Bash」とは、LinuxなどのサーバーOS…

【Git】Git入門(概要と用語の解説)

Git

ここではシステム開発の中でもよく使用されるGitと呼ばれるツールについて解説します。 まずはGitの概要と、Gitの操作の中で使用される用語について解説します。 バージョン管理システム入門 Gitの詳しい解説に入る前に、まずはバージョン管理システムとは何…