プログラミングコンテスト

Posted by 河野 , on 8月 19, 2010 at 11:29 AM
Category: プログラミング基本

色々な分野でのオリンピックがありますよね。数学オリンピックといったようなスポーツだけでなく学問の分野でも競う場があります。
実はプログラミング言語の世界にもオリンピックのようなプログラミング言語の腕を競う大会が開かれているのをしっていますか?
それがプログラミングコンテストといって、どれだけプログラミング言語の能力があるかを競う大会になっています。
このプログラミングコンテストに参加ことによって、自分の能力を見つめなおすこともできますし、世界中のプログラマーと競争することでモチベーションも高めることが出来ます。そして複雑なプログラミング言語の問題を解く楽しみというのもあります。
このコンテストは個人で参加するものからグループで参加するものがあり、プログラミングが完成してから登録するものと、登録してから参加するものがあります。
世界的なコンテストになると、制限時間ないに問題を解く速さを競うものであったり、アルゴリズムの問題を解くものであったり、ウェブサイトやアプリケーションを構築するコンテストと色々あります。
U-20の20歳以下のコンテストも日本では開催されており、高校生や専門学生の参加の多い大会などもあります。
こういったプログラミング言語のコンテストに参加することで、自分の実力や世界の実力を知る良い機会でもあります。
プログラミング言語を色々覚えたけど、自分はどれだけのことを知っているのだろうと他の人と比べてみるのはいかがでしょうか。
そうすることで、自分の足りないプログラミング言語の知識なども分かってくるかもしれませんよ。

プログラミング言語の覚え方 2

Posted by 河野 , on 7月 23, 2010 at 11:42 AM
Category: プログラミング基本

プログラミング言語を学ぶ時に初心者ですと、あまりすごい人の意見を聞いてもあまり理解できません。
普段からプログラミング言語を使っていると、当り前になっていることでも初心者には当たり前ではありません。
「ではとりあえずこうして」と教えられても、何のためにそうするのか理解できないのであればあまり意味がないですよね。
そうした意味もあり、初心者ですととりあえず自分でプログラミング言語をいじってみるのが大切だと言われています。
そこでつまずいて、どうしたらよいのかわからなくなった時にわかる人のアドバイスを聞くのがよいのではないでしょうか。
そのためにも、プログラミング言語を覚えるときには周りに知っている人のいる言語から始めることをお勧めします。
あと、ちょっと注意したいのがプログラミング言語を覚えていっても、これはいったい何に使うのかと疑問になることではないでしょうか。
例えるなら学校の勉強で微分積分がどういった場面で役に立っているかわからないまま、微分積分を学んでいるのと似たような感じではないでしょうか。
ただプログラミング言語を学ぶときには、目的もなく覚えるよりはまず目標を立て、それを作るためにはどうしたら良いかと学んでいく方が上達します。
プログラミング言語を覚えるときには、ただ漠然と覚えるのではなく、何かを作ってみるのが一番だと思います。

プログラミング言語の覚え方

Posted by 河野 , on 6月 23, 2010 at 11:24 AM
Category: プログラミング基本

プログラミング言語を覚えるには、まず何度も自分で書いていくことが基本です。
色々なことをまず最初に覚えなければと思うかもしれませんが、実際に自分でプログラミング言語を書いてみて、動かしてみて、動かなかったらどこがおかしいのか?ここを修正すればよいのか?というように試行錯誤して覚えていくのが一番の勉強法です。
最初どうしてこのように動くのかなんて分からない場合もあると思います。
こうして書けばこう動くと教えてもらっていても、はじめはその仕組みがわかりませんよね。
ですが、書いているうちにそれがどういったことなのかが分かってくるのです。
はじめは意味不明な言葉でも理解できるようになると、こうして使うためにあるのかと分かってくるとプログラミングが楽しくなってきます。
本当の意味でプログラミング言語を理解するには、かなり時間がかかると思いますがプログラミングして自分の作りたいものを作るということなら、そこまでの時間はかかりません。
コンピューターの仕組みからプログラミング言語がどうしてそう動くのかという点まで学ぶとなるとまで勉強するのであれば時間がかかりますがね。
一つのプログラミング言語を理解できるようになれば、ほかのプログラミング言語も理解するスピードが早くなります。
ですので、まずは簡単なプログラミング言語か、基本となっているプログラミング言語から学ぶことをお勧めします。
楽しんで作ることが大切です。
こう動かしてみたいから、こうしたらどうなるのだろう?といった感じでやっていくのが良いと思います。

CGIについて

Posted by 河野 , on 3月 18, 2010 at 10:55 AM
Category: プログラミング基本

ホームページを制作したいと思うならまずHTMLを学び始めることと思います。
そしてCSSをといったように段階を踏んでいくと思いますが、ホームページの基本がわかってくると新たな機能をつけたくなることと思います。その機能の一つがCGIではないでしょうか。
HTMLなどでホームページ作成をしていると必ず聞くようになるこのCGIという言葉ですが、いったいどんなものか知っていますか?
これは簡単に説明するとプログラミングをしてサーバー側で処理を行う機能のことで、ホームページで良く利用されているのはアクセスカウンタや掲示板、集計ログなどの機能がこのCGIになっています。
common gateway interfaceの略でこれを使うことによって、一方的な情報を提供するホームページから見る相手との情報を交換できるサイトになるという感じでしょうか。
ですがHTMLのプログラミング言語がわかる様になったからとCGIも簡単にできるようになるだろうと思っていてもすこし注意点も必要になります。このCGIはサーバー上で動くプログラミングなので、もしバグがあったりするとサーバーがエラーを起こすことになります。
曖昧なまま作ったもので動かすと、自分の加入しているプロバイダの数万の会員に迷惑をかける事態を引き起こすことにもなりかねませんので注意しましょう。
このCGIのプログラミングはperlで書かれることがほとんどです。
もしホームページの機能拡張したいのであればperlのことから勉強を始めてはいかがでしょうか。

プログラミングの構造

Posted by 河野 , on 2月 18, 2010 at 10:52 AM
Category: プログラミング基本

プログラミングをするときには、何か問題があってその問題に対して問題を解決するためにプログラミングをするということではないでしょうか。プログラミングというのは入力、処理、出力といった順番が基本となっています。まずプログラミングをする際には問題のなかから、与えられていてるもの、求められるもの、求め方などを探すことから始めます。
入力データを格納する変数や出力データを格納する変数といったように、その時にどういった変数が必要のか考えなくてはなっりません。アルゴリズムを作るために、必要な変数を作りだし、そこで入力と出力データの変数を使えば必要でないものはわかるのではないでしょうか。こうやって段階を踏んでいくことで、変数を見つけることができ、目的もはっきりしてきます。
プログラミングとは、コンピューターに対してのどういった処理を行うのか手順を示してあげるということです。ということはプログラミングに必要なことはコンピューターにわかる方法で手順を教える必要があるのです。
人の仕事でも同じように、どんな複雑な仕事をしていたとしても、順次構造、選択構造、反復構造といったように基本的な構造があります。そういった構造を組み合わせることでプログラミングもかくことが出来ます。
先日サーバーハウジングを利用するために、どういったデータセンターを選んで、コロケーションはあるのかといった風に段階的に探すことでよいサーバーハウジングを探しだすことができました。プログラミングも同じことですね。

プログラミング言語を始めるのに

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 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 6月 12, 2009 at 3:01 PM
Category: プログラミング基本

今使われているプログラミング言語ですが細分化すると1000以上になるといいましたが、その1000でも基本になる言語というのがあります。プログラミング言語は元の言語から使いやすいように進化していくことがあるのです。そうしてプログラミング言語というのは増えていきました。
どうしてそのようにプログラミング言語が増えたかというと、プログラミング言語にも得意不得意がありこの制御をするにはこのプログラミング言語を使い、ここにはこのプログラミング言語をといった風に使い分けて使われます。
例えば一つのソフトを見てみても、すべて同じプログラミング言語で書かれているソフトもありますが、処理の違いによって違ったプログラミング言語が使用されているときがあります。
実際によくわかる例としては、yahooのサイトで表示からページのソースをみてみてください。なんだか英語の羅列がでてきませんでしたか?サイトの基本的なプログラミング言語というのはHTMLという言語で書かれています。ですが基本的にHTMLは文章を表示するためのプログラミング言語です。yahooのようにただ文章の表示だけでなく、ここのボタンを押したらこんなアクションを取るなんて機能もついていますよね。その場合HTMLでは不向きな場合がありますので違ったプログラミング言語で書かれることがあるのです。yahooのサイトソースを見てみると、途中にjavascriptなんて文字を見ることが出来ると思いますが、それもまたHTMLとは違ったプログラミング言語です。
たまに人を困らせるだけの目的でコンピュータウィルスを作る人がいます。これらはプログラミングの知識がないと制作できないのですが、パソコンを使い人すべてがプログラミング言語を使えるわけではありませんので、その為のセキュリティ対策にセキュリティソフトなどを作る人もいます。プログラミング言語が分からないからといって、心配することもそうありません。ちゃんとセキュリティ対策ソフトといのもありますので。