投稿

7月 3, 2018の投稿を表示しています

Translate

Swift < Objective-C になった。 C# < VB.NET になった in TIOBE INDEX on July.

イメージ
実際少し予想していた。 C#。 C#は優れた言語だ。 汎用的で、クロスプラットフォームにも使用されている。 汎用的。 ここが落とし穴だ。 マイクロソフトの言語は、基本的には汎用的ではなく、Windows上で動くことが前提の物がほぼ多くを占める。 Pythonは、汎用的な言語だ。 あらゆるOSで開発、コンパイル出来、あらゆるプラットフォームで動作させる為のフレームワークも多く出てきている。 特に、Python3(パイソンスリー)になってからは、伸びしろが凄いことになった。 Pythonが真の汎用的言語になったが為に、C#は後退していっている。 VB.NETに負ける勢いで後退していっている^^; VB.NETはある意味競合が少ないのだろう。。。 Windowsアプリを開発する言語として手軽だし。 Python(パイソン)は7月で、C++を抜く勢いで迫っている。 https://www.tiobe.com/tiobe-index/ そして、SwiftがObjective-Cに負けている。。。 何となく予想はしていたけれど。 Objective-Cもかなり変わった言語だ。 それに加えて、Appleでしか基本的に使えないSwiftみたいな言語をもう一つ覚えるなんてありえない話。 基本的にC系の言語だと、Swiftで出来ないことも出来てしまう。 そんな制約がある言語を、新たに覚えたいなんて人はいないし、アップルが宣伝したりしているときくらいしかポピュラーになれない。 ITで世界が成長したおかげで、エンジニアが凄く増えた。 結果、今まで高額だった言語も今では時給2000円前後なんてことも多い。 単に、日本の経済が停滞しているだけなのかも知れないけれど。

3年間目のGoogle Driveの無償期間が終わる・・・

イメージ
Googleが3年間無料で使用させてくれてた1TBがもうすぐ終わる・・・ だいぶファイルを消して、100ギガバイト前後にしたが・・・ 結構便利すぎて、デカイ容量使ってたなぁ・・・ ・・・うーん、期限切れ後は17GBが無料使用できるキャパシティになるみたい。 もしも、期限が切れて、17GB以上使っていた場合は、データが削除される訳ではなく、新たに新しいデータがアップ出来ない。 アップするためには、自分が使える容量までファイルを消してから使用する事になるようで、期限切れで、オーバー分は削除しますみたいな感じではないとても良心設計だ。 自分で作ったプログラムライブラリは、あちこちで使えて便利だから、必要最低限必要なものだけをGoogle Driveに置いておくようにしよう。 クラウドストレージはとても便利なのだけれども、セキュリティが相当堅壁出ないと、怖くて使えん・・・ Evernoteは完全にアウトな気もするが・・・

Python 入門 SQL直書きもあった

Previously : https://masafisan.blogspot.com/2018/07/python-sql.html 前回は、Python MVCはSQLで書かないとあった。 今回は、書く方法もあるという事。 こんな感じ。 sql = 'select * from hello_friend' data = Friend.objects.raw(sql) クエリセットのrawメソッドにSQLを渡せば実行出来るみたい。 が、読んでる本では、薦めていなかった。 MVCのMは非常に迷う。 はっきり言って、用意されたクエリセットのメソッドだけで、複雑なSQLが組める気はしない。 Microsoft系言語では、Mのモデルは自由な感じだった。 Pythonも自由ではあると思うのだけれども、自分の読んでいるPython入門書では薦めていなかった。 データベースが変わった際に、SQLだと、お作法が変わるから書かない方が良いとあるのだけれども。。。 データベースが変わると結局クエリセットも検証する必要に迫られるし、同じだと思うだけれども。 まぁ、何はともあれ、SQL直書き実行も出来るという事。

Python 入門 SQLは書かないのか?

イメージ
最近のWEBプログラミング言語書籍はSQLを書いていない物が多い。 きちんとしたMVC?を自分が携わっていないだけなのだろうか? が、Rubyの本もそうだったが、データベースからデータを取得する際にSQLで取っていなかった。 そう、VBやC#でいう所のLINQ的な取り方。 SQLをガリガリコードの中で書いている時代からプログラミングをしている自分にとっては激しく違和感がある。 むしろSQLをガリガリ書く方が違和感があるのだそうが・・・ とにかく、SQLで書かないSQL自動発行的な取り方は、SQLが最適化されていない事も多く、最初は気にならないが、やはり、データが増えるにつれて、遅くなるし不安定になる。 自分の時代では、インデックス設定して、それに見合ったSQLになるように調整して・・・だが・・・・ 今は、どういうSQLが発行されるのか、わざわざデバッグでトレースしないとわからないし、分かった所で、ライブラリの仕様的に調整が困難だったり、不可能だったり・・・ ・・・うーーん。 そして、Python。 これも同じだった。 自分はDjango(ジャンゴ)というフレームワークを選んで研究中なのだけれども・・・Rubyの時と同じく、クエリを発行するオブジェクトを使用してデータを取る。 data = Friend.objects.filter(name__in=list) これは、SQLでいう所の、 SELECT * FROM Friend  WHERE [name] in ('AAA','BBB',....)   のような事を意味している。 listには、リスト型で条件を入れている前提なのだが。 あぁ、何か今更思い出したけれど、以前二人の子にC#を薦めてたけれど・・・ Pythonの方が良いかもと今更は言えない・・・・ C#の方が個人的には良いとは思っているが、初心者の頃は作るので必死で気にならないけれど、作るのに慣れてくると、今度はライセンスが気になってくると思う。 そういうとき、Pythonは、ライセンスフリーだから、あまり悩まなくていい。 Pythonのコードエディターは、今はVisual Studio Codeを使うのだろうか? 自分は敢え