• Skip to main content
  • Skip to primary sidebar

プログラミング入門ナビ by Proglus(プログラス)

プログラミング学習初心者のための情報メディア

本ページにプロモーションが含まれる場合があります

You are here: Home / Archives for プログラミング入門ナビ編集部

プログラミング入門ナビ編集部

HTMLはどうやって開発された?経緯や主なバージョンについて紹介!

2020-07-19 By プログラミング入門ナビ編集部

レトロなオフィスで働く科学者たち

はじめに

プログラミング言語を学んでいると「この言語はどうやって開発されたんだろう?」と疑問に思うことはありませんか?

開発の経緯や背景を知っていると、より興味を持って学習が進められますね。

この記事ではHTMLの歴史について簡単に紹介します。

動画解説

本記事の内容を動画でも解説しています。

https://www.youtube.com/watch?v=3WdkHuiXm9A&feature=youtu.be

HTML開発の経緯

レトロなオフィスで働く科学者たち

HTMLは1989年、スイスのジュネーブにあるCERN(欧州原子核研究機構)のイギリス人研究者であるティム・バーナーズ・リー博士によって開発されました。

研究所内では多くの研究者により様々な研究が為されていましたが、膨大な論文の中から関連する資料を探し出すのは一苦労で、より簡単に研究者同士が進捗状況や研究成果を共有できるようにする必要があったのです。

ティム・バーナーズ・リー博士はこの目的のためにハイパーテキストシステムを考案し、ある論文から別の参考文献へリンクを貼ってすぐに参照できるようにしました。

これがインターネット上でドキュメントやメディアを互いに参照しあうハイパーテキストシステムであるWorld Wide Webが生まれた経緯です。

そして、このシステム上のドキュメントを記述するための言語としてHTML(Hyper Text Markup Language)が開発されました。

下記が1991年、ティム・バーナーズ・リー博士によって世界で初めて公開されたウェブサイトで、現在は復刻版として公開されています。

World Wide Web

博士はこの偉大な功績を称えられ、2016年にIT界のノーベル賞ともいわれるチューリング賞を受賞しています。

なお、インターネットが開発されたのは別の経緯であり、1969年にアメリカの国防総省にて情報共有を目的に開発されたARPANET(アーパネット)が起源です。

主要なHTMLのバージョン

ソフトウェアの入ったパソコン

開発以後、HTMLは何度かのバージョンアップがありました。

下記が主要なHTMLのバージョンです。

  • 1999年:W3C勧告 HTML 4.01
  • 2000年:W3C勧告 XHTML 1.0
  • 2014年:W3C勧告 HTML5
  • 2016年:W3C勧告 HTML5.1(HTML5のマイナーアップデート)
  • 2017年:W3C勧告 HTML5.2(HTML5のマイナーアップデート)

HTML4.01やXHTML1.0が10年以上使用されていましたが、現在では新規のプロジェクトに関してはHTML5またはそのマイナーアップデート版が使用されます。

HTML5はフォームに使える部品やスマートフォン向けの機能等を大幅にアップグレードしたもので、ビデオをページに埋め込むことも可能となりました。

このようにHTML5はHTML4の良い部分を残しつつ、新しいニーズに合った機能が追加されています。

なお、XHTMLとはExtensible Hypertext Markup Languageの略称で、拡張性の高いマークアップ言語であるXML(Extensible Markup Language)の文法で書き直したものです。

HTMLでは複雑な数式や化学式を表現することができなかったため、XMLの拡張性を取り込みつつ、ブラウザでも表示できるよう新たに開発されたのがXHTMLです。

しかしながら後発のHTML5でMathMLやSVGといった機能を埋め込んで数式や化学式の表示が可能となったため、2009年に開発が中止されました。

W3C

W3Cトップ

W3C(読み:ダブリュースリーシー)はWorld Wide Web Consortiumの略称で、World Wide Webで使用される各種技術の標準化を推進するために設立された非営利の標準化団体です。

先述のティム・バーナーズ・リー博士が1994年に創立し、その後も率いています。

数百の企業や団体が参加してWWW技術の標準化や教育活動を行っており、HTMLの仕様もこの団体によって決定されているわけです。

一般に標準化の作業はとてつもない時間と手間がかかるといわれますがHTMLも例に漏れません。

W3C勧告(正式にW3Cが仕様として認めること)となるまでには多くのステップが必要で、また、勧告後も間違いがあれば「第○○版」といった形で更新されていきます。

まとめ

HTMLの歴史と関連情報を紹介しました。研究成果の共有を目的に開発された技術が、今やここまで世界中の人々からありとあらゆる目的で活用されているのは驚きですね。

開発者本人であるティム・バーナーズ・リー博士もまさか数十年でこんな世界になるとは予想できていなかったかもしれません。

本記事の内容は下記の講座からの抜粋です。HTMLについてより体系的に学びたい方はぜひチェックしてみてください。

新HTML入門(Proglus)

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: HTML, 歴史

JavaScriptの「this」は呼び出し方によって値が変わる?違いを徹底解説!

2020-05-29 By プログラミング入門ナビ編集部

はじめに

指し示す指

JavaScriptの「this」は他の言語と比較し挙動に少々癖があります。呼び出し方によってどの値を指すかが変わるためです。

思ったような値が得られない時は、thisの呼び出し方に問題があるかもしれません。

この記事では呼び出し方の違いによるthisの挙動を説明します。

thisの呼び出し方:基礎編

まずはよく使われるオーソドックスな呼び出し方を見ていきましょう。

基礎編クイズ

value = 1;
var obj = {
  value: 2,
  func: function() { console.log(this.value) }
}
function func() { console.log(this.value) }
var test = obj.func;

console.log(this.value);    //①
obj.func();                 //②
test();                     //③
func();			//④

上記①②③④では何が表示されるでしょうか。少し考えてみてください。

答えは下記のようになります。

> 1       //①
> 2       //②
> 1       //③
> 1       //④

正解できましたか?

①②③④はいずれもthis.valueの呼び出しをしていますが、この通り表示される値が違います。なぜこのようになるのか、順を追って説明していきます。

グローバルコンテキストでの呼び出し

①ではthisをグローバルコンテキスト(関数やオブジェクトの外側)で呼び出しています。この場合、thisにはグローバルオブジェクトが入ります。

グローバルオブジェクトはJavaScriptが実行される環境により変わるのですが、ブラウザの場合はWindowオブジェクトとなります。

下記のようにconsole.logでthisを表示させればグローバルオブジェクトが何なのか確認できます。

console.log(this);	//> [object Window]が表示される

今回は1行目でvalue = 1;としたことで、このグローバルオブジェクトにvalueという値が定義され1が代入されていたため1が表示されました。

このように、グローバルコンテキストでthisを呼び出すと、グローバルオブジェクトが入ります。

オブジェクトのメソッド呼び出し

②は「objオブジェクトのfunc」をメソッド呼び出しています。

このように「〇〇.func();」といった具合で関数呼び出しの前に「〇〇.」がつく場合、関数「func」のスコープ内でのthisが指すのは前置きの〇〇が示すオブジェクトです。

この例ではobjのfunc関数スコープ内でthisが呼び出されているので、このthisが指すのは自分自身であるobjオブジェクトですね。

そしてobjは自身のvalueを持つため、結果的にthis.valueはこれを呼び出して2が入ります。

③は同じくobjの中で定義されたfuncを実行しているのですが、testにobj.funcを代入したあとでtest();と前置きなしで呼び出されていますね。

このように、グローバルコンテキストで前置きなしに関数だけが呼び出されている場合の関数内thisは、次項の「関数呼び出し」のケースにあたりグローバルオブジェクトを指すため1が表示されます。

関数呼び出し

④はグローバルコンテキストで定義された関数funcを呼び出しています。メソッド呼び出しではないので、「〇〇.」のような前置きはありません。

この場合の関数内thisもグローバルオブジェクトを指します。

グローバルオブジェクト(ブラウザで実行の場合はWindowオブジェクト)のvalueは一行目で定義されている通り1なので、1が表示されるわけです。

thisの呼び出し方:応用編

基礎編で見たように、thisの挙動は呼び出し方によって変わります。thisに何を入れたいかを明示的に指定するためのいくつかの方法を紹介します。

アロー関数呼び出し

ES6からはアロー関数が使用できるようになりました。関数としての基本的な挙動は通常の関数(function)と変わらないのですが、関数スコープ内のthisについては挙動が異なります。

アロー関数の中で呼び出されたthisは、関数の呼び出され方に関わらず、その関数が最初に定義された時点で指していた対象を指し続けるのが特徴です。

例を見てみましょう。

value = 5;
function func1() { console.log(this.value) }
var func2 =()=> { console.log(this.value) }
var obj1 = {
  value: 1,
  func1
}
var obj2 = {
  value: 2,
  func2
}

obj1.func1();	//1が表示される
obj2.func2();	//5が表示される

func1は従来の関数、func2はアロー関数です。この時点では両方ともグローバルコンテキストで定義されているため、thisはグローバルオブジェクトを指します。

その後に2種類のオブジェクト:obj1とobj2が定義され、それぞれfunc1とfunc2を保有していますね。

obj1のメソッド呼び出しでは、基礎編で触れたようにthisはobj1を指すので、obj1が持つvalueの値である1が表示されます。

これに対し、obj2のメソッド呼び出しではfunc2がアロー関数なので、thisが指すのはobj2でなく定義された時点で指していたグローバルオブジェクトのままです。

結果として、ojbのvalue(値は2)でなく、グローバルのvalue(値は5)が表示されます。

このように、アロー関数を使うと呼び出され方によらずthisが指す対象を定義当初のまま固定できるのです。

関数のコンストラクタ呼び出し

関数をグローバルコンテキストで前置き無しに呼び出すとその関数内でのthisはグローバルオブジェクトを指すのでした。

しかし、関数をコンストラクタ呼び出しすると、関数自体がインスタンスとなりthisは自身を指すようになります。

function Obj() {  console.log(this) }
Obj();		//> [object Window]が表示される
var obj = new Obj();	//> [object Object]が表示される

1行目の関数を2行目で呼び出した場合はthisはグローバルオブジェクトであるWindowオブジェクトになりますが、3行目のようにコンストラクタ呼び出しをするとObjectオブジェクトとなっていることが分かりますね。

実際に通常の関数呼び出しとコンストラクタ呼び出しの挙動を比較してみましょう。

function MyObject(num){
  this.value = num;
  console.log(this.value);
  this.show = function() { console.log(this.value) };
}
MyObject(5);		//5が表示される
var myObj = new MyObject(3);	//3が表示される
console.log(this.value);	//5が表示される
myObj.show();		//3が表示される

6行目が通常の関数呼び出し、7行目がコンストラクタ呼び出しです。

関数MyObjectではthis.valueに引数の値を代入しますが、通常呼び出しではグローバルオブジェクトのvalueに、コンストラクタ呼び出しでは自身(MyObjectのインスタンス)のvalueに値を入れています。

そのため6行目・8行目ではグローバルvalueが呼ばれるので5が、7行目・9行目ではMyObjectインスタンスのvalueが呼ばれるので3が表示されるわけです。

apply・call関数を使った呼び出し

関数呼び出しにおいてthisに何を入れるか明示的に指定できるのがapply関数とcall関数です。

使い方を見てみましょう。

value = 0;
var obj1 = { value: 1 };
var obj2 = { value: 2 };
function func() { console.log(this.value) }

func();				//0が表示される
func.call(obj1);	//1が表示される
func.apply(obj2);	//2が表示される

4行目の関数funcのthisはグローバルオブジェクトを指すので、6行目のように呼び出すとグローバルのvalueである0が表示されますね。

一方、7行目・8行目のようにcallやapply関数を使って呼び出すと引数に指定したオブジェクトをthisとして指定することができるので、それぞれobj1・obj2のvalueである1と2を表示します。

call・applyでは関数に渡す引数を設定することもでき、その方法によりこれらを使い分けます。詳しくはドキュメント(MDN)を参照してください。

まとめ

考える女性

JavaScriptでのthisについて、呼び出し方による挙動の違いを説明しました。

最初は理解しにくいので、実際にコードを書いて試していくのがおすすめです。

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: JavaScript, this, 呼び出し

JavaScriptのfor文で配列要素の足し算をするとNaNが出るのはなぜ?原因と対処法を解説!

2020-05-28 By プログラミング入門ナビ編集部

はてなマーク

はじめに

はてなマーク

JavaScriptを学習していると、比較的初歩の段階でfor文を学びますね。

繰り返し処理をするための機能で、配列データを順番に取り出して表示したり、別の値を格納していくなどの便利な使い方が可能です。

しかし、使い方に慣れるまではつまずきやすい部分でもあります。

ここでは初心者がうっかりしてしまいがちなfor文での失敗例とその対処方法を紹介します。

for文の失敗例

例えば、主要5教科:国語・算数・英語・理科・社会の合計点を求めるプログラムを書くとしましょう。

配列scoresに各教科の点数が入っていて、これを順番に取り出して合計点totalに加算していくためのコード例は下記です。

total = 0;
var scores = [35, 90, 21, 89, 70];
for(i = 0; i <= scores.length; i++) {
  total += scores[i];
}
console.log(total);

こちらを実行すると、合計点が表示されるのを期待するところですが、実際は下記の結果となってしまいます。

> NaN

NaNとは「Not-A-Number」のことで、「非数」という特別な値です。これは数字が与えられる想定の処理に対し、数字ではない値が与えられた場合に返されます。

NaNになる原因は?

なぜNaNになってしまうのでしょうか?どこで問題が起きているかわからない場合は、各所で値を表示させておかしな値が入っている箇所がないか確認するのが定石で、これをプリントデバッグと呼びます。

下記の通り、for文内にログ出力処理を追加しましょう(4行目)。

total = 0;
var scores = [35, 90, 21, 89, 70];
for(i = 0; i <= scores.length; i++) {
  console.log(scores[i]);
  total += scores[i];
}
console.log(total);

こうすることでscoresの配列から取り出した値をコンソールに表示させて確認できます。実行結果は下記の通りです。

> 35
> 90
> 21
> 89
> 70
> undefined
> NaN

上から順番に、配列内の点数が表示されています(1〜5行目)。一番下のNaNは元から出ていたものですね(7行目)。

ここで、6行目にundefinedが表示されているのにお気付きでしょうか。

for文の中で1〜6行目の値がtotalに足し合わされていきますが、undefinedは数字ではないため、これが足し合わされた後にtotalにはNaNが入ってしまったわけです。

対処方法

なぜ5個しか要素が入っていないはずの配列から6回も値が取り出されているのでしょうか。もう一度for文の繰り返し条件を見てみましょう。

for(i = 0; i <= scores.length; i++)

scoresの要素数は5個なので、scores.lengthには5が入ります。つまり、iは0からスタートし「0、1、2、3、4、5」の合計6回繰り返されるわけです。

そして、配列の要素はsocres[0]が1番目、scores[1]が2番目というふうに対応しています。 n番目の要素を取り出すにはscores[n-1]のように、1つ減らした数字を使って取り出す必要があるのです。

そのため、要素が5個の場合はscores[4]が最後の要素となり、scores[5]は未定義なので取り出そうとするとundefinedが返ります。

実際に取り出してみた例が下記です。最後の列で、数字とundefinedを足そうとしてNaNが返っているのが分かりますね。

var scores = [35, 90, 21, 89, 70];
console.log(scores[0]);						//35
console.log(scores[5]);						//undefined
console.log(scores[0] + scores[5]);	  //NaN

これに対処するには、繰り返しをi=4で止めるように修正しましょう。for文繰り返し条件を「i がscores.length以下」としていたのを「iがscores.length未満」に変更します(下記3行目)。

total = 0;
var scores = [35, 90, 21, 89, 70];
for(i = 0; i < scores.length; i++) {
  console.log(scores[i]);
  total += scores[i];
}
console.log(total);

実行してみると、無事総合点が表示されました。

> 305

まとめ

ハイタッチする仲間たち

JavaScriptのfor文でNaNが出てしまう原因と対処方法についてご紹介しました。

実はJavaScriptに限らず、他の言語の繰り返し処理でも同様のミスをしてしまいがちです。

起っている現象としては全く同じで、繰り返し条件の間違いにより無いはずの配列要素にアクセスしてしまうことが原因なので、つまずいたら1度チェックする癖をつけましょう。

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: for文, JavaScript, NaN

プログラミング学習を成功させるポイントを3つお送りいたします

2020-05-28 By プログラミング入門ナビ編集部

オフィスにいる男性

プログラミング学習は、学習コストの投資に対するリターンの期待値が高いです。そのため、人生をより良く、より楽しくしたい方には、プログラミング学習をとてもおすすめしています。
しかしながら、間違った学習方法により、挫折してしまう人も多いです。

プログラミング学習を成功させるポイントは沢山あるのですが、

ここでは、ポイントを3つピックアップしてお伝えいたします。

 

ポイント① 将来なりたい姿に合わせて適切なスキルを選ぶ

今後どのように活躍したいかによって、学ぶべきスキルが異なります。あなたが思い描く将来像によって、力を入れて学習するスキルを変えてください。

一概には言えないので、あくまで例となりますが、

  • スタートアップ起業で働きたい:Ruby やJavaScript
  • 開発費が数百億円、数千億円の大大企業や公的機関などの規模の大きな法人に向けたビックスケールのプロジェクトの開発がしたい:JavaやC#
  • iPhoneアプリを創りたい:Swift
  • Androidアプリを作りたい:Kotolin

といった具合です。

一つの言語を習得すると、他の言語の習得もハードルが下がります。

汎用性があり、分野を問わず使う機会が多いため、現時点で何を学習したらいいか分からない方はまず、HTML、CSS、JavaScriptから始めてください。

 

ポイント② 自分の実力&即戦力であることを示すポートフォリオを作ることを意識する

新卒でIT企業に就職される方は「やる気があります、何でもやります」で採用してもらえる可能性も高いです。

しかし、中途採用の場合は基本的には即戦力採用です。実務未経験でITエンジニアとして就職するには、実力が分かるポートフォリオを作ることが重要です。

架空でも良いのでウェブサービスを作って採用担当者に実力を示すことや、ソースコードを現場の担当者に書類選考の資料として見せるなど、ポートフォリオ作りを意識して、そこから逆算して基礎学習を行ってください。

言い換えると、創りたいものがあるから、それを作るための学習をするということです。このように考えると、モチベーションが続きやすいです。

 

ポイント③ 気兼ねなく聞ける環境を確保する

プログラミング学習に限ったことではないのですが、新しいスキルを身につける時に、適切なアドバイザーを見つけることはとても大切です。

私も経験があるのですが、行き詰まったときに自力で解決するのはとても時間が掛かる場合があります。

しかし、経験者に聞いたら3分で解決するというのはよくあることです。

一番の理想は、就職して実務経験を通して先輩に教わることです。

なぜなら、お金を貰いながらスキルアップできるからです。

 

私も、先輩に沢山教わりましたし、教える側の仕事もたくさんしました。

就職したときに、先輩や上司に当たる方も採用した新人が成果を出してくれないとプロジェクトが回らないため、親身に教えてくれる人が多いです。

 

とはいえ、就職するためには勉強が必要なので、そのときにも聞けるアドバイザーを探してください。

まずは友人、知人、親族を探します。見つからない場合は、お金を払ってでもアドバイザーを確保したほうが、結果が出るまでが早いです。

SNSなどで、無料で相談に載ってくれる先輩エンジニアの方もいたりします。

しかし、基本的には本業の合間に対応しているので、遠慮して聞かないといけない、返信まで1、2週間かかるなど、ゴールに向かって遠回りをしている方もいらっしゃいましたので、注意してください。

まとめ

プログラミング学習を成功させるポイント3つ

  • ポイント① 将来なりたい姿に合わせて適切なスキルを選ぶ
  • ポイント② 自分の実力&即戦力であることを示すポートフォリオを作ることを意識する
  • ポイント③ 気兼ねなく聞ける環境を確保する

を紹介いたしました。

私は、プログラミングを学習して仕事にしてきたおかげで、今、本当に仕事が楽しくて仕方がない状況です。

ぜひ、皆さんもプログラミング学習を成功させて、転職などご自身の目指す目標を達成してください。

おすすめの教材については、動画の説明欄に記載していますので、参照してください。
あと、動画が役に立ちましたら、チャンネル登録もよろしくお願いします。

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: エンジニアへの道 Tagged With: エンジニア, プログラミング入門

初心者がスマホアプリを開発するには?iOSとAndroidの両方について必要なスキルを確認しよう

2020-05-26 By プログラミング入門ナビ編集部

スマホアプリ

はじめに

スマホアプリ

スマホが世の中に浸透して早10年余り。毎日の生活で、必ず1つは何かしらのアプリを使っているのではないでしょうか?

すっかり馴染み深くなったスマホアプリですが、自分で開発できたら自信にもつながりそうですよね。

実は簡単なものならば初心者でも作れるのです。

この記事では、スマホアプリの2つの主流であるAndroidアプリとiOSアプリについて開発に必要なスキルを紹介します。

アプリにもいろいろ

スマホアプリというとまず思い浮かぶのはSNS、カメラアプリといったところでしょうか?実はスマホアプリは開発手法によって大きく3つに分類されます。

どんなアプリを作りたいかによって適切な手法が異なるので、まずはその分類を確認してみましょう。

ゲームならばUnityがおすすめ

スマートフォンゲームでの対戦

ゲームが好きで、よくスマホのゲームアプリをプレイする方もいらっしゃるのではないでしょうか。もし、最初からゲームアプリを作ってみたい!という気持ちが強ければ、Unityで作ってみることをおすすめします。

Unityはスマートフォンや据え置き型ゲームなど、様々なプラットフォームの垣根を超えて開発及び実行ができるゲーム開発環境兼ゲームエンジンです。

この後紹介するAndroidアプリやiOSアプリの開発スキルを用いてもゲームアプリを開発することは可能ですが、それぞれAndroidとiPhoneでしか動かせないアプリになってしまいます。

Unityで開発しておけば、同じゲームでも様々なハードウェアへ簡単に移植することができ大変便利です。

Unityについてはこちらの記事でも解説していますので参考にしてください。

Unityエンジニアになるには?未経験でもなれる?スキルの身につけ方を解説!|プログラミング入門ナビ

ハイブリッドアプリ

オンラインショッピング

例えばFacebookやAmazonなど、比較的大規模なWebサービスのスマホアプリはハイブリッドアプリと呼ばれ、スマートフォン自体が持つ機能(GPSやカメラ等)と、Web技術(HTML5・CSS・JavaScript等)を組み合わせて開発されています。

簡単にいうと、AndroidやiOSのWebViewという機能上でWebアプリを実行し、スマホに最適化して表示するわけです。

Webアプリと、スマホが持つ機能と、それらの橋渡しを行うCordovaというフレームワーク など、様々な機能を使いこなさなければならないため、こちらは上級者向けといえます。

初心者からのスタートならば、次項のネイティブアプリ開発にチャレンジするのがおすすめです。

ネイティブアプリ

時計とスマホ

ここでのネイティブとは、スマートフォン本来の機能、という意味で使われています。

例えばToDo管理アプリを思い浮かべてみましょう。タスクを入力するのにスマートフォンのキーボードやタップの入力機能を使用し、期限が近づいたタスクを知らせるにはスマートフォンのアラーム機能を使えば良さそうですね。

このようにスマホ本来の機能で完結することが多いため、ネイティブアプリならば比較的簡単に開発することができますが、AndroidとiOS向けで必要なスキルは全く異なります。

将来的にはどちらも開発できるようになるのがベストですが、まずはどちらでもいいからスマホアプリを開発したいということであれば、自分が持っている端末に合わせると実機で確認できるのでおすすめです。

Android向けスマホアプリ開発に必要なスキル

androidスマホ

ここからまずはAndroidアプリ開発に必要なスキルを見ていきましょう。

言語(1):Java

次に挙げるKotlinの登場まではAndroidアプリの開発言語としてJavaが主流でした。JavaはJVM(Java Virtual Machine:Java仮想マシン)上で動くのが特徴で、その環境用のJVMさえあればどんな環境でも動かせることから、Androidに限らず多くの用途で活用されています。

言語(2):Kotlin

Javaが抱える課題(コードの複雑化・互換性問題等)に対処できる言語としてAndroidのデベロッパーであるGoogle社から2017年にサポート開始され、2019年には正式に推奨言語にすると発表されたのがKotlin(コトリン)です。

シンプルで使いやすい言語であることからエンジニアからの評判も高く、案件数も増加傾向にあるのでぜひこの機会に学んでみることをおすすめします。

開発環境:Android Studio

Android StudioはGoogle社が提供する公式のAndroid専用開発ツールです。

Android開発に特化しているため、作業効率化に役立つ機能がたくさんあります。開発現場では使わない手はありませんのでこれを機会に使い方に慣れておくと良いでしょう。

iOS向けスマホアプリ開発に必要なスキル

macとスマホ

次にiOSアプリ開発に必要とされるスキルを見てみましょう。

言語:Swift

従来、iOSアプリの開発言語はObjective-Cが主流でしたが、2014年にSwiftが発表されてからはこちらが主流となりました。

従来のObjective-Cとも共存できるとされているので、古いコードとの互換性もあります。

開発環境:XCode

XCodeはApple社が提供する開発ツールで、iOSアプリを開発するために便利な機能を多く持っています。開発現場ではiOS開発のスタンダードツールとなっているので、将来iOSアプリ開発の案件に携わりたい方は早いうちから使い方を覚えておくと良いでしょう。

Macbookでしか使えない点には注意が必要です。

まとめ

オフィスで働く女性

スマホアプリを開発するために必要なスキルについて説明しました。

簡単なネイティブアプリならば初心者の方でも開発しやすいですし、自分のスマホで動かせるものが作れると自信にもつながるのでおすすめです。

なお、ProglusでもAndroidアプリ開発コース・iOSアプリ開発コースの開講を検討しています。ぜひお楽しみに!

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: Android, iOS, アプリ, スマホ, 初心者, 開発

  • « Go to Previous Page
  • Go to page 1
  • Interim pages omitted …
  • Go to page 19
  • Go to page 20
  • Go to page 21
  • Go to page 22
  • Go to page 23
  • Interim pages omitted …
  • Go to page 48
  • Go to Next Page »

Primary Sidebar

Proglus(プログラス)

Twitter

Follow @programmingnavi Tweets by programmingnavi

最近の投稿

  • 【05/02更新】Udemyプログラミング入門講座等の割引クーポン配布
  • AWSのパブリックIPv4アドレス有料化について 2024/2より
  • 【CSS】Google Fontsの利用方法について解説します!新UIに対応2023年11月更新
  • 【SQL】XAMPPのMySQLがXAMPPがポートの競合で起動できない問題について解決方法を解説します!
  • 【Colab】–NOMAL– と表示されて、ショートカットキー(ctrl+c)でコピーができない場合の解決方法を解説します!

カテゴリー

  • AIの使い方
  • Arduino入門
  • AWS
  • その他
  • エンジニアのしごと
  • エンジニアへの道
  • ツールの使い方
  • ニュース
  • プログラミング入門
  • 電子工作入門

タグクラウド

AI AWS AWS Cloud9 Cloud9 CodeWing CSS Emmet GCP Git GitHub Heroku HTML JavaScript li Linux macOS MySQL MySQL Workbench node.js Nuxt.js ol Proglus Python Ruby Ruby on Rails SQL Udemy Visual Studio Code Vue.js Web開発 Windows インストール エラー エンジニア オンライン学習 サーバー スクリーンショット セール プログラミング プログラミング入門 プログラミング学習 ユーデミー 初心者 未経験 機械学習

アーカイブ

  • 2025年5月
  • 2024年1月
  • 2023年11月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年5月
  • 2023年4月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年6月
  • 2021年4月
  • 2021年3月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月

検索

Copyright © 2025 · programmingnavi.com ・About・プライバシーポリシー