オブジェクト指向なんて分かんない!――エンジニアに「基礎力」は必要か?:仕事が「つまんない」ままでいいの?(29)(2/3 ページ)
「あー、これは大体こういう感じね」。新しい仕事をするとき、大枠をざっくりと把握できたらやりやすくなると思いませんか?――それがエンジニアの「基礎力」です。
「オブジェクト指向」って、意味分かんない
Kさんが言う通り、Javaのコードの書き方はC言語に似ていました。条件文や制御文はすぐに理解できました。
けれども、最も私の頭を悩ませたのが「オブジェクト指向」でした。「クラス」「継承」「カプセル化」などの目的や意味が全く理解できなかったのです。
情報がないのも困りました。今でこそ、インターネットを検索すれば、さまざまな情報が手に入ります。しかしかつては、技術的な情報を学習するとしたら、英語のWebサイトを読み解くか、1冊数千円もする本を買うしかなかったのです。
しかも、本には「犬と猫を抽象化すると、動物になり……」など、理解が難しい説明しか書かれていません。「犬と猫がどうしたって?」――一体どういうことなのかチンプンカンプンで、何度も挫折しそうになりました。
しかし、それでは仕事になりません。私は意味が分からぬまま、サンプルコードを書いては動かし、書いては動かしを繰り返しました。
神様は突然舞い降りた
言語が理解できない。でも、仕事は進めなければならない……切羽詰まった状況の中で、キーボードをたたきながらモニターとにらめっこ。
そんなときです。プログラミングの神様が、突然舞い降りたのは。「あ、オブジェクト指向ってこういうことか!」――全く意味が分からなかったオブジェクト指向が感覚的に理解できたのです。
言葉で説明するのは難しいのですが、今まで頭の中に入れるだけ入れて、全くつながっていなかった情報が一瞬でつながった感じ。それまで、胸の辺りでずっとモヤモヤしていたものが、スーッと流れていくようなあの感覚は、今でも忘れられません。
C言語やVBでコードを書いていたときも、仕事はそこそこ楽しいと感じていました。けれども、このときの体験からプログラミングの楽しさが何倍にも増しました。
コードを書くのが楽しくなったことで、最適なコードの書き方、最適な変数やデータの管理、メモリ管理、例外処理なども意識するようになり、「なぜ、そうするのか?」「なぜ、そうしなければならないのか?」を考えるようになりました。
また、その後.NETやPHPなど、他の言語も触れましたが、C言語やVBを身に付けた時よりも短時間で、「あー、大体こういう感じね」が分かるようになりました。
私はエンジニアの「基礎力」を手に入れたのです。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- オブジェクトの正体
C#にしろVB.NETにしろ、これからはOOPが不可欠。けれどやっぱりハードルが高い。そんなあなたに贈るOOP入門連載開始! - iOSアプリを作るなら最低限覚えておきたい「オブジェクト指向」の基礎知識
本連載では、これからプログラミングやiPhoneアプリ開発を始めてみたい方を対象に、開発に必要な知識を基礎から解説していきます。今回は、オブジェクト指向、クラス、プロパティ、メソッド、イニシャライザーの概要と、使い方などについて解説する - 高慢と偏見(1)隣は何をする人ぞ
初めに言葉ありき。私が聞いた三浦マネジャーの最初の言葉はこうだ。「オブジェクト指向など、実業務では使いものにならない!」 - オブジェクト指向への拒絶反応
わたしが業務でオブジェクト指向を利用できるようになるまで大体3年程の時間が必要でした。形は理解できていても実用性が分からない、そのようにモヤモヤしっぱなしだった中、唐突に「あ、こういうこと??」とひらめきに似た何かがあったのですよね。それを境にガシガシと利用する側に回ることになりました - ドラクエで学ぶオブジェクト指向(1) 勇者を作ろう!
エンジニアの与太話でドラクエとオブジェクト指向の関連性みたいな話をするのは好きだ。つい最近もそんな冗談をどこかでつぶやいた記憶がある。何も考えないでお酒でも飲みながら組んでみようと思う