SwiftとJavaScript

Swiftありがたし」

APPLEの新しい言語「Swift」は、Objective-Cに比べて、ずいぶん書きやすい・理解しやすい印象があります。

私のプログラミング経験は、
Webサイト構築で、JavaScriptを使い、
はるか昔の30年ほど前にNECのPC-6001mk2というパソコンでBASICを打ち込んで遊んでいた、というぐらいなので、
C言語JAVAなどの各言語習得にハードルを覚えてきました。

Objective-Cもずいぶん書籍を購入し、使えるようになろうとトライしましたが、独特の記法に困難を覚え、やはり頓挫。

その後、Swiftが登場し、とうとう、自分にもiPhoneのネイティブアプリが書けそうだ、と希望を覚えたものです。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Objective-CからSwiftへ」

Swiftは、かなり言語のテイストとしてJavaScriptのような気軽さ(書きやすさ)を感じます。

Objective-Cは、smalltalkといった、ちょっと癖のある言語とCのミックスのようで、どうしても馴染めませんでした。

Swiftの開発に感謝。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

SwiftからObjective-Cへ」

Swiftを覚えていくと、だんだん、Objective-Cの記法についても理解の基盤ができると感じます。

長いメソッド名やプロパティ名などはほとんど同じですから、Swiftをある程度書くようになってから、Objective-Cのコードを見ると、以前より理解できるようになってきた自分を発見しました。

Objective-Cを覚えるには、Swiftから入り、Objective-Cにいくのも、Swift後の今としては良い道かもしれません。

Objective-Cは、ライブラリなどでまだソースを理解したりする必要が得てしてありますので。。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

JavaScriptからSwiftへ」

JavaScriptは、かなり適当なことを書いても、ある程度許容されてしまうようなお手軽なところがあります。

初心者には、とっつきやすいところです。

しかし、やはりiPhoneなどのネイティブアプリを書こうとなると、最近はコード変換などもcordovaなど充実してきていますが、ネイティブ言語を覚えたくなるものです。

私のようなwebコーダーが入っていく言語としては、Swiftはなかなかいい感じのものでした。

しかし、やはりJavaScriptで、例えば、castもせずに違う型同士の数値で計算できたりする気軽さ(むちゃさ)に慣れていると、エラーが出て「?」となります。

 

私は、かつてBASICを楽しんでいた者として、「導入のハードルが低く、楽しく使える言語はないか」といろいろ探していますが、JavaScriptは、ブラウザとテキストエディタさえあればいい、という代物なので、かなり良い気はしています。

が、BASICのようにすぐ動いてくれません。

そこで、JavaScriptのライブラリにお世話になりますが、最近は、p5.jsというものが非常にお手軽で、導入に最適かもしれない、と思っています。

 

そして、JavaScriptから一歩先に進みたくなった時に、Swiftという選択肢はひとつありかな、という気はします。Mac環境以外では厳しいのですが。。(Linuxにも移植はされたようですね。)

その際に、JavaScriptの気軽でいいかげんなところ(それが利点にもなっている面も多分にある)のある仕様では学べなかった部分・私が躓いたところを、まとめる必要性を感じています。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

「このブログの狙い(Web+Swift)」

そんなわけで、このブログでは、

JavaScript,HTML(5),CSSに関すること

SwiftiPhoneアプリに関すること

などを中心に、メモをしていこうかと思っています。

 

無理なく楽しくないと続かないので、ぼちぼちと。。

 

技術メモ記事を書いって行ってみます。

JavaScript,swiftあたりのメモを書いて行ってみようと思います。

できるだけ、自分が解決できたものをまとめるように心がけてみます。

解決できずに悩んだことも書きつつ、解決したらそのポイントも書き残します。

自らのメモであると同時に、同様のことで躓いている方にちょっと参考になれば幸いです。

 

はてぶはこれまで使ったことがありませんでしたが、

syntax highlightが簡単なのがいいですね。

まだ慣れませんがよろしくお願いします。