Posted by 河野 , on
1月 25, 2010 at 11:06 AM
Category:
プログラミング言語の雑学
コメントは受け付けていません。
沢山あるプログラミング言語ですが、どうしてこのように多くのプログラミング言語が作られたのでしょうか。
プログラミング言語がたくさんありすぎて、少し勉強してみたいなと思ってもどれから勉強したらよいのかわからなく、そんなに多くの言語がなくても1つのプログラミング言語で十分じゃないのか?なんて思うのではないでしょうか。
どうしてこのように多くの言語が出てきたかというと、言語によっては特定な処理に必要な言語であったり、この言語でも作ることは可能だが違う言語のほうが最適だという場合もあります。
こうして言語が色々使われるのには、プログラムを組んでいて不満を感じたりこうしたらもっと使いやすくなるのではないかと思い新しいプログラミング言語を作るからです。
例えば、何かを研究している人がその研究のために専用のプログラミング言語を作ったり、大学などで教育や課題でプログラミング言語を作成したり、小さなマクロ的なものだったけど機能を拡張していくうちにプログラミング言語と呼べるほどのものになったなどです。
このように特定の一つのものですべての要求に応じれればいいのですが、全部を解消することができません。ですので違う最適な方法としてプログラミング言語が多く生まれていっているのです。
ただこれだけでなく、今では企業が何かの人気言語ににた言語も作ることがありますよね。
こういったものは自分の企業で作ったプログラミング言語を使ってもらいたく似たようなもの作る場合もあるんだとか。便利さの追求のためにつくるだけでなく、企業利益などの為に作られたなんてものもあるのでこれからもプログラミング言語はますます増えるのではないでしょうか。
Posted by 河野 , on
12月 21, 2009 at 4:04 PM
Category:
プログラミング基本
コメントは受け付けていません。
プログラミング言語を入門するのに、エクセルからでも学ぶことが出来ます。
エクセルにはVBAといったマイクロソフト社がアプリケーション開発学習ソフトVBを基本にオフィスシリーズにくみこんだプログラミング言語になっています。
Vbのようにウィンドウズアプリケーションで開発できるものではなく、エクセルの表意計算機能をべースにしているのでエクセルソフトなしでは動作するのもではないプログラミング言語ですが、普段使っている機能をもう少し便利に使いたいなと思うときにつかえる機能になっています。
このプログラミング言語を使ってみたいというときにはvisualeditorという画面を開いてプログラミング言語でプログラムを書いていくのですが、基本はvbをベースにしていますが、一般の開発プログラミング言語とこなり、実行速度や小回りといった点での制限があります。
ですがプログラミング言語がどんなものかということを学ぶ時に、とっつきやすい言語として、普段のエクセルなどの機能をもう少し便利にしたい場合などに使えるものですから、もしプログラミング言語に興味のある人であれば、エクセルは結構身近で使えるソフトだと思いますので、一度いじってみてはいかがでしょうか。
このエクセルVBAでできる機能は結構限られてきますが、プログラミング言語を学んでいけばエクセルとは思えないような動作をするような機能をつけることができます。
もちろん重くなってしまいますが、プログラミング言語を楽しむには良い機能だと思います。
Posted by 河野 , on
12月 15, 2009 at 10:56 AM
Category:
プログラミング基本
コメントは受け付けていません。
プログラミング言語を使ってプログラムをつくるには段取りが重要になります。
思いったったままプログラムを作ってはあとから、追加作業をすることになったり、最初の段階からやり直しになってしまうことすらあります。
プログラミング言語をつかって開発をするためには段取りをいかに整理できるかにあります。プログラミング用語を覚えるだけでなく、こうした頭の中で整理することもプログラミング言語を学ぶ上で重要になります。
プログラムを開発するのに整理する為によく使われるのがフローチャート。
フローチャートはそのまま流れ図とも呼びます。記号や矢印で結ぶことでプログラムにおける処理の流れの具合(段取り)の進み具合を表します。
フローチャートはJISで決まった書き方が決まっているので、他人との開発を共有する場合にはそのルールに従うことになります。自分だけでプログラミング用語を使って開発する場合には、こだわらなくてもいいですがこれから開発する手順をまとめるためにも一度整理してみましょう。
フローチャートのメリットとしては、図で示しているので文章または文章だけよりも手順がわかりやすい。システムやプロセスを直す場合、見直す場合に効率よくできる。大きなプログラムを作る際、複数人で分担するときに手わけをしやすいといったことがあります。
基本設定時に必要な項目をまず最初にあげ、どういう手順で、どうフローを組めば良いかプログラム言語を使って書く前に考えてみましょう。
Posted by 河野 , on
11月 25, 2009 at 3:26 PM
Category:
プログラミング基本
コメントは受け付けていません。
SEやPGになりたいと考えていてどの言語から学べばよいか?どの言語が使えたら良い?なんて質問があります。
そういった業務でのプログラム言語を学ぶのであれば下記の5つがお勧めではないかと思います。
独断での5つですので、これらを学ばなければなれないといったわけでもなく、これら以外でのプログラム言語でもなれるのですが基本としてのプログラム言語になります。
1、c言語
2、JAVA
3、PHP
4、RUBY
5、HTML
C言語は実際に業務用のアプリケーションで使用することが現在ではあまりないのですが、コンピューター・ネットワーク・プログラミングの基礎を抑えるのに習得しておきたい言語になっています。
他のプログラム言語に比べると、低レベルでのインターフェースになっているのでバイナリデータや生ソケットを自由に扱える部分で技術への理解を深めるものになると思います。
javaは言語としての特徴というより、現在のシェアが一番の理由になっています。
PHPはweb用のアプリケーション作成としてのプログラム言語ですから、ベクトルが明確なだけに他のプログラム言語と比較し標準装備されている関数などがweb用のアプリケーション開発に関して充実しています。
4番目のRUBYですが、コンパイルを必要としない手軽なコマンドを作成できるスクリプト言語ということで学んでおきたいプログラム言語。rubyのほかにpearl、pythongがあるのですがこれは自分の好みでよいかもしれません。
HTMLなんですが、説明の必要はないと思います。ぜひ学んでおきましょう。
Posted by 河野 , on
11月 13, 2009 at 11:35 AM
Category:
種類
コメントは受け付けていません。
ちょっと変わったプログラミング言語を紹介します。
プログラミング言語といえば英語での表記が多いと思いますが、日本語でプログラミングを出来る言語というものもあります。
プログラムを日本語で記述するので、日本人にとっては親しみやすいプログラムが作れるかもしれませんね。
■日本語プログラミング言語「ひまわり」
・特徴
日本人にとって日本語や一番親しみやすいというのはプログラムでも同じかもしれません。母国語でコンピューターに命令できるようになるのはちょっとうれしいですね。
プログラミングを始める際、英語だから処理関数も覚えにくいので諦めてしまった人などにお勧めかもしれません。
ファイルのコピー、データ集計、ホームページの更新などが行える500を超える便利な命令が組み込まれています、ほかのプログラミング言語ですと何十行も書かないといけないプログラムをこの日本語プログラミングの「ひまわり」では2,3行でできてしまいます。
ウィンドウズらしいソフトも作ることができ、エディタやボタン、リストやタブなど普段ウィンドウズのソフトを使っていれば目にする標準的なコントロールも使用が可能。作ったプログラミングを実行ファイルにすることもできるので、ひまわりのインストールされていないパソコンでも作ったソフトを動かすことが可能です。
プログラミングをするときはほとんど英語の言語が多いなか、このようなプログラミング言語はおもしろいですね。プログラミングを始めたいけど、英語ばかりでみるだけでイヤ。なんて人は日本語のから始めてみてはいかがでしょうか。少しはとっつきやすいかもしれませんよ。
Posted by 河野 , on
10月 19, 2009 at 10:50 AM
Category:
プログラミング基本
コメントは受け付けていません。
プログラミング言語にも色々特徴があり、向き不向きというのがあります。
ゲームを作りたいといった目的や、ちょっとした作業を効率よくしたいといった目的、ウェブ上での機能をといったようにプログラミング言語も変わります。
・C、C++
ファームウェアやドライバ開発など幅広く使われている汎用言語になり、コンシューマーゲーム機などの開発などに使われます。
・Visual C++
マイクロソフトが提供するコンパイラ及び環境開発を含んだ製品のことで、windows用市販ソフトの90パーセントはこのプログラミング言語で開発されています。
・JAVA
C言語などの欠点を踏まえてつくられていて、強力なセキュリティ機能や、ネットワーク関連の機能が豊富です。基本的にプラットホームはどれでも動作するといった汎用性の高さが特徴です。
・php
スクリプト言語で、web関連のプログラム言語です。web関連に特化しているためウェブアプリケーションの開発効率が非常に高いといといった特徴を持っています。
・perl
歴史ながく、豊富なライブラリがあるので開発が簡単なのが特徴。ですが言語仕様の変更が何度もあっため複雑だといわれる部分もあります。
・phython
perlやphpともにlampの一角を担ってきた言語で、ウェブ関連でよく使われています。コードグロックタブを採用しており、可読性に優れているのですが、ライブラリの量や質はperlに劣るとも言われています。
Posted by 河野 , on
9月 16, 2009 at 10:41 AM
Category:
コンパイル
コメントは受け付けていません。
プログラムを書いて、実際にコンピュータに実行させるにはコンパイルが必要となります。コンパイラとはコンピュータが直接実行可能な機械語に変換させるソフトウェアになります。そしてコンパイルするというのが実際に変換過程のことをそう呼びます。
コンパイル前のプログラムをソースコードと呼び、コンパイルされたあとのプログラムをオブジェクトコードと呼びます。そしてこのコンパイラなんですが、コンパイルして実行可能なプログラムに変更するプログラムをコンパイラ言語と呼びます。
コンパイルされた機会語のプログラム実行はインタプリタを介した実行より高速になりますが、開発時の動作テストのたびにコンパイルするのは比較的実行に時間がかかるというデメリットもあります。
そして機械語に変換されたプログラムの実行は行うことはできません。オブジェクトコードは数値の羅列として表現されるのでそのままで人が理解することは困難になります。実際に機械語を直接プログラミングしてもいいのですが、やっぱり困難ですね。
一方コンパイルを必要としないインタプリタ型というものあります。インタプリタはソースコードを逐一解釈しながら実行するソフトウェアのことで、インタプリタでプログラミングされたものをインタプリタ言語と呼びます。
インタプリタの長所として、プログラムを作成や変更してから実行するまでの手間がかかりません。逆に、実行するには対応する環境が必要となります。
ところで、仕事でサーバの管理を任されるようになったのですが、一からサーバ設置をしなければいけなくなりサーバー販売をしている会社などを探しています。このような仕事につけてうれしいのですが、反面責任を感じますね。ちょっとプレッシャーがありますが今日のところは先日ダビングしたドラマでも見ながらリラックスして頑張りたいとおもます。
Posted by 河野 , on
8月 18, 2009 at 4:01 PM
Category:
種類
コメントは受け付けていません。
プログラミング言語として基礎として学ぶことが多いのがC語です。C言語とは、手続き型言語であり、コンパイラ言語として設計されました。現在C言語を使っていないプログラマーでもC言語のことを知っている人がほとんどいるくらいC言語というのは普及しています。オブジェクト指向とGUI環境の普及により、C++やJavaなどのプログラミング言語のシェアが広がっていますが、まだまだ利用されています。
プログラミング言語を学ぶときに最初に学ぶ有名なhellowaorldをC言語で書くと
——————————————-
#include
int main(void)
{
printf(”Hello, World!\n”);
return 0;
}
——————————————-
といった感じです。
実際にこれをメモ帳に書いてコマンドプロントにhelloworldを表示させることも可能ですがコンパイルまでの説明をすると長くなりそうなので、プログラミング言語とはこういうものだと何となくわかってくれれば今はいいです。
プログラミング言語を学ぶ際にC言語から始めてもよいのですが、もう少しとっつきやすい言語もありますのでそちらをお勧めしますが基本的にC言語を変わっていれば他の言語にも応用がききます。プログラミング言語を学びたい人ならば色々調べてみてはいかがでしょうか。そしてプログラミング言語にもその言語にあった目的があります。ゲームを作りたいなら~の言語。サイトを作りたいなら~の言語といった適正があったりします。全部覚えればいいなんて思うかもしれませんが、かなり大変です。実際のプログラマーさんでも自分の使っている言語だけしかしらないって人もいます。
専用サーバを設置する為にサーバサイドでははperlやphp、rubyなどのプログラミング知識が必要となりますし、ケースバイケースです。なにか目的があってプログラミングを学びたいのであれば、その目的に合った言語を、とりあえずプログラミングをしてみたいなぁなんて思う人にはC#やVBなどをお勧めします。本当はC言語から始めるのがよいかな?なんておもいますが、とっつきやすいこのプログラミングから始めてCのことも学ぶのがよろしいかと個人的に思います。
余談ですが仕事の関係で1Uサーバーを自宅に設置していた友人がいました。うるさくてしかたなかったそうですが、今はまだ静音なものが出ているのですがまぁこの友人もよくやったものです。
Posted by 河野 , on
7月 5, 2009 at 3:23 PM
Category:
種類
コメントは受け付けていません。
セキュリティの話が出ましたので少しだけセキュリティのお話を。
今、パソコンにはセキュリティソフトが入っていて当たり前になってきています。自分のパソコンにセキュリティソフトが入っていない人は入れた方が良いと思いますよ。そんなセキュリティソフトを買うのはどうしたらよいか迷うと思いますが、セキュリティソフトを比較してもそう変わることはありません。セキュリティソフトを比較して変わるものといえば値段でしょうか。そう大して変わるものではありませんが、一般に使う程度のパソコンなら、基本のセキュリティソフトを入れておけばおおよそは防げます。おおよそだけ?って思うでしょうけど、セキュリティソフトも万全ではなく過信しすぎは危険ですよ。
余談は置いておいて、プログラミング言語のお話に入ります。
現在使われているプログラミング言語には高級言語と低級言語と分けられています。低級だからあんまり良くないとか高級だからすごいプログラミング言語というものではなく、プログラミグ言語が機械語に近いかそうでないかの違いです。
低級言語で有名なもので、アセンブリ言語というのがあります。機械語というのは機械が処理を実行するときに見ていくもので数字の羅列になります。ですが人間が数字の羅列でプログラムを書けといわれてもとても大変です。そこで機械語を人にもわかりやすく記述できるようにしたのがプログラミング言語なんです。低級言語というのは初期の機械語に近いものを言い、高級言語というのはより人の言語に近づけた言語ということになります。
ちなみにインタプリタ型のプログラミング言語には中間言語と呼ばれるものも使われますが、ややこしくなるのでここでは置いておきましょう。
高級言語は先も述べたように、人が使う言語に近づけたわかりやすいプログラミング言語になっています。アセンブリのような低級言語にくらべ、CPUに依存した処理を書かなくてよかったり、メモリ制御などのCPUレベルの操作をしなくていい利点があります。
この高級言語には有名なものだけ上げるとすると、C言語、BASIC、Visualbasic、JAVA・・・・数えきれないほどあります。
Posted by 河野 , on
6月 12, 2009 at 3:01 PM
Category:
プログラミング基本
コメントは受け付けていません。
今使われているプログラミング言語ですが細分化すると1000以上になるといいましたが、その1000でも基本になる言語というのがあります。プログラミング言語は元の言語から使いやすいように進化していくことがあるのです。そうしてプログラミング言語というのは増えていきました。
どうしてそのようにプログラミング言語が増えたかというと、プログラミング言語にも得意不得意がありこの制御をするにはこのプログラミング言語を使い、ここにはこのプログラミング言語をといった風に使い分けて使われます。
例えば一つのソフトを見てみても、すべて同じプログラミング言語で書かれているソフトもありますが、処理の違いによって違ったプログラミング言語が使用されているときがあります。
実際によくわかる例としては、yahooのサイトで表示からページのソースをみてみてください。なんだか英語の羅列がでてきませんでしたか?サイトの基本的なプログラミング言語というのはHTMLという言語で書かれています。ですが基本的にHTMLは文章を表示するためのプログラミング言語です。yahooのようにただ文章の表示だけでなく、ここのボタンを押したらこんなアクションを取るなんて機能もついていますよね。その場合HTMLでは不向きな場合がありますので違ったプログラミング言語で書かれることがあるのです。yahooのサイトソースを見てみると、途中にjavascriptなんて文字を見ることが出来ると思いますが、それもまたHTMLとは違ったプログラミング言語です。
たまに人を困らせるだけの目的でコンピュータウィルスを作る人がいます。これらはプログラミングの知識がないと制作できないのですが、パソコンを使い人すべてがプログラミング言語を使えるわけではありませんので、その為のセキュリティ対策にセキュリティソフトなどを作る人もいます。プログラミング言語が分からないからといって、心配することもそうありません。ちゃんとセキュリティ対策ソフトといのもありますので。